Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA - Formel ab dem zweiten Tabellenblatt einfügen
#1
Hallo zusammen,

ich möchte eine Formel in allen Tabellenblättern (ab der zweiten!) einfügen. Allerdings führt er die Formel nur für das erste Tabellenblatt aus anstatt für alle anderen.
Nach etlichen recherchen habe ich folgenden Code erarbeitet bzw. aus dem Forum kopieret:

Code:
Sub MengeProTeil()
Dim ws As Worksheet
For Each ws In Worksheets
  If ws.Index > 1 Then
    'Dein weiterer Code
    Range("Z1").Select
    ActiveCell.FormulaR1C1 = "Menge pro Teil"
    Range("Z2").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "=RC[-20]*RC[-19]"
    Range("Z2").Select
    Selection.AutoFill Destination:=Range("Z2:Z166")
    Range("Z2:Z166").Select
    
    
  End If
Next
End Sub


Da ich gerade absolut nicht weiter weiß würde ich mich freuen wenn ihr mir weiterhelfen könntet.

Vielen Dank und Beste Grüße
Stinkzor
Antworten Top
#2
Hi

Versuch mal den Code.
Code:
Sub MengeProTeil()
Dim i As Long

For i = 2 To Worksheets.Count
    With Worksheets(i)
      .Range("Z1").FormulaR1C1 = "Menge pro Teil"
      .Range("Z2").FormulaR1C1 = "=RC[-20]*RC[-19]"
      .Range("Z2").AutoFill Destination:=.Range("Z2:Z166")
    End With
Next i
End Sub

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Stinkzor
Antworten Top
#3
Das ging schnell und funktionieren tut es auch noch.
Vielen Dank!


Gibt es  die Möglichkeit diese komplette Spalte (Z) jedes Tabellenblattes in ein neues Tabellenblatt zu kopieren und als Überschrift den Name des Tabellenblattes zu nehmen?

Danke und VG
Stinkzor
Antworten Top
#4
Hi

du solltest neu Fragen nicht in alte Posts integrieren. Nur durch Zufall habe ich es noch gelesen.

Versuch es damit.
Code:
Sub AlleZSpalten()
Dim k As Long, start As Long, Zeile As Long

'Zusammengefasst wird hier im Worksheet 1
'Beginnent in Spalte 8 also (H) in Zeile 1

Zeile = 1
start = 8

For k = 2 To Worksheets.Count
    With Worksheets(k)
       Worksheets(1).Cells(Zeile, start - 2 + k).Value2 = Worksheets(k).Name
       .Range("Z2:Z166").Copy
       Worksheets(1).Cells(Zeile + 1, start - 2 + k).PasteSpecial (xlPasteValues)
    End With
Next k
End Sub

Gruß Elex
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste