Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Выдает ошибку - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выдает ошибку (Макросы/Sub)
Выдает ошибку
xmasterco Дата: Вторник, 30.08.2022, 23:41 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 20% ±

Помогите найти ошибку пожалуйста(

Sub Сопровод()

Dim wdApp As Object
Dim wdDoc As Object
Dim form As String
Dim desktop As String
Dim folder As String

form = "C:\Users\Admin\Desktop\Раненые"
desktop = "C:\Users\Admin\Desktop\"
folder = desktop + "Раненые\Отправка"

Set wdApp = CreateObject("Word.Application")

i% = 5
u% = 5
k% = 1

o% = Cells(5, 1).Text
VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Do

If Cells(i%, 1).Value = "" Then

Exit Do

If Cells(i%, 1).Value <> "" Then

FileCopy form + "\Сопровод.doc", folder + "\VCHNAME$.doc"
Set wdDoc = wdApp.Documents.Open(folder + "\VCHNAME$.doc")
wdDoc.Range.Find.Execute FindText:="&vch", ReplaceWith:=VCH$
wdDoc.Range.Find.Execute FindText:="&vz", ReplaceWith:=VZ$ + " " + "&vz"
wdDoc.Range.Find.Execute FindText:="&fio", ReplaceWith:=FIO$ + " " + "&fio"
wdDoc.Range.Find.Execute FindText:="&kolvo", ReplaceWith:=KOLVO$

Do

If Cells(i% + 1, 1).Value = "" Then

wdDoc.Range.Find.Execute FindText:=" &vz", ReplaceWith:=""
wdDoc.Range.Find.Execute FindText:=" &fio", ReplaceWith:=""
wdDoc.Save
wdDoc.Close

i% = i% + 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Exit Do

If Cells(i% + 1, 1).Value <> "" Then

Do

If Cells(i% + 1, 1).Value <> Cells(i%, 1).Value Then

wdDoc.Range.Find.Execute FindText:=" &vz", ReplaceWith:=""
wdDoc.Range.Find.Execute FindText:=" &fio", ReplaceWith:=""
wdDoc.Save
wdDoc.Close

i% = i% + 1
u% = u% + 1
k% = 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Exit Do

If Cells(i% + 1, 1).Value = Cells(i%, 1).Value Then

k% = k% + 1
i% = i% + 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

wdDoc.Range.Find.Execute FindText:="&vch", ReplaceWith:=VCH$
wdDoc.Range.Find.Execute FindText:="&vz", ReplaceWith:=VZ$ + " " + "&vz"
wdDoc.Range.Find.Execute FindText:="&fio", ReplaceWith:=FIO$ + " " + "&fio"
wdDoc.Range.Find.Execute FindText:="&kolvo", ReplaceWith:=KOLVO$

Loop

End If

Loop

End If

Loop

wdApp.Quit
MsgBox "Спороводы созданы!"
End Sub

[admin]Тема закрыта. Причина: Нарушения правил форума пп. 2, 3 и 5g[/admin]
 
Ответить
СообщениеПомогите найти ошибку пожалуйста(

Sub Сопровод()

Dim wdApp As Object
Dim wdDoc As Object
Dim form As String
Dim desktop As String
Dim folder As String

form = "C:\Users\Admin\Desktop\Раненые"
desktop = "C:\Users\Admin\Desktop\"
folder = desktop + "Раненые\Отправка"

Set wdApp = CreateObject("Word.Application")

i% = 5
u% = 5
k% = 1

o% = Cells(5, 1).Text
VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Do

If Cells(i%, 1).Value = "" Then

Exit Do

If Cells(i%, 1).Value <> "" Then

FileCopy form + "\Сопровод.doc", folder + "\VCHNAME$.doc"
Set wdDoc = wdApp.Documents.Open(folder + "\VCHNAME$.doc")
wdDoc.Range.Find.Execute FindText:="&vch", ReplaceWith:=VCH$
wdDoc.Range.Find.Execute FindText:="&vz", ReplaceWith:=VZ$ + " " + "&vz"
wdDoc.Range.Find.Execute FindText:="&fio", ReplaceWith:=FIO$ + " " + "&fio"
wdDoc.Range.Find.Execute FindText:="&kolvo", ReplaceWith:=KOLVO$

Do

If Cells(i% + 1, 1).Value = "" Then

wdDoc.Range.Find.Execute FindText:=" &vz", ReplaceWith:=""
wdDoc.Range.Find.Execute FindText:=" &fio", ReplaceWith:=""
wdDoc.Save
wdDoc.Close

i% = i% + 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Exit Do

If Cells(i% + 1, 1).Value <> "" Then

Do

If Cells(i% + 1, 1).Value <> Cells(i%, 1).Value Then

wdDoc.Range.Find.Execute FindText:=" &vz", ReplaceWith:=""
wdDoc.Range.Find.Execute FindText:=" &fio", ReplaceWith:=""
wdDoc.Save
wdDoc.Close

i% = i% + 1
u% = u% + 1
k% = 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

Exit Do

If Cells(i% + 1, 1).Value = Cells(i%, 1).Value Then

k% = k% + 1
i% = i% + 1

VCH$ = Cells(i%, 1).Text
VCHNAME$ = Cells(u%, 1).Text
VZ$ = Cells(i%, 2).Text
FIO$ = Cells(i%, 3).Text
KOLVO$ = k%

wdDoc.Range.Find.Execute FindText:="&vch", ReplaceWith:=VCH$
wdDoc.Range.Find.Execute FindText:="&vz", ReplaceWith:=VZ$ + " " + "&vz"
wdDoc.Range.Find.Execute FindText:="&fio", ReplaceWith:=FIO$ + " " + "&fio"
wdDoc.Range.Find.Execute FindText:="&kolvo", ReplaceWith:=KOLVO$

Loop

End If

Loop

End If

Loop

wdApp.Quit
MsgBox "Спороводы созданы!"
End Sub

[admin]Тема закрыта. Причина: Нарушения правил форума пп. 2, 3 и 5g[/admin]

Автор - xmasterco
Дата добавления - 30.08.2022 в 23:41
xmasterco Дата: Вторник, 30.08.2022, 23:41 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 20% ±

Пишет Loop without Do
 
Ответить
СообщениеПишет Loop without Do

Автор - xmasterco
Дата добавления - 30.08.2022 в 23:41
Pelena Дата: Среда, 31.08.2022, 00:11 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 18561
Репутация: 4204 ±
Замечаний: ±

Excel 2016 & Mac Excel
xmasterco, прочитайте Правила форума, оформите код тегами с помощью кнопки # в режиме правки поста и приложите файл с небольшим примером


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщениеxmasterco, прочитайте Правила форума, оформите код тегами с помощью кнопки # в режиме правки поста и приложите файл с небольшим примером

Автор - Pelena
Дата добавления - 31.08.2022 в 00:11
RAN Дата: Среда, 31.08.2022, 08:19 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5630
Репутация: 1143 ±
Замечаний: 0% ±

2010
Ловите недостачу
End If
End If
End If
End If


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЛовите недостачу
End If
End If
End If
End If

Автор - RAN
Дата добавления - 31.08.2022 в 08:19
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выдает ошибку (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2022 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!