Paste Special
02.08.2022 08:17:16
Tim
mir ergibt sich gerade folgendes Problem:
In meinem Makro wird eine andere .xlsm-Datei (=Datei 2) geöffnet und eine Range aus ihr in meine Datei (=Datei 1) übertragen. Funktioniert soweit so gut:
'Daten 2. Datei auswählen
Sheets("Tabelle2").Activate
nameWB = ActiveWorkbook.Name
ActiveSheet.Range("L5:N196").Copy
'Datei 1 auswählen und einfügen
ThisWorkbook.Activate
Cells(searchCellRow + 4, searchCellColumn).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
In einem zweiten Zug wird aus einem anderen Tabellenblatt auf Datei 2 eine einzige Zelle kopiert. In ihr steht ein Name. Dieser soll nun in einen Zellverbund (3 Zellen, gleich groß), in Datei 1 eingefügt werden:
'Name holen & ausfüllen
Workbooks(nameWB).Activate
Sheets("Informationen").Activate
ActiveSheet.Range("C12").Copy
ThisWorkbook.Activate
Cells(searchCellRow - 1, searchCellColumn).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Hier bekomme ich folgende Fehlermeldung(en):1) "Für diese Aktion müssen alle verbundenen Zellen dieselbe Größe haben."
-> Zellengröße gecheckt, alle gleich groß. Anschließend im Code die Zellen mit .UnMerge geteilt und die nächste Fehlermeldung erhalten:
2) "Die Paste-Special-Methode des RangeObjektes konnte nicht ausgeführt werden.
Das .Select im Code ist, damit ich mich beim Debuggen orientieren kann, ob die richtigen Zellen ausgewählt sind :)
Hat jemand einen Ansatz, an was es liegen könnte? Komme einfach nicht mehr weiter. (Die Paste Special Zeile habe ich in anderen Codes 1:1 so drin. Dort funktioniert sie :( )
Vielen Dank :)