Microsoft Excel

Herbers Excel/VBA-Archiv

Hilfe bei der Datenübertragung

Betrifft: Hilfe bei der Datenübertragung von: Frank H.
Geschrieben am: 27.08.2014 15:38:35

Hallo Zusammen!

Ich wollte 'ne Datei hoch laden, das schlug leider mehrfach fehl.
So versuche ich nun mein Problem zu schildern.
Folgenden Code will ich nutzen, nur leider klappt es nur zur Hälfte:

Private Sub ComboBox1_Change()

For lng = 12 To Sheets("Daten_Auszüge").UsedRange.Rows.Count + 1

If Sheets("Daten_Auszüge").Cells(lng, 1) = Sheets("Buchungen").ComboBox1 Then
    
Sheets("Buchungen").Cells(i, 1) = Sheets("Daten_Auszüge").Cells(lng, 3).Text
    
End If
    
Next
    
End Sub
Bei der Auswahl eines Monats aus der ComboBox werden die dazugehörigen Daten übertragen, aber in die Tabelle "Buchungen" auch in die Zeilen wo sie im Blatt "Daten_Auszüge" stehen. Ich möchte aber die gewünschten Daten immer ab Zeile 12 im Blatt "Buchungen" haben. Was muss ich in meinem Code abändern?

Bitte um Hilfe und vorab Danke!

Gruß Frank H.

  

Betrifft: AW: Hilfe bei der Datenübertragung von: Frank H.
Geschrieben am: 27.08.2014 15:44:11

Hallo !

Kleiner Fehler:

Private Sub ComboBox1_Change()

For lng = 12 To Sheets("Daten_Auszüge").UsedRange.Rows.Count + 1

If Sheets("Daten_Auszüge").Cells(lng, 1) = Sheets("Buchungen").ComboBox1 Then
    
Sheets("Buchungen").Cells(lng, 1) = Sheets("Daten_Auszüge").Cells(lng, 3).Text
    
End If
    
Next
    
End Sub
So sieht mein zur Hälfte funktionierende Code aus.

Gruß Frank H.


  

Betrifft: AW: Hilfe bei der Datenübertragung von: fcs
Geschrieben am: 27.08.2014 15:57:32

Hallo Frank,

mit der Variablen i warst du ja schon auf dem richtigen weg.

ggf. vorher noch die QAltdaten im Blatt Buchungen löschen.

Gruß
Franz

Private Sub ComboBox1_Change()
  Dim lng As Long, i As Long
  'Altdaten ab Zeile 12 löschen
  With Sheets("Buchungen")
    lng = .Cells(.Rows.Count, 1).End(xlUp).Row
    If lng >= 12 Then
      .Range(.Cells(12, 1), .Cells(lng, 1)).ClearContents
    End If
  End With
  
  i = 12
  For lng = 12 To Sheets("Daten_Auszüge").UsedRange.Rows.Count + 1
  
    If Sheets("Daten_Auszüge").Cells(lng, 1) = Sheets("Buchungen").ComboBox1 Then
      Sheets("Buchungen").Cells(i, 1) = Sheets("Daten_Auszüge").Cells(lng, 3).Text
      i = i + 1
    End If
      
  Next
    
End Sub



  

Betrifft: AW: Hilfe bei der Datenübertragung von: Frank H.
Geschrieben am: 27.08.2014 16:06:09

Hallo Franz!

Super, Super nochmals Super. Ich glaube mein Tag ist gerettet! Vielen Dank!

Gruß Frank H.