Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1228to1232
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

erste eingeblendetete Zelle Adresse

erste eingeblendetete Zelle Adresse
Gegga
Hallo da draussen
habe eine Tabelle die ab Zeile 5 fixiert ist ist.
jetzt blende ich per VBA nur bestimmte Zeilen ein z.B. Zeile 11 bis 16 oder Zeile 31 bis 36 etc. ein.
In diese Zellen muss ich immer in den gleichen Spalten die selben eintragungen machen. Dies würde ich auch gerne per VBA lösen.
Was ich hierfür benötige wäre folgendes:
Wie bekomme ich die "Adresse" der ersten sichtbaren Zelle ab Zeile 6 ?
zum Beispiel es sind eingeblendet die Zeile 31-36. Dann wäre ja die erste sichtbare Zelle ab Zeile 6 die Adresse .cells(31, 1)
Um von dieser Zelle immer ausgehend weiterzu arbeiten würde ich nun folgendes "veranstalten":
Das ganze in ein WorksheetChange Ereignis:
Dim Zeile as long
Dim Spalte as Long
Zeile = erste sichtbare Zeile ab 6
Spalte = 1
If Worksheets(Tabelle1).cells(Zeile, Spalte + 2)= "1" then
Worksheets(Tabelle1).cells(Zeile+1, Spalte + 7) = "WERT1"
Worksheets(Tabelle1).cells(Zeile+2, Spalte + 7, Zeile+1, Spalte + 8, Zeile+1, Spalte + 9) = "WERT2"
End if
Geht das überhaupt?
Ach so ja, kann man dieses WorksheetChange Ereignis irgendwie beeinflussen, das es wirklich nur dann anspringt, wenn in If Worksheets(Tabelle1).cells(Zeile, Spalte + 2)= "1" eine Änderung vorgenommen wird?
Dann müsste das hier
Dim Zeile as long
Dim Spalte as Long
Zeile = erste sichtbare Zeile ab 6
Spalte = 1
irgendwie vorab geladen werden, nicht?
Gruss Gegga alias Gerhard

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: erste eingeblendetete Zelle Adresse
28.09.2011 13:47:28
Rudi
Hallo,
teste mal:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim lRow As Long
If Intersect(Range("A6").CurrentRegion.SpecialCells(xlCellTypeVisible), Range("A6")) Is  _
Nothing Then
lRow = Range("A6").CurrentRegion.SpecialCells(xlCellTypeVisible).Areas(2).Row
Else
lRow = 6
End If
If Target.Row = lRow And Target.Column = 1 Then
On Error GoTo ERRHDL
Application.EnableEvents = False
'code
End If
ERRHDL:
Application.EnableEvents = True
End Sub

Gruß
Rudi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige