Freie Zelle suchen - dringend

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox


Excel-Version: 8xl
nach unten

Betrifft: Freie Zelle suchen - dringend
von: Veronika
Geschrieben am: 03.05.2002 - 10:12:44

Ich habe ein Problem. Wie kann ich innerhalb eines bestimmten Bereiches die nächste freie Zeile finden (z.B. erste freie Zeile 7 - gesteckter Bereich B2-K100. Zudem soll der Wert der freien Zeile in einer Variablen abgelegt werden.
Gruss und Danke

nach oben   nach unten

Re: Freie Zelle suchen - dringend
von: Alfred
Geschrieben am: 03.05.2002 - 10:37:51

Hallo Veronika!

versuch's mal so:

Option Explicit
Sub Leerzeile()
Dim Bereich As Range
Dim zeile As Range
Dim z As Range
Dim leer As Boolean
Dim lz As Long

lz = 0 ' Nummer der Leerzeile

Set Bereich = Range("B2:K100")
For Each zeile In Bereich.Rows
leer = True
For Each z In zeile.Cells
If Not IsEmpty(z.Value) Then
leer = False
Exit For
End If
Next z
If leer Then
lz = zeile.Row
Exit For
End If
Next
End Sub

Gruß
Alfred

nach oben   nach unten

Re: Freie Zelle suchen - dringend
von: WernerB.
Geschrieben am: 03.05.2002 - 11:09:21

Hallo Veronika,

was hältst Du hiervon:


Option Explicit
Sub FreieZeile()
Dim Bereich As String, lo As String, ru As String
Dim zo As Long, zu As Long, i As Long, frR As Long
Dim sl As Integer, sr As Integer, sr1 As Integer, laC As Integer
Dim Frei As Boolean
    Range("B2:K100").Select
    Bereich = Selection.Address(False, False)
    lo = Left(Bereich, InStr(Bereich, ":") - 1)             'links oben
    ru = Right(Bereich, Len(Bereich) - InStr(Bereich, ":")) 'rechts unten
    zo = Range(lo).Row                                      'Zeile oben
    zu = Range(ru).Row                                      'Zeile unten
    sl = Range(lo).Column                                   'Spalte links
    sr = Range(ru).Column                                   'Spalte rechts
    sr1 = sr + 1
    If sr1 = 257 Then sr1 = 256
    Frei = False
    For i = zo To zu
      laC = Cells(i, sr1).End(xlToLeft).Column
        If sr1 = 256 And Not IsEmpty(Cells(i, 256)) Then laC = 256
        If laC = 1 And IsEmpty(Cells(i, 1)) Then laC = 0
        If laC < sl Then
          frR = i
          Frei = True
          Exit For
        End If
    Next i
    If Frei = True Then
      MsgBox "Erste leere Zeile im Bereich: " & frR
    Else
      MsgBox "Keine leere Zeile im Bereich !"
    End If
End Sub

Viel Erfolg wünscht
WernerB.
 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Freie Zelle suchen - dringend"