da meine VBA-Kenntnisse nicht sonderlich ausgeprägt sind und ich mit dem Recorder nicht das erreiche, was ich möchte, mein Hilferuf an euch.
Unser Datenerfassungsprogramm gibt bei Exclel-Ausgabe teilweise die Kennung als Präfix gefolgt von einem Doppelpunkt mit aus, erst dann folgt die "richtige" Spaltenüberschrift. Die Anzahl der Spalten ist je nach Datei variabel.
Mit nachfolgendem Code konnte ich das Problem mehr oder weniger lösen, allerdings habe ich die Range händisch auf "sehr groß" eingestellt, was a) bei leeren Zellen eine 0 erzeugt und b) unnötiger Rechenaufwand ist. Das Hinzufügen der neuen Spalte und Kopieren der Inhalte steht nur zum besseren Verständnis noch mit dabei.
Rows("1:1").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select
ActiveCell.FormulaR1C1 = _
"=IF(ISNUMBER(SEARCH("":"",R[1]C)),RIGHT(R[1]C,(LEN(R[1]C)-(SEARCH("":"",R[1]C)))),R[1]C)"
Range("A1").Select
Selection.AutoFill Destination:=Range("A1:FZ1"), Type:=xlFillDefault
Rows("1:1").Select
Selection.Copy
Rows("2:2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Rows("1:1").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlUp
Wie bekomme ich es gelöst, dass die Formel nur soweit kopiert wird, bis die Überschriften vorhanden sind? Über einen "Do while"-Loop mit ActiveCell.Value "" habe ich es versucht, habe dann aber das Problem, dass ich die Formel ja in einer leeren Zelle brauche.
Danke für jede Hilfe!
Ole
https://www.herber.de/bbs/user/152674.xlsx