gelöst / etwas aufwendig
09.02.2023 16:52:20
udo.D
Falls der eine oder andere schon in den Startlöchern steht, dann dennoch lieben Dank für eure Mühen.
Konnte mir im Archiv einige Brocken - die mir fehlten - zusammenstückeln, so funktioniert es schon mal ganz gut.
Sprich ich wähle die rechts angeordnete Zelle neben den ausgeblendeten Spalten aus, und nach auslösen des Makros
überspringt er alle ausgeblendeten Spalten und setzt sich auf die links angeordnete Spalte dessen.
Hier der Code für alle die es evtl. auch mal brauchen,
LG Udo
Sub Spalte_Offset_Start()
Application.ScreenUpdating = False
Dim lngSp As Long
Dim strAdr As String
Dim lngCnt As Long
Dim strErg As String
lngSp = ActiveCell.Column - 1 ' Erfasste Spaltennummer
strAdr = ActiveSheet.Cells(1, lngSp).Address ' Aus Spaltennummer ermittelte Adresse
lngCnt = InStr(2, strAdr, "$") - 1 ' Ermittlung des zweiten $-Zeichens in der Zelladresse
strErg = WorksheetFunction.Substitute(Left(strAdr, Len(strAdr) - (Len(strAdr) - lngCnt)), "$", "") ' Extrahieren der Spalten-Buchstaben aus Zelladresse
ActiveSheet.Range("AI33").Value = strErg ' Ausgabe der reinen Spaltenbuchstaben
Dim c As Range, cL As Range
For Each c In Range("AR" & ActiveCell.Row & ":" & strErg & ActiveCell.Row).SpecialCells(xlCellTypeVisible)
Set cL = c
Do
Set cL = cL.Offset(0)
Loop Until Not cL.EntireColumn.Hidden
cL.Select
Next c
End Sub