Проблема с текстовой функцией

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Серега
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 29.03.2004 (Пн) 22:39

Проблема с текстовой функцией

Сообщение Серега » 06.04.2004 (Вт) 1:47

Задача:
Требуется что бы макрос в Excel вставлял в ячейку формулу следующего вида
=ПСТР(RC[-2];ПОИСК(" N ";RC[-2];1)+3;ПОИСК(" ";RC[-2];ПОИСК(" N ";RC[-2];1)+3)-ПОИСК(" N ";RC[-2];1)-3)

когда пишешь
...Formula="=ПСТР(RC[-2];ПОИСК( " N ";RC[-2];1)+3;ПОИСК(" ";RC[-2];ПОИСК(" N ";RC[-2];1)+3)-ПОИСК(" N ";RC[-2];1)-3)"

Отладчик вторую " (т.е. начало выраженя " N ") считает окончанием формулы и начинает ругаться.
Пробовал убирать " внутри формулы - не получается

Помогите.

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 06.04.2004 (Вт) 8:28

А кавычки в формуле удвоить в таком случае не пробовал? :)

Cyrax
Cyberninja
Cyberninja
Аватара пользователя
 
Сообщения: 891
Зарегистрирован: 25.04.2002 (Чт) 21:20
Откуда: Magnitogorsk, Russia

Сообщение Cyrax » 06.04.2004 (Вт) 9:57

а еще лучше заменить их на Chr$(34), т.е.
Код: Выделить всё
...Formula="=ПСТР(RC[-2];ПОИСК( " & Chr$(34) & " N " & Chr$(34) & ";RC[-2];1)+3;ПОИСК(" & Chr$(34) & " " & Chr$(34) & ";RC[-2];ПОИСК(" & Chr$(34) & " N " & Chr$(34) & ";RC[-2];1)+3)-ПОИСК(" & Chr$(34) & " N " & Chr$(34) & ";RC[-2];1)-3)"
Ты это ему расскажи. Я уже пять болтов отвинтил, и конца не видно... (озадаченно) А это в какую сторону тянуть? Ну-ка... Ага, этот был лишний, этот вообще не отсюда, и этот... Точно, два болта.

Welcome to IRC

Серега
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 29.03.2004 (Пн) 22:39

Сообщение Серега » 08.04.2004 (Чт) 1:40

Написал
Workbooks("Книга1.xls").Worksheets("Лист1").Cells(Old, 10).Formula = "=MID(RC[-2];SEARCH("" N "";RC[-2];1)+3;SEARCH("" "";RC[-2];SEARCH("" N "";RC[-2];1)+3)-SEARCH("" N "";RC[-2];1)-3)"

Все равно не пашет
Говорит "Ошибка определяемая приложением или объектом
Не пойму в чем проблема?

пробовал и ПОИСК( " & chr$(34) & " N " & chr$(34) & ";....
тоже не идёт


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 18

    TopList