Nur Werte anstelle Formeln mittels VBA EXCEL kopieren

Hallo, ich möchte beim kopieren von Datei/Tabelle1 in Datei/Tabelle2 Spalten kopieren, hierbei sollen aber nur die Werte berücksichtigt werden, nicht die Formeln die ggf. dahinter stehen. Habe hierzu einiges im Netz gefunden, aber es funktioniert nicht wie ich es mir vorgestellt habe.
Hier mal mein Versuchsansatz:
Datei2.Range(„A1:I280“).PasteSpecial xlPasteValues.Copy .Datei1.Range(„A1:I280“)’ .PasteSpecialPaste:=xlPasteValues
Danke und Gruß M H

Hallo M H
Du willst innerhalb der gleichen Datei von Tabelle1 nur die Werte kopieren nach Tabelle2. - Habe ich Dich richtig verstanden? - In Deinem Makro sprichst Du nämlich nicht von Tabelle1 und Tabelle2 sondern von Datei1 und Datei2!
Wenn meine Vermutung stimmt, dann:

Worksheets("Tabelle1").Range("A1:I280").Copy
Worksheets("Tabelle2").Range("A1").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False

Grüsse Niclaus

Danke, habe den Code mal verwendet, aber bringt auch kein korrektes Ergebnis. Wenn ich hingegen nur die Spalte „G“ von - nach kopiere ist das Ergebnis korrekt. Hänge mal mein Codebeispiel hier an: Gruß M H

 Option Explicit                                     ' Variablendefinition erforderlich

Public Bovor As Boolean ’ Tabelle vorhanden
'Für diese Prozedur müssen beide betroffenen Dateien geöffnet sein.
’ Hier wird z. B. eine komplette Spalte von Spalte kopieren nach Vergleich2 kopieret.
Sub Test1()
Dim Datei1 As Worksheet
Dim Datei2 As Worksheet
Set Datei1 = Workbooks(„inkopie.xlsm“).Sheets(„ArbTab“)
Sheets(„ArbTab“).Range(„A2:I252“).ClearContents
Set Datei2 = Workbooks(„auskopie.xlsx“).Sheets(„Tabelle1“)
Datei2.Range(„A1:I252“).Copy
Datei1.Range(„A1:I252“).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

Ist das möglich, mit solchen Variablen zu arbeiten? Ich kenne mich da zu wenig aus. Ich erhalte schon eine Fehlermeldung (Laufzeitfehler ‚9‘ - „Index ausserhalb des gültigen Bereichs“) bei folgendem:

Dim Datei1 As Worksheet
Set Datei1 = Workbooks("inkopie.xlsm").Sheets("ArbTab")

Du schreibst: Wenn ich hingegen nur die Spalte „G“ von - nach kopiere ist das Ergebnis korrekt. Wie lautet denn der Code dafür?

Grüsse Niclaus

Also der Code arbeitet bis auf den angesprochenen Fehler korrekt .
Hier mal wenn ich die besagte Spalte kopiere. Gruß M H
Sheets(„ArbTab“).Range(„I2:I252“).ClearContents
Set Datei2 = Workbooks(„auskopie.xlsx“).Sheets(„Tabelle1“)
Datei2.Range(„I1:I252“).Copy
Datei1.Range(„I1:I252“).PasteSpecial Paste:=xlPasteValues

Ich habe noch einmal Dein Makro Sub Test1() angeschaut. Ich hatte gestern übersehen, dass die eine Datei eine xlsx-Datei ist, die andere eine xlsm-Datei. Deshalb hatte ich die Fehlermeldung. Dein obiges Makro Test1() funktioniert bei mir mit einer Aenderung bei ClearContents, die nicht unbedingt nötig ist.

Abgelegt ist das Makro in „inkopie.xlsm“.

Sub Test2()
Dim Datei1 As Worksheet
Dim Datei2 As Worksheet
Set Datei1 = Workbooks("inkopie.xlsm").Sheets("ArbTab")
    Datei1.Range("A2:I252").ClearContents
Set Datei2 = Workbooks("auskopie.xlsx").Sheets("Tabelle1")
Datei2.Range("A1:I252").Copy
Datei1.Range("A1:I252").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub

Sorry, aber damit ändert sich nichts an den eingefügten Werten. Es ist immer noch so, dass eine Formel woher auch immer in die besagte Spalte eingefügt wird. Quell- und Zielspalte habe ich schon mit dem Faktor „Wert“ versehen, aber trotzdem kein Erfolg. Danke bis dahin und Gruß M H

Sorry, hatte einen Code- Schnipsel übersehen, der mir eine Formel in die Spalte produziert hat. Danke und Gruß M H