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

Nicht zusammenhängende Bereiche kopieren

Nicht zusammenhängende Bereiche kopieren
12.06.2013 23:12:30
Albert
Hallo liebe VBA-Experten,
ich will von einer Tabelle Werte aus den Bereichen C bis J kopieren und in einer zweiten Tabelle an derselben Stelle einfügen. Zwischen den zu kopierenden Zeilen liegen jeweils 8 Zeilen.
Meine Versuche, das Problem zu lösen sind kläglich gescheitert. Vielleicht kann mir jemand von Euch bei meinem unten dargestellten VBA-Code weiterhelfen.
Es haben sich ein paar Probleme ergeben:
1) Union(Cells .....)).copy funktioniert nicht
2) Tabelle1 in Zieldatei kann nicht angesprochen werden
Sub Werte_importieren()
Dim Pfad_lokal As String
Pfad_lokal = Range("G2")
Dim wbZiel As Workbook
Dim wbQuelle As Workbook
Set wbZiel = ThisWorkbook
Set wbQuelle = Workbooks.Open(Range("G2"))
Dim lR%, i%
Dim lX%, n%
Dim intRow As Integer
'wbQuelle.Tabelle1.Select
lR = Cells(Rows.Count, 3).End(xlUp).Row
For i = 204 To 12 Step -8
Cells(i, 10).Copy    'Union(Cells(i, 3), Cells(i, 9), Cells(i, 10)).Copy -> funktioniert  _
nicht
wbZiel.Tabelle1.Select 'funktioniert nicht
lX = Cells(Rows.Count, 3).End(xlUp).Row
For n = 204 To 12 Step -8
Cells(n, 10).Paste
Next i
Next n
wbQuelle.Close SaveChanges:=False
Set wbQuelle = Nothing
Set wbZiel = Nothing
End Sub

Vielen Dank im Voraus und schönen Abend
Albert

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

Betreff
Datum
Anwender
Anzeige
AW: Nicht zusammenhängende Bereiche kopieren
13.06.2013 07:17:02
Hajo_Zi
Hallo Albert,
das ist in Excel nicht möglich, also auch nicht in VBA.
Gruß Hajo

Danke Hajo
13.06.2013 18:14:04
Albert
Hallo Hajo,
danke für die Rueckmeldung
Gruß
Albert

AW: Nicht zusammenhängende Bereiche kopieren
13.06.2013 08:16:03
Tino
Hallo,
nicht zusammenhängende Zellen in einer Zeile musst Du einzeln kopieren.
Wenn Du mit den Objektnamen der Tabellen arbeiten willst,
muss man wissen dass diese nur in der Datei wo der Code steht direkt angesprochen werden können.
Sind diese in einer anderen (hier die Quelle) muss diese erst gesucht werden.
Wenn Dir der Registername bekannt ist, kannst Du diese auch so
Set wsQuelle = wbQuelle.Worksheets("Tabelle1")
direkt ohne suche verwenden.
Hier mal eine Variante die funktionieren sollte. (habe diesen jetzt nicht getestet)
Sub Werte_importieren()
Dim Pfad_lokal As String
Dim wsZiel As Worksheet
Dim wbQuelle As Workbook, wsQuelle As Worksheet, rngQuelle As Range
Dim nRQ&, nRZ&
Pfad_lokal = Range("G2")
Set wsZiel = Tabelle1
Set wbQuelle = Workbooks.Open(Pfad_lokal)
''nach Objektnamen der Tabelle suchen oder
'Set wsQuelle = wbQuelle.Worksheets("Tabelle1")
''verwenden
For Each wsQuelle In wbQuelle.Worksheets
If wsQuelle.Name = "Tabelle1" Then Exit For
Next wsQuelle
If Not wsQuelle Is Nothing Then
With wsQuelle
For nRQ = 204 To 12 Step -8
nRZ = wsZiel.Cells(wsZiel.Rows.Count, 3).End(xlUp).Row + 1
For Each rngQuelle In Union(.Cells(nRQ, 3), .Cells(nRQ, 9), .Cells(nRQ, 10))
'nur Werte
wsZiel.Cells(nRZ, rngQuelle.Column).Value = rngQuelle.Value
'            'kopieren mit Formel
'            rngQuelle.Copy wsZiel.Cells(nRZ, rngQuelle.Column)
Next rngQuelle
Next nRQ
End With
Else
MsgBox "Tabelle1 nicht als Objektname gefunden!"
End If
wbQuelle.Close SaveChanges:=False
End Sub
Gruß Tino

Anzeige
Vielen Dank Tino
13.06.2013 18:12:17
Albert
Hallo Tino,
ich habe gerade Deinen Beitrag gelesen und werde heute Abend Deine Variante testen. Ich werde auf jeden Fall im Forum Bescheid geben ob es funktioniert hat.
Vorerst einmal vielen herzlichen Dank
Albert

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige