Anzeige
Archiv - Navigation
632to636
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
632to636
632to636
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nächste leere Zeile suchen und ausfüllen

Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:18:20
Regnar
Moin liebe Excelgemeinde,
ich habe eine User Form die Daten in ein Excelblatt übertragen soll. Bisher tut sie das logischerweise nur für die zweite Zeile.
Ich möchte, daß er das in die nächste freie Zeile schreibt so, dass er die Daten nicht überschreibt!
Der Code sieht so aus:

Private Sub Fertig_Click()
Tabelle1.Cells(2, 2).Value = Zollnummer
Tabelle1.Cells(2, 3).Value = Artikelpreis
Tabelle1.Cells(2, 4).Value = LandBox
Tabelle1.Cells(2, 6).Value = Versandkosten
Me.Hide
Positionenbildschirm.Show
End Sub

Wie muss dieser ergänzt werden?
Und nöch eine Frage wie lautet der Code wenn man für einen Button den "Datei Öffnen" Befehl hinterlegen will?
Gruß und Vielen Dank

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:24:56
Ceci
Hallo, versuche folgendes:

Private Sub Fertig_Click()
Dim Zaehler As Long
Zaehler= 2
Do while Worksheets("Tabelle1).cells(Zaehler,2).value <> empty
Zaehler=Zaehler+1
Loop
Tabelle1.Cells(Zaehler, 2).Value = Zollnummer
Tabelle1.Cells(Zaehler, 3).Value = Artikelpreis
Tabelle1.Cells(Zaehler, 4).Value = LandBox
Tabelle1.Cells(Zaehler, 6).Value = Versandkosten
Me.Hide
Positionenbildschirm.Show
End Sub

mfg Cäcilia
AW: Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:27:43
Ceci
Hallo, bin's nochmal,
hab einen Rechtschreibfehler:
Worksheets("Tabelle1").cells(Zaehler,2).value
Habe das Schlusszeichen nach Tabelle1 vergessen, sorry...
mfg Cäcilia
Anzeige
AW: Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:32:53
Regnar
Moin Cacilia,
vielen Dank für deinen Tip.
Leider sagt er mir index liegt ausserhalb des gültigen Bereiches?
Was heisst das bzw. wie kann ich das beheben?
AW: Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:35:47
Dieter
Hi Regnar
hier hast Du was zur Auswahl:

Function LetzteZeile _
(objSheet As Worksheet, _
strStartCell As String) As Range 'fuer die letzte Zeile eines zusammenhaengenden Bereichs:
Dim objRange As Range
Dim lngLastRow As Long
Dim lngLastCol As Long
Set objRange = objSheet _
.Range(strStartCell).CurrentRegion
lngLastRow = objRange.Row + _
objRange.Rows.count - 1
lngLastCol = objRange.Column + _
objRange.Columns.count - 1
With objSheet
Set LetzteZeile = .Range _
(.Cells(lngLastRow, objRange.Column), _
.Cells(lngLastRow, lngLastCol))
End With
End Function


Function LetzteSpalte _
(objSheet As Worksheet, _
strStartCell As String) As Range 'fuer die letzte Spalte eines zusammenhaengenden Bereichs:
Dim objRange As Range
Dim lngLastCol As Long
Dim lngLastRow As Long
Set objRange = objSheet _
.Range(strStartCell).CurrentRegion
lngLastCol = objRange.Column + _
objRange.Columns.count - 1
lngLastRow = objRange.Row + _
objRange.Rows.count - 1
With objSheet
Set LetzteSpalte = .Range _
(.Cells(objRange.Row, lngLastCol), _
.Cells(lngLastRow, lngLastCol))
End With
End Function


Function AbsLetzteZeile _
(objSheet As Worksheet) As Range 'fuer die letzte benutzte Zeile eines Tabellenblatts:
Dim objLastCell As Range
Dim lngLastRow As Long
Set objLastCell = objSheet _
.Cells.SpecialCells(xlCellTypeLastCell)
lngLastRow = objLastCell.Row
Set AbsLetzteZeile = objSheet _
.Rows(lngLastRow).EntireRow
End Function


Function AbsLetzteSpalte _
(objSheet As Worksheet) As Range 'fuer die letzte benutzte Spalte eines Tabellenblatts:
Dim objLastCell As Range
Dim lngLastCol As Long
Set objLastCell = objSheet _
.Cells.SpecialCells(xlCellTypeLastCell)
lngLastCol = objLastCell.Column
Set AbsLetzteSpalte = objSheet _
.Columns(lngLastCol).EntireColumn
End Function

'z.B.LetzteZeile(ActiveSheet, "A3").Offset(1, 0).Select
oder auch noch:

Sub letzteZelle()
Dim lR
lR = Worksheets("Tabelle1").Cells(Rows.count, 1).End(xlUp).Row
MsgBox lR
End Sub

Ich hoffe, Du hast genügend Auswahlmöglichkeit
Gruss Dieter
Anzeige
AW: Nächste leere Zeile suchen und ausfüllen
04.07.2005 15:44:11
Regnar
Moin Dieter,
danke für die Tipps!
Im ersten Moment war ich doch leicht schockiert, weil das sieht für einen Laien arg kompliziert aus...
Kann ich den einfach vor meinen Code setzen?
AW: Nächste leere Zeile suchen und ausfüllen
05.07.2005 10:34:55
Regnar
Moin vielleicht kann mir einer meine noch offene Frage beantworten.
Welchen der Codevorschläge muss ich wie einbinden?
Habe da nur die Hälfte von verstanden...
Gruß
AW: Nächste leere Zeile suchen und ausfüllen
05.07.2005 11:36:27
Rainer
Hallo Regnar,
habe gestern bereits versucht, Deine Frage zu beantworten, aber scheinbar ist meine Mail im Datennirwana gelandet. Also, zweiter Versuch.
Ich gehe davon aus, dass der Zellzeiger in einer Spalte steht, in der alle Zeilen beschrieben sind (sonst muß man ihn in eine solche bewegen). Dann findet Excel die erste freie Zelle mit folgendem Code:
Dim iZeile as Int
iZeile = Selection.End(xlDown).Row + 1
Der Wert kann dann z.B so verwendet werden:
cells(iZeile,1).Select
Mit ähnlichen Code kann man auch die erste leere Spalte ermitteln; der Parameter heißt dann xlRight.
Beste Grüße aus Recklinghausen
Rainer Weiß
Anzeige
AW: Nächste leere Zeile suchen und ausfüllen
05.07.2005 12:04:14
Regnar
Danke Rainer
ich habe das ganze jetzt so gelöst:
' Freie Zeile ermitteln
z = 2
Do While Cells(z, 2) ""
z = z + 1
Loop
'Wert(e) übertragen

Tabelle1.Cells(z, 2) = Artikel
Tabelle1.Cells(z, 3) = Artikelpreis
Tabelle1.Cells(z, 4) = Versandart
Klappt bisher auch aber alleine das lesen deiner Vorschläge hat mich schon wieder weiter gebracht im VBA verstehen!
Gruß

90 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige