Я пытаюсь добавить значения из разных листов (лист 2-5) в свой основной лист (лист 1). В листе 1 я хочу, чтобы ячейки содержали правильную формулу, указывающую на разные листы (если это возможно).
Обычно так:
='Sheet2'!D5+'Sheet3'!D165
Все мои листы имеют разные продукты, но некоторые листы содержат одинаковые продукты. Поэтому я хочу просмотреть их все и ДОБАВИТЬ их в свой Основной Лист (Лист 1).
Sub UpdateMainSheet()
' Kode for å Oppdatere Plukkeliste Alle Artikler Summert
Dim AktivtArk As String
Dim AktivtArkNavn As String
Dim K As Integer
Dim Count As Integer
'Line of code to delete old data in Main Sheet:
Worksheets("Sheet1").Range("A2:H10000").Clear
AktivtArkOverskrift = "List of Articles from Sheet 2 to 5"
'Creates Headline in Main Sheet:
eRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
Worksheets("Sheet1").Cells(eRow, 1) = AktivtArkOverskrift
Worksheets("Sheet1").Cells(eRow, 1).Font.Bold = True
'Script to check and gather data from the other sheets (Sheet 2, 3, 4 and 5):
For K = 2 To 5
'For loop to check each line in sheet "K"
For I = 2 To 1000
'If function to check if the cell I in column F is empty, if so it_jumps to next row and do the same check:
If Worksheets(K).Cells(I, 6) > 0 Then
Count = 0
'For loop to check if I already have a row in the Main Sheet with the article I'm checking:
For L = 2 To 1000
'If function to check if the articles have the same article number:
If Worksheets(K).Cells(I, 1) = Worksheets("Sheet1").Cells(L, 1) Then
'Line of code that are supposed to ADD the values that is currently in the Main Sheet, togheter with the value in Sheet K:
Worksheets("Sheet1").Cells(I, 4).Formula = Worksheets("Sheet1").Cells(I, 4) + Worksheets(K).Cells(L, 4)
End If
Next L
End If
Next I
Next K
End Sub
Итак, что мне нужно исправить в моем коде, это часть (расположенная дальше всего внутри цикла For Loop):
Worksheets("Sheet1").Cells(I, 4).Formula = Worksheets("Sheet1").Cells(I, 4) + Worksheets(K).Cells(L, 4)
И заставьте его создать формулу в нужной ячейке, которая будет выглядеть примерно так:
='Sheet2'!D5+'Sheet3'!D165
Он также должен иметь возможность добавить еще одну ячейку, поскольку цикл проходит через несколько листов (листы 2–5), которые могут содержать одинаковые продукты.
То есть Мне нужна только одна строка в моем основном листе для каждого продукта.