Помогите мне преобразовать этот код из Java в VBA - PullRequest
0 голосов
/ 23 октября 2010

Мне нужно, чтобы создать функцию VBA, которая извлекает текст из строки Я написал этот метод Java

public static String extract(String str) {

    String s = str.substring(str.indexOf("'"),str.lastIndexOf("'"));
    String fg = s.substring(s.indexOf("'")+1, s.indexOf("to")-2);
    String sg = s.substring(s.indexOf("to")+4);

    return sg;

}

которые делают то, что я хочу, но в VBA я не могу найти эквивалент indexOf и lastIndexOf И самое главное, как имитировать подстроку Java, используя индексы символов, без использования длины для извлечения, как в VBA. кто-нибудь может мне помочь.

Заранее спасибо.

Ответы [ 3 ]

6 голосов
/ 23 октября 2010
idx = str.indexOf("'");

// is equivalent of

idx = InStr(str, "'")

и

idx = str.lastIndexOf("'");

// is equivalent of

idx = InStrRev(str, "'")

и

str = str.substring(start, end)

// is equivalent of

str = Mid(str, start, end - start)
0 голосов
/ 23 октября 2010

Эквивалентом для «подстроки» является «средняя» функция.

0 голосов
/ 23 октября 2010

Методами, эквивалентными indexOf и lastIndexOf, являются inStr и inStrRev.

См., Например, http://www.techonthenet.com/excel/formulas/index_vba.php.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...