Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

5 Spalten nach leerer zelle suchen.

Forumthread: 5 Spalten nach leerer zelle suchen.

5 Spalten nach leerer zelle suchen.
23.04.2008 15:54:00
Benjamin
Huhu ich weiß im groben, das ich mit
for i = 1 to 20
if cells(i, 1)value = "" then... abfragen kann, das er mir i als row für die erste freie Zelle in Spalte a wiedergibt, wie kann ich denn das machen, wenn ich 5 Spalten Abfragen muss, also auch 5 variablen schätz ich mal. Ich möchte nämlich ein Form basteln in dem ich 5 evtl. später mehr textfelder habe, und die man auch alle 5 füllen kann, sobald ich nun den button klicke, soll er mir alle 5 spalten nach der nächsten freien absuchen (oder davor suchen, und alle 5 (wenn ein inhalt vorhanden) textboxen in die dafür vorgesehene spalte schreiben (über die variable schätz ich mal, die man für for benutzt)

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 5 Spalten nach leerer zelle suchen.
23.04.2008 16:00:38
Andi
Hi,
entweder mit 2 Laufvariablen:
For z = 1 To 5
For i = 1 To 20
If Cells(i, z).Value = "" Then
'...
End If
Next i
Next z
oder so:
Dim c As Range
For Each c In Range("A1:E20")
If c.Value = "" Then
'...
End If
Next c
Im zweiten Fall kannst Du Dir mit c.Row bzw c.Column die Zeilen- / Spaltennummer, bzw mit c.Address gleich die komplette Adresse ausgeben lassen.
Schönen Gruß,
Andi

Anzeige
AW: 5 Spalten nach leerer zelle suchen.
23.04.2008 16:10:25
Benjamin
huhu und danke andi, sag mal klappt denn das auch dann, wenn ich in der userForm nun 5 Textfelder habe, in den ersten 2 steht was dann ist eine leer, und die 4,5 ist wieder befüllt, das auf einmal, alle 4 Textfelder (eines ist ja leer) in die Passende Spalte letzte frei Zelle geschrieben werden?.

Anzeige
AW: 5 Spalten nach leerer zelle suchen.
23.04.2008 17:06:00
Rudi
Hallo,
im Modul der UF:

Private Sub CommandButton1_Click()
Dim lngRow As Long
lngRow = LastUsedRowInRange(Sheets("Daten"), , , 1, 5) + 1
With Sheets("daten")
.Cells(lngRow, 1) = TextBox1
.Cells(lngRow, 2) = TextBox2
.Cells(lngRow, 3) = TextBox3
.Cells(lngRow, 4) = TextBox4
.Cells(lngRow, 5) = TextBox5
End With
End Sub
'in ein Modul:
Function LastUsedRowInRange( _
wks As Worksheet, _
Optional lngFirstRow&, _
Optional lngLastRow&, _
Optional lngFirstColumn&, _
Optional lngLastColumn&) _
As Long
'Letzte Zeile mit Inhalt in einem Bereich
'Parameter
'wks: das Blatt
'lngFirstRow&: die erste Zeile
'lngLastRow&: die letzte Zeile
'lngFirstColumn&: die erste Spalte, A=1, B=2 etc.
'lngLastColumn&; die letzte Spalte
Dim lngTmp&, blnFound As Boolean
If lngFirstRow = 0 Then lngFirstRow = 1
If lngLastRow = 0 Then lngLastRow = Rows.Count
If lngFirstColumn = 0 Then lngFirstColumn = 1
If lngLastColumn = 0 Then lngLastColumn = Columns.Count
With wks
If Application.CountA(.Range(.Cells(lngLastRow, lngFirstColumn), .Cells(lngLastRow,  _
lngLastColumn))) Then
LastUsedRowInRange = .Rows.Count: Exit Function
End If
If Application.CountA(.Range(.Cells(lngFirstRow, lngFirstColumn), .Cells(lngLastRow,  _
lngLastColumn))) = 0 Then
LastUsedRowInRange = 0: Exit Function
End If
lngTmp = (lngFirstRow + lngLastRow) / 2
If lngLastRow > lngFirstRow + 1 Then
If Application.CountA(.Range(.Cells(lngTmp, lngFirstColumn), .Cells(lngLastRow,  _
lngLastColumn))) Then
lngFirstRow = lngTmp
blnFound = True
End If
If Not blnFound And _
Application.CountA(.Range(.Cells(lngFirstRow, lngFirstColumn), .Cells(lngTmp,  _
lngLastColumn))) Then
lngLastRow = lngTmp
End If
LastUsedRowInRange wks, lngFirstRow, lngLastRow, lngFirstColumn, lngLastColumn
End If
End With
LastUsedRowInRange = lngFirstRow
End Function


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

Anzeige
AW: 5 Spalten nach leerer zelle suchen.
23.04.2008 17:27:00
Benjamin
danke euch allen
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige