Advertisement
Rednaxela

Untitled

Apr 8th, 2024
17
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.25 KB | None | 0 0
  1. Sub DatenEinfügen()
  2.  
  3. Dim ws As Worksheet ' Variable zur Speicherung des aktuellen Arbeitsblatts
  4. Dim newSheet As Worksheet ' Variable zur Speicherung des neu erstellten Arbeitsblatts
  5. Dim lastSheet As Integer ' Index des letzten Arbeitsblatts
  6. Dim i As Integer ' Zählvariable für die Schleife
  7. Dim newRow As Integer ' Neue Zeile für das Einfügen der Daten
  8. Dim counter As Integer ' Zähler für die Anzahl der Schleifendurchläufe
  9. Dim startRow As Integer ' Startzeile für das Einfügen der Daten
  10.  
  11. ' Neues Arbeitsblatt am Ende der Arbeitsmappe einfügen
  12. Set newSheet = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count))
  13.  
  14. ' Index des letzten Arbeitsblatts bestimmen
  15. lastSheet = ThisWorkbook.Sheets.Count - 1
  16.  
  17. ' Durchlaufen der Arbeitsblätter ab dem dritten bis zum vorletzten Arbeitsblatt
  18. For i = 3 To lastSheet
  19. Set ws = ThisWorkbook.Sheets(i)
  20.  
  21. ' Neue Zeile für das Einfügen der Daten bestimmen
  22. newRow = i - 2
  23.  
  24. ' Wert aus Zelle A2 des aktuellen Arbeitsblatts in das neu erstellte Arbeitsblatt kopieren
  25. newSheet.Cells(newRow, 2).Value = ws.Range("A2").Value
  26.  
  27. ' Wert aus Zelle B2 des aktuellen Arbeitsblatts in das neu erstellte Arbeitsblatt kopieren
  28. newSheet.Cells(newRow, 3).Value = ws.Range("B2").Value
  29.  
  30. ' Wert aus Zelle B3 des aktuellen Arbeitsblatts in das neu erstellte Arbeitsblatt kopieren
  31. newSheet.Cells(newRow, 10).Value = ws.Range("B3").Value
  32.  
  33. ' Wert aus Zelle B4 des aktuellen Arbeitsblatts in das neu erstellte Arbeitsblatt kopieren
  34. newSheet.Cells(newRow, 17).Value = ws.Range("B4").Value
  35.  
  36. ' Wert aus Zelle F1 des aktuellen Arbeitsblatts abfragen
  37. counter = ws.Range("F1").Value
  38.  
  39. ' Startzeile für das Einfügen der Daten in Spalte K
  40. startRow = counter
  41.  
  42. ' Schleife für das Einfügen der Daten in die Spalte K
  43. For j = 1 To counter
  44. ' Wert aus der entsprechenden Zeile der letzten Spalte des aktuellen Arbeitsblatts kopieren
  45. newSheet.Cells(j + 1, 11).Value = ws.Cells(startRow, 2).Value
  46. ' Startzeile um 1 verringern
  47. startRow = startRow - 1
  48. Next j
  49.  
  50. Next i
  51.  
  52. End Sub
  53.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement