vasilek7777
Дата: Суббота, 11.08.2018, 23:57 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Добрый вечер! Подскажите пожалуйста, почему при запуске кода, указанного ниже, пишет ошибку, что "Sub" не определен? Опытные VBA специалисты, используют для пробежки по строчкам таблицы for или нет? Может есть что-то работающее быстрей? [vba]Код
Sub orderNumber() Dim i As Integer Dim j As Integer Dim inData As Worksheet Dim outData As Worksheet Dim countRowAct As Integer Dim countRowBase As Integer Windows("20181008BASE.xlsx").Activate Windows("20180801Act.xlsm").Activate Set outData = Workbook("20181008BASE.xlsx").Worksheets("BASE") Set inData = Workbook("20180801Act.xlsm").Worksheets("Sheet2") countRowAct = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row countRowBase = Worksheets("BASE").Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To countRowAct For j = 1 To countRowBase If Split(inData.Cells(i, 4).Value, " ", 1) = outData.Cells(j, 8).Value And Right(Split(inData.Cells(i, 4).Value, " ", 3), Len(Split(inData.Cells(i, 4).Value, " ", 3) - 1)) = outData.Cells(j, 11).Value Then inData.Cells(i, 3).Value = outData.Cells(j, 9).Value End If Next j Next i End Sub
[/vba]
Добрый вечер! Подскажите пожалуйста, почему при запуске кода, указанного ниже, пишет ошибку, что "Sub" не определен? Опытные VBA специалисты, используют для пробежки по строчкам таблицы for или нет? Может есть что-то работающее быстрей? [vba]Код
Sub orderNumber() Dim i As Integer Dim j As Integer Dim inData As Worksheet Dim outData As Worksheet Dim countRowAct As Integer Dim countRowBase As Integer Windows("20181008BASE.xlsx").Activate Windows("20180801Act.xlsm").Activate Set outData = Workbook("20181008BASE.xlsx").Worksheets("BASE") Set inData = Workbook("20180801Act.xlsm").Worksheets("Sheet2") countRowAct = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row countRowBase = Worksheets("BASE").Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To countRowAct For j = 1 To countRowBase If Split(inData.Cells(i, 4).Value, " ", 1) = outData.Cells(j, 8).Value And Right(Split(inData.Cells(i, 4).Value, " ", 3), Len(Split(inData.Cells(i, 4).Value, " ", 3) - 1)) = outData.Cells(j, 11).Value Then inData.Cells(i, 3).Value = outData.Cells(j, 9).Value End If Next j Next i End Sub
[/vba] vasilek7777
Ответить
Сообщение Добрый вечер! Подскажите пожалуйста, почему при запуске кода, указанного ниже, пишет ошибку, что "Sub" не определен? Опытные VBA специалисты, используют для пробежки по строчкам таблицы for или нет? Может есть что-то работающее быстрей? [vba]Код
Sub orderNumber() Dim i As Integer Dim j As Integer Dim inData As Worksheet Dim outData As Worksheet Dim countRowAct As Integer Dim countRowBase As Integer Windows("20181008BASE.xlsx").Activate Windows("20180801Act.xlsm").Activate Set outData = Workbook("20181008BASE.xlsx").Worksheets("BASE") Set inData = Workbook("20180801Act.xlsm").Worksheets("Sheet2") countRowAct = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row countRowBase = Worksheets("BASE").Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To countRowAct For j = 1 To countRowBase If Split(inData.Cells(i, 4).Value, " ", 1) = outData.Cells(j, 8).Value And Right(Split(inData.Cells(i, 4).Value, " ", 3), Len(Split(inData.Cells(i, 4).Value, " ", 3) - 1)) = outData.Cells(j, 11).Value Then inData.Cells(i, 3).Value = outData.Cells(j, 9).Value End If Next j Next i End Sub
[/vba] Автор - vasilek7777 Дата добавления - 11.08.2018 в 23:57
Karataev
Дата: Суббота, 11.08.2018, 23:59 |
Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация:
533
±
Замечаний:
0% ±
Excel
Пишите вместо "Workbook" слово "Workbooks".
Пишите вместо "Workbook" слово "Workbooks". Karataev
Ответить
Сообщение Пишите вместо "Workbook" слово "Workbooks". Автор - Karataev Дата добавления - 11.08.2018 в 23:59
Pelena
Дата: Воскресенье, 12.08.2018, 07:19 |
Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация:
4413
±
Замечаний:
±
Excel 365 & Mac Excel
Может есть что-то работающее быстрей?
Есть, например, массивы, но это уже совсем другая тема
Может есть что-то работающее быстрей?
Есть, например, массивы, но это уже совсем другая темаPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Ответить
Сообщение Может есть что-то работающее быстрей?
Есть, например, массивы, но это уже совсем другая темаАвтор - Pelena Дата добавления - 12.08.2018 в 07:19
vasilek7777
Дата: Понедельник, 13.08.2018, 22:50 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 14
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Спасибо! Скажите пожалуйста, условие if c функцией Split() корректно оприсано?
Спасибо! Скажите пожалуйста, условие if c функцией Split() корректно оприсано? vasilek7777
Ответить
Сообщение Спасибо! Скажите пожалуйста, условие if c функцией Split() корректно оприсано? Автор - vasilek7777 Дата добавления - 13.08.2018 в 22:50
Апострофф
Дата: Вторник, 14.08.2018, 11:36 |
Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 445
Репутация:
123
±
Замечаний:
0% ±
Excel 1997
Удалено администрацией , вопрос не относится к теме поста, о чем модератор выше уже написал
Удалено администрацией , вопрос не относится к теме поста, о чем модератор выше уже написалАпострофф
Сообщение отредактировал _Boroda_ - Вторник, 14.08.2018, 13:49
Ответить
Сообщение Удалено администрацией , вопрос не относится к теме поста, о чем модератор выше уже написалАвтор - Апострофф Дата добавления - 14.08.2018 в 11:36