Гость
Map
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проблемы с заменой строки в коде / 5 сообщений из 5, страница 1 из 1
07.10.2021, 09:41
    #40102560
maxim863
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с заменой строки в коде
Есть программа, которая меняет определенную строку в другой программе. Работает исправно. Но в один распрекрасный день, подставил я строку, содержащую изрядное количество двойных кавычек. На сею дерзость VBA(или даже скорее VBE) выдала ошибку
Compile error
Expected end of statement
в данной строке.
Код: vbnet
1.
ReplaceWhat = "Case "Вулверхэмптон", "Фулхэм", "Кардифф Сити", "Хаддерсфилд Таун""


Как исправить это недоразумение ?
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Sub ПсП()
Dim book1 As Workbook
Dim book2 As Workbook

Dim VBAEditor As VBIDE.VBE
Dim VBProj As VBIDE.VBProject
Dim VBComp As VBIDE.VBComponent
Dim CodeMod As VBIDE.CodeModule
Dim ReplaceWhat As String
Dim t As Long, i As Long, m As Long, n As Long


    For t = 54 To 56
        Set VBAEditor = Application.VBE
        Set book1 = Workbooks.Open("...\" & t & ".xlsm")
        Set VBProj = book1.VBProject
        Set VBComp = VBProj.VBComponents("Module1")
        Set CodeMod = VBComp.CodeModule
        
        ReplaceWhat = "Case "Вулверхэмптон", "Фулхэм", "Кардифф Сити", "Хаддерсфилд Таун""
        CodeMod.ReplaceLine 93, ReplaceWhat
            
        Application.Calculate
        book1.Save
        book1.Close
        
        Set VBAEditor = Nothing
        Set VBProj = Nothing
        Set VBComp = Nothing
        Set CodeMod = Nothing
    Next t
End Sub
...
Рейтинг: 0 / 0
07.10.2021, 09:49
    #40102562
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с заменой строки в коде
maxim863

Как исправить это недоразумение ?

насколько я помню, кавычки надо задваивать
Код: sql
1.
ReplaceWhat = "Case ""Вулверхэмптон"", ""Фулхэм"", ""Кардифф Сити"", ""Хаддерсфилд Таун"""
...
Рейтинг: 0 / 0
07.10.2021, 09:49
    #40102563
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с заменой строки в коде
удвоить те кавычки, которые должны быть внутри текстового литерала
...
Рейтинг: 0 / 0
07.10.2021, 10:46
    #40102596
maxim863
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с заменой строки в коде
HandKot,
Спасибо
...
Рейтинг: 0 / 0
07.10.2021, 10:46
    #40102597
maxim863
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с заменой строки в коде
Shocker.Pro,
Спасибо
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Проблемы с заменой строки в коде / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]