Anzeige
Archiv - Navigation
1924to1928
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

Werte in andere Arbeitsmappe kopieren

Werte in andere Arbeitsmappe kopieren
15.04.2023 19:26:57
Adrian

Hallo liebe VBA-Experten!
Ich habe im Tabellenblatt "Tagesrapporte" eine Auflistung mit täglich ergänzten Mitarbeiterrapporten, unter anderem mit den Namen der Mitarbeiter (Spalte D). Per VBA sollen nun bestimmte Zellen in eine andere Exceldatei des entsprechenden Mitarbeiters kopiert werden.
Zu meinen Problemen:
1. Ich möchte die Daten des entsprechenden Mitarbeiters in andere, bestehende Arbeitsmappen ("Mitarbeiter1", "Mitarbeiter2", usw.) kopieren und nicht auf ein anderes Blatt in der Quelldatei wie bis jetzt der Fall.
2. Es sollen nur die Spalten D - K, M, O - Q und S der entsprechenden Zeile kopiert werden.
3. Die Daten sollen bei Änderungen oder beim Öffnen von "Tagesrapport" kopiert werden.
Wie müsste ich den folgenden Code ändern?
Vielen Dank im Voraus!

Sub SearchMitarbeiter()
With Worksheets("Tagesrapporte")
For i = 1 To .Cells(Rows.Count, 4).End(xlUp).Row
Select Case .Cells(i, 4).Value
Case Is = "Mitarbeiter1"
.Rows(i).EntireRow.Copy Destination:=Worksheets("Mitarbeiter1").Range("A" & Worksheets("Mitarbeiter1").Cells(Rows.Count, 4).End(xlUp).Row + 1)
Case Is = "Mitarbeiter2"
.Rows(i).EntireRow.Copy Destination:=Worksheets("Mitarbeiter2").Range("A" & Worksheets("Mitarbeiter2").Cells(Rows.Count, 4).End(xlUp).Row + 1)
End Select
Next i
End With
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Werte in andere Arbeitsmappe kopieren
15.04.2023 20:39:26
ralf_b
da wird dir wohl nicht Anderes übrig bleiben als jede einzelne Datei des Mitarbeiters anzufassen und die Daten dort zu ändern.
d.h. feststellen ob datei vorhanden, dann öffnen, die Werte einsetzen, speichern , schließen.
Alles davon ist hier schon vielfach gepostet worden.


AW: Werte in andere Arbeitsmappe kopieren
16.04.2023 12:14:07
Adrian
Vielen Dank ralf_b für deine Antwort. Ich sehe deinen Lösungsweg, jedoch bin ich als VBA-Neuling etwas überfordert, alles in einen Code zu packen.
In einem separaten Code habe ich es geschafft es in bestehende Arbeitsmappen zu kopieren aber leider erstellt es dort bei jedem Kopieren ein neues Blatt. Wie gesagt wäre es schön alles in einem Code zu haben. Leider komme ich nach stundenlangem Ausprobieren nicht mehr weiter:(
Ich hoffe es kann mir sonst jemand helfen!? Oder ist das etwas für die Auftragsprogrammierung?

Hier die Codes die ich schon habe:

Sub SearchMitarbeiter()
With Worksheets("Tagesrapporte")
For i = 1 To .Cells(Rows.Count, 4).End(xlUp).Row
Select Case .Cells(i, 4).Value
Case Is = "Mitarbeiter1"
.Rows(i).EntireRow.Copy Destination:=Worksheets("Mitarbeiter1").Range("A" & Worksheets("Mitarbeiter1").Cells(Rows.Count, 4).End(xlUp).Row + 1)
Case Is = "Mitarbeiter2"
.Rows(i).EntireRow.Copy Destination:=Worksheets("Mitarbeiter2").Range("A" & Worksheets("Mitarbeiter2").Cells(Rows.Count, 4).End(xlUp).Row + 1)
End Select
Next i
End With
End Sub
Sub BlattInGeschlosseneMappeKopieren()
Application.ScreenUpdating = False

    Set GeschlosseneMappe = Workbooks.Open("d:\Users\rotha\Desktop\Mitarbeiter1.xlsx")
    Sheets("Mitarbeiter1").Copy Before:=GeschlosseneMappe.Sheets("Mitarbeiter1")
    GeschlosseneMappe.Close SaveChanges:=True

Application.ScreenUpdating = True
End Sub


Anzeige
danke für den Hinweis owt
16.04.2023 15:18:28
ralf_b

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige