Hallo Leute,
die Programmieranweisung ActiveCell.Offset(0, 1).Activate überspringt leider nicht
die Spalte, wenn diese ausgeblendet ist. Wie schaffe ich das?
Hallo,
am besten wenn Du das Selektieren und Aktivieren verzichtest. Eine Erklärung findest Du
hier.
Hallo Stefan,
Ich glaube, ohne Activate schickt Dich Excel mit Offset trotzdem in die ausgeblendete Spalte.
Bzw. Führt die geplante Aktion dort aus.
Hallo André,
Du hast Recht, man wäre in der ausgeblendeten Spalte.
@SonjaFido
Wenn es sich nur um eine ausgeblendete Spalte handelt, kannst Du es mal so versuchen (mit Activate :( ).
Code:
Dim lngC As Long
lngC = IIf(ActiveCell.Offset(0, 1).Columns.Hidden, 2, 1)
ActiveCell.Offset(0, lngC).Activate
(07.09.2014, 11:28)SonjaFido schrieb: [ -> ]... Wie schaffe ich das?
Am besten, indem du
nicht nur eine frei stehend Zeile Code vorstellst, ohne jeglichen Zusammenhang und Ziel dessen, was dann passieren soll.
Code:
Option Explicit
Sub NextNotHidden()
Dim Ze As Long, Sp As Integer, ZielSp As Integer
With ActiveSheet
Ze = ActiveCell.Row
Sp = ActiveCell.Column
For ZielSp = Sp + 1 To Columns.Count
If Not .Columns(ZielSp).Hidden Then Exit For
Next ZielSp
.Cells(Ze, ZielSp) = "Treffer!!"
End With
End Sub
... natürlich ohne das Activate :05: Und funktioniert natürlich auch bei mehreren nebeneinander ausgeblendeten Spalten.
Hallo Freunde,
für eure guten Tipps und Ratschläge möchte ich mich bedanken.
Ihr habt mir sehr geholfen.