Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1440to1444
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

VBA-Kopieren

VBA-Kopieren
17.08.2015 15:08:25
Raphael
Hallo Community,
ich bin gerade dabei verschiedene Listen zu verknüpfen und möchte hierzu von der "Datentabelle" alle Werte (Zeile;3) auf einen Inhalt prüfen.
Wenn Zeile x in der Spalte 3 = "Meilenstein" dann kopiere den Wert aus der Zeile x in der Spalte 3 in das Worksheet "Verknüpfung schaffen".
Jedes mal wenn eine Übereinstimmung gefunden wird soll unter die vorherige Zeile in das Worksheets "Verknüpfung schaffen" kopiert werden.
Hier schon mal mein Lösungsansatz, welcher zu keinem Ergebnis führt...
Sry dass ich euch alle so oft Belästige. Bin aktuell dabei als Teilgebiet meiner BA-Thesis eine Projektmanagement-Oberfläche zu gestalten.
Vielen Dank im Voraus für eure Unterstützung!
Anbei wie immer die Datei
Sub Transfer()
Dim wksQuelle As Worksheet, wksZiel As Worksheet
With ActiveWorkbook
Set wksQuelle = .Worksheets("Datentabelle")
Set wksZiel = .Worksheets("Verknüpfung Schaffen")
End With
With wksQuelle
k = 13
S = 2
n = 1
Do While Not S = 0
If Cells(k, 2) = "" Then
S = 0
Else
If Cells(k, 3).Value = "Meilenstein" Then
Cells(k, 6).Copy Destination:=wksZiel.Cells(n, 1)
n = n + 1
End If
End If
k = k + 1
Loop
End With
End Sub

Hier die Datei: https://www.herber.de/bbs/user/99644.xlsm

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Nachgefragt
17.08.2015 15:44:20
AlexG
Hallo Raphael,
du wolltest sicherlich in Zeile acht deiner Zieltabelle starten, oder?
Für deine With- Klammer hast du die Punkte vor den Cells nicht gesetzt, was wenn du aktuell in diesem Blatt bist keine Auswirkungen hat, aber zu fehlerhaften Daten führt wenn du das Makro aus einem anderen Blatt startest. Sicher dass auch leere Zellen kopiert werden sollen? Reicht es auch nur die Werte zu übertragen, ohne die "ganze Zelle" zu kopieren? Noch ein Tipp als Schalter eignet sich eher eine Boolean- Variable.
Gruß
Alex
PS. Hier mal dein Beispiel umgestellt.
Sub Transfer()
Dim wksQuelle As Worksheet, wksZiel As Worksheet
Dim k&, n&
Dim s As Boolean
With ActiveWorkbook
Set wksQuelle = .Worksheets("Datentabelle")
Set wksZiel = .Worksheets("Verknüpfung Schaffen")
End With

k = 13
s = True
n = 8
With wksQuelle
    Do While s = True
        If .Cells(k, 2) = "" Then
        s = False
        Else
            If .Cells(k, 3).Value = "Meilenstein" Then
                .Cells(k, 6).Copy Destination:=wksZiel.Cells(n, 1)
                n = n + 1
            End If
        End If
        k = k + 1
    Loop
End With
End Sub

Anzeige
AW: VBA-Kopieren
17.08.2015 15:53:40
Matthias
Hallo Raphael,

If Cells(k, 2) = "" Then
nicht das .Value vergessen ;)
mfg Matthias

AW: VBA-Kopieren
18.08.2015 09:53:47
Raphael
Hallo Mathias,
vielen Dank für deine schnelle Antwort.
Leider habe ich trotzdem wieder ein Bug...Kannst du dir bitte mal den Screenshot anschauen ? ;)
Userbild

Hast du dir...
18.08.2015 10:08:52
AlexG
Hallo Raphael,
.... meinen Beitrag angesehen? Du startest in Zeile 1 beim Einfügen. Ich bin mir sicher, dass du eine Fehlermeldung wegen verbundenen Zellen bekommst.
Gruß
Alex

Anzeige
AW: Hast du dir...
18.08.2015 14:39:24
Raphael
Hallo Alex,
ich habe das ganze jetzt ab Zeile 8 starten lassen.
Problem....er kopiert nichts ;(
Sub Transfer()
Dim wksQuelle As Worksheet, wksZiel As Worksheet
With ActiveWorkbook
Set wksQuelle = .Worksheets("Datentabelle")
Set wksZiel = .Worksheets("Verknüpfung Schaffen")
End With
With wksQuelle
k = 13
S = 2
n = 8
Do While Not S = 0
If Cells(k, 2).Value = "" Then
S = 0
Else
If Cells(k, 3).Value = "Meilenstein" Then
Cells(k, 6).Copy Destination:=wksZiel.Cells(n, 1)
n = n + 1
End If
End If
k = k + 1
Loop
End With
End Sub

Anzeige
Es fehlen immer noch...
18.08.2015 18:39:28
AlexG
Hallo Raphael,
...die Punkte vor den Cells in der With Klammer. Hast du das Makro aus der Tabelle gestartet in der die zu kopierenden Daten stehen?
Gruß
Alex

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige