mit nachfolgendem Code füge ich nach eine Liste mit Aktenzeichen eine Spalte ein und hole mir die letzten 3 Stellen in die separate Spalte, das funktioniert.
Jetzt wollte ich für die neue Spalte noch ein autofit einfügen und wie ich es drehe und wende, es kommt immer ein Fehler, den ich nicht rauskriege.
Private Sub CommandButton6_Click() 'Aktenzeichen - Endziffern - Aufteilungs - Button
If MsgBox("Soll eine separate Spalte mit Endziffern eingefügt werden?", vbYesNo) = vbYes Then
Dim intSp%, lngLRow&, intUeb&
Dim rngSel As Range, strSel As String
On Error Resume Next
Set rngSel = Application.InputBox("Bitte erstes Aktenzeichen in der Liste auswählen", "Aktenzeichenauswahl", Type:=8)
If rngSel Is Nothing Then Exit Sub
On Error GoTo 0
strSel = rngSel.Address
intUeb = Range(strSel).Row - 2 'Sprung 2 Zeilen darüber
intSp = Range(strSel).Column 'Spalte mit dem 1. Aktenzeichen
lngLRow = Cells(Rows.Count, intSp).End(xlUp).Row 'letzte Zelle in Spalte ermitteln
Columns(intSp + 1).Insert 'Hilfsspalte einfügen
If intUeb > 0 Then _
Cells(intUeb, intSp + 1) = "Endz." 'Wort Endz. einfüßgen
For c = intUeb + 2 To lngLRow 'nach Wort "Endz. 2 Zeilen tiefer
Cells(c, intSp + 1) = Right(Cells(c, intSp), 3) 'letzte 3 Stellen
Cells(c, intSp + 1).NumberFormat = "000" 'Format = 3 Stellen
Next
ActiveColumn.AutoFit ' ===> OBJEKT erforderlich ???
Cells(intUeb + 1, intSp).Select 'bei JA, 1. Aktenzeichen selektieren
Else: Range("A1").Select
End If
Unload Me
End Sub
Wie bekomme ich die Spaltenbreite richtig hin?
Eine Beispieldatei hätte ich auch noch: https://www.herber.de/bbs/user/170588.xlsm
Grüße - Erwin