Supportnet / Forum / Tabellenkalkulation
Erste freie Zelle in Spalte A
Frage
Hallo,
Aus MS Access heraus möchte ich das Ergebnis einer Abfrage in Excell exportieren.
Dazu ist es nötig die erste freie Zelle in Spalte a zu finden, das soll hiermit gehen:
[code]Dim objExcel As Excel.Application
Dim xwei As String
Dim xfeld As String
Dim lastrow1 As Integer
Dim i1 As Integer
Set objExcel = New Excel.Application
objExcel.Visible = True
objExcel.Workbooks.Open ("C:\VersucheaufC\Wechselteile")
xwei = objExcel.ActiveWorkbook.Sheets(1).Select ' 1. Tabellenblatt auswählen
With objExcel.Range("A1")
' Anzahl Zeilen im Tabellenblatt ermitteln
lastrow1 = .SpecialCells(xlCellTypeLastCell).Row
End With
i1 = lastrow1 + 1
objExcel.Cells(i1, 1) = " freie Zelle "[/code]
Das Problem ist allerdings, das ab Zelle 68 nix drinne is, VBA aber zur Zelle 9999 springt.
Ich bin leider kein Excel Spezi, hoffe daher auf Eure Hilfe.
Gruß Ralf
Antwort 1 von nighty
hi ralf :-)
Sub makro01()
Rem letzte zeile eines sheets
Cells(1, 1) = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Rem letze spalte eines sheets
Cells(2, 1) = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
Rem letzte zeile einer spalte
Cells(3, 1) = ActiveSheet.Range("D" & Rows.Count).End(xlUp).Row
Rem letzte spalte einer zeile
Cells(4, 1) = ActiveSheet.Range("3:3").End(xlUp).Column
End Sub
gruss nighty
Sub makro01()
Rem letzte zeile eines sheets
Cells(1, 1) = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Rem letze spalte eines sheets
Cells(2, 1) = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
Rem letzte zeile einer spalte
Cells(3, 1) = ActiveSheet.Range("D" & Rows.Count).End(xlUp).Row
Rem letzte spalte einer zeile
Cells(4, 1) = ActiveSheet.Range("3:3").End(xlUp).Column
End Sub
gruss nighty
Antwort 2 von RalfH
Hallo nighty,
Vielen Dank für Deine Hilfe,
aber ich komme hier irgenntwie nicht weiter, wieso zeigt mir excel die Zeile 9999 an und nicht 68?
Gruß Ralf
Vielen Dank für Deine Hilfe,
aber ich komme hier irgenntwie nicht weiter, wieso zeigt mir excel die Zeile 9999 an und nicht 68?
Gruß Ralf
Antwort 3 von nighty
hi ralf :-)
diesen abschnitt
With objExcel.Range("A1")
' Anzahl Zeilen im Tabellenblatt ermitteln
lastrow1 = .SpecialCells(xlCellTypeLastCell).Row
End With
gegen diese zeile tauschen
lastrow1 =ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
gruss nighty
diesen abschnitt
With objExcel.Range("A1")
' Anzahl Zeilen im Tabellenblatt ermitteln
lastrow1 = .SpecialCells(xlCellTypeLastCell).Row
End With
gegen diese zeile tauschen
lastrow1 =ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
gruss nighty
Antwort 4 von RalfH
Super !!!
Dankeschön.
Gruß Ralf
Dankeschön.
Gruß Ralf

