У меня проблема с VBA для Excel. Я использую этот макрос, чтобы перейти в другие сохраненные книги excel, отсканировать все листы для дат, когда определенный класс запускает определенную область. Затем он скомпилирует всю информацию в один рабочий лист и сортирует по дате начала. После того, как я расширил элементы, которые он искал, я ударил по размеру и должен был разбить его на два субмарина. Теперь проблема заключается в том, что первый юг работает отлично, но когда второй запускает его, он перезаписывает данные в первом суб. Я попытался вставить следующее с ошибками.Данные, заменяемые Excel VBA
iRow = Ws.Cells(Ws.Rows.Count, 1).End(xlUp).Row + 1
Я могу получить код для запуска Теперь, добавив следующий
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("Board")
Я поместил этот код в основном и вспомогательные части Macro. Проблема продолжается, когда я получаю свой первый суб, перезаписываемый другим. Любая помощь или идеи были бы замечательными.
Спасибо
EDIT
код с комментариями:
Set appExcel = Nothing
intcounter = intcounter + 1
strClassList = Right(strClassList, Len(strClassList) - 2)
strClassDateList = Right(strClassDateList, Len(strClassDateList) - 2)
strClassHourList = Right(strClassHourList, Len(strClassHourList) - 2)
strClassStopList = Right(strClassStopList, Len(strClassStopList) - 2)
intMainCounterTop = (intMainCounter + (Len(strClassList) - Len(Replace(strClassList, Chr(13), "", 1, , vbBinaryCompare)))) '- 1
For i = 2 To intMainCounterTop
Worksheets("Board").Cells(i, 1) = "15U3 " & Left(strClassList, InStr(1, strClassList, Chr(13), vbBinaryCompare) - 1)
Worksheets("Board").Cells(i, 2) = "AF"
Worksheets("Board").Cells(i, 3) = Left(strClassDateList, InStr(1, strClassDateList, Chr(13), vbBinaryCompare) - 1)
Worksheets("Board").Cells(i, 4) = Left(strClassHourList, InStr(1, strClassHourList, Chr(13), vbBinaryCompare) - 1)
Worksheets("Board").Cells(i, 5) = Left(strClassStopList, InStr(1, strClassStopList, Chr(13), vbBinaryCompare) - 1)
strClassList = Right(strClassList, Len(strClassList) - InStr(1, strClassList, Chr(13), vbBinaryCompare) - 1)
strClassDateList = Right(strClassDateList, Len(strClassDateList) - InStr(1, strClassDateList, Chr(13), vbBinaryCompare) - 1)
strClassHourList = Right(strClassHourList, Len(strClassHourList) - InStr(1, strClassHourList, Chr(13), vbBinaryCompare) - 1)
strClassStopList = Right(strClassStopList, Len(strClassStopList) - InStr(1, strClassStopList, Chr(13), vbBinaryCompare) - 1)
Next i
Worksheets("Board").Cells(i, 1) = "15U3 " & strClassList
Worksheets("Board").Cells(i, 2) = "AF"
Worksheets("Board").Cells(i, 3) = strClassDateList
Worksheets("Board").Cells(i, 4) = strClassHourList
Worksheets("Board").Cells(i, 5) = strClassStopList
Что вы делаете с 'iRow', мы должны видеть больше кода для того, чтобы быть в состоянии помочь? – user2140261
Я просто пытаюсь получить второй суб, чтобы добавить его результаты на тот же рабочий лист, что и первый суб, заполненный. Прямо сейчас они переписывают друг друга. У меня есть что-то вроде 3200 строк кода. Какую часть вам нужно увидеть? Я могу опубликовать некоторые фрагменты. –
можете ли вы показать код, который вы используете для вставки значений? – L42