Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1704to1708
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

import immer in falscher zeile

import immer in falscher zeile
07.08.2019 14:24:55
Richard
Liebe Excelgemeinde,
komme mit meinem Code nicht weiter
Daten werden aus einer Quelldatei ausgelesen und in die Zieldatei importiert - funktioniert auch jedoch beim import werden die Daten immer ab Zeile 21 angelegt.
2. Möchte gerne noch eine Exit Sub einbauen wenn der Dialog File Open abgebrochen wird mit meinem On Error funktioniert es nicht
hier der Code:
Private Sub cmb_Termine_import_Click() 'aus tbl_verfolgung importieren
Dim wbQuelldatei    As Workbook
Dim wbZieldatei     As Workbook
Dim strPfadQuelle   As String
Dim i               As Integer
Dim intLastQuelle   As Integer
Dim intLastZiel     As Integer
Dim intAuswahl      As Integer
'  On Error GoTo FehlerVerarbeitung
With Application.FileDialog(msoFileDialogOpen)
.InitialFileName = "C:\Users\" & Environ$("username") & "\Documents\DB Slivi\DB\Archiv\ _
Auftraggeber\" 'suche Daten im Ordner
.Show
For intAuswahl = 1 To .SelectedItems.Count
Set wbQuelldatei = GetObject(.SelectedItems(intAuswahl))
Next intAuswahl
Set wbZieldatei = ActiveWorkbook
intLastQuelle = wbQuelldatei.Worksheets(1).UsedRange.Rows.Count 'Ermittlung der letzten  _
beschriebenen Zeile (Quelldatei)
intLastZiel = wbZieldatei.Worksheets(1).UsedRange.Rows.Count 'Ermittlung der letzten  _
beschriebenen Zeile (Zieldatei)
With wbQuelldatei.Worksheets(1)
For i = 2 To intLastQuelle
If .Cells(i, 1).Value  "" Then 'Bedingung wenn in A nicht leer
.Cells(i, 1).EntireRow.Copy
wbZieldatei.Worksheets(5).Cells(intLastZiel + 1, 1).EntireRow.Insert
intLastZiel = intLastZiel + 1
End If
Next i
End With
End With
'FehlerVerarbeitung:
' MsgBox " Frühzeitiger abbruch, Programm beenden"
' Exit Sub
End Sub
Vielen Dank schon einmal für die Hilfe
Richard

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: import immer in falscher zeile
07.08.2019 14:37:06
Martin
Hallo Richard,
das Problem liegt bei der Variable "intLastZiel". Anscheinend geht der "UsedRange" bis Zeile 20. Die neue Zeile wird bei UsedRange + 1 eingefügt. Lösche mal die leeren Zeilen deiner Zieldatei, die vermutlich nicht so leer sind wie sie aussehen ;-)
Viele Grüße
Martin
AW: import immer in falscher zeile
07.08.2019 14:47:53
Richard
Hallo Martin,
habe ich auch schon manuell mit Zeilen löschen gemacht.
Richard
AW: import immer in falscher zeile
07.08.2019 14:55:15
Martin
Hallo Richard,
na dann lass dir doch einfach nur den Wert ausgeben. Da wird garantiert 20 angezeigt.
MsgBox "Letzte Zeile: " & wbZieldatei.Worksheets(1).UsedRange.Rows.Count
Oder ersetze die Zuweisung der Variable intLastZiel durch folgende Zeile, wobei du als Spalte (derzeit Spalte A) bitte eine Spalte wählst, die immer befüllt wird:
intLastZiel = wbZieldatei.Worksheets(1).Cells(1048576, 1).End(xlUp).Row
Viele Grüße
Martin
Anzeige
AW: import immer in falscher zeile
07.08.2019 15:19:18
Richard
Hallo Martin,
alle beide Code funktionieren einwandfrei.
Aber wie kann es sein wenn ich alle Zeile manuell mit Zeilen löschen lösche dass trotzdem über die msg box zeile 20 angezeigt wird.Wo ist die Logik.
Schon mal vielen Dank für Deine Hilfe
Richard
AW: import immer in falscher zeile
07.08.2019 15:30:41
Martin
Hallo Richard,
allein durch Formatierungen werden auch leere Zellen als "genutzt" interpretiert und zählen als "UsedRange". Ich bin aber auch etwas überrascht, dass selbst das Löschen der Zeilen nicht geholfen hat. Hast du wirklich die ganzen Zeilen (also per Markierung über die Zeilenköpfe) gekennzeichnet und gelöscht oder nur einen Teil der Zellen innerhalb der Zeilen?
Ich freue mich aber, dass jetzt alles wie gewünscht klappt.
Viele Grüße
Martin
Anzeige
AW: import immer in falscher zeile
07.08.2019 15:41:00
Richard
Hallo Martin,
habe schon die kompletten Zeilen gelöscht (Markierung über die Zeilenköpfe).
VBA ist für mich immer noch ein Buch mit 7 Siegeln.
Richard
...zweite Frage...
07.08.2019 14:48:58
Martin
Hallo Richard,
ich hatte vergessen deine zweite Frage zu beantworten. Füge unter die Zeile ".Show" noch folgende Zeile ein:
If .SelectedItems.Count = 0 Then Exit Sub
Viele Grüße
Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige