Заранее спасибо.Если есть кто-то, кто знает все это, я был бы очень рад ;-) И это не обязательно должно быть в VBA, также приветствуется решение в формулах Excel.
IЯ пытаюсь сделать следующее: Существует лист с 6000+ названиями компаний.Другой лист показывает типы задач, которые могут быть подписаны для каждой отдельной компании.Я хочу создать новый рабочий лист с n-разным названием каждой компании и после последнего столбца в каждой строке одной из задач.
Рабочий лист1:
CompanyA | AdressA |CityA
CompanyB | АдресB | CityB
Рабочий лист2:
Задача 1 | Объяснение1 | Продолжительность1
Задача2 | Объяснение2 | Продолжительность2
Новый рабочий лист3 для создания:
CompanyA | AdressA | CityA | Task1 | Объяснение1 | Продолжительность1
CompanyA | AdressA | CityA | Task2 | Объяснение2 | Duration2
CompanyB | АдресB | CityB | Task1 | Объяснение1 | Продолжительность1
CompanyB | АдресB | CityB | Задача2 | Объяснение2 | Продолжительность2
Мой способ , начиная с , равенскопировав строки листа 1 n раз, и я нашел более старую ветку, которая могла бы быть полезной. Здесь я нашел кое-что о копировании 1 строки несколько раз
Я немного его сделал (моя версия excel - голландская, поэтому "sheet" - "blad").К сожалению, это не работает и выдает ошибку.
Sub DuplicateRows()
Dim currentRow As Integer
Dim currentNewSheetRow As Integer: currentNewSheetRow = 1
For currentRow = 1 To 5 'The last row of your data
Dim timesToDuplicate As Integer
timesToDuplicate = CInt(Blad1.Range("O" & currentRow).Value2) ' Error line
Dim i As Integer
For i = 1 To timesToDuplicate
Blad3.Range("A" & currentNewSheetRow).Value2 = Blad1.Range("A" & currentRow).Value2
Blad3.Range("B" & currentNewSheetRow).Value2 = Blad1.Range("B" & currentRow).Value2
Blad3.Range("C" & currentNewSheetRow).Value2 = Blad1.Range("C" & currentRow).Value2
currentNewSheetRow = currentNewSheetRow + 1
Next i
Next currentRow
End Sub
Ошибка появляется в этой строке (ошибка 13 Несоответствие типов):
timesToDuplicate = CInt(Blad1.Range("O" & currentRow).Value2)