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

Zelleninhalt Tabelle 2 in Tabelle 1 kopieren

Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 10:47:01
Patrick
Hallo,
ich wurde gebeten, herauszufinden, wie ich folgendes lösen kann:
Im Tabellenblatt "Prüfplan" soll automatisch in die nächste freie Zeile (ab H20) der Wert Spalte "Kriterium" aus Tabellenblatt "Sonderprüfbedingungen" kopiert werden. Das aber nur, wenn die Spalte A mit "x" markiert wurde. Es sollen alle mit "x" markierten Bedingungen untereinander kopiert werden. Die "Prüfzeit" der jeweiligen Zeile aus Tabellenblatt "Sonderprüfbedingungen", soll dann ebenfalls entsprechend in das andere Blatt kopiert werden.
Leider kann ich kaum Excel VBA und verstehe nach den ganzen Recherchen nur noch Bahnhof. Die richtige Lösung konnte ich einfach nicht finden.
Kann mir jemand helfen? Ich hoffe, ich wurde einigermaßen gut verstanden.
Da die Datei mit Endung *.xlsm hier nicht hochgeladen werden kann, weiß ich nicht, wie ich das beispiel nun anhand der Tabelle zeigen soll...
Vielen Dank.

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: keine .xlsm ?..hier eine .xlsm
20.02.2019 10:58:06
Patrick
Oh, ok, das habe ich nicht gesehen. Bei mir hat er einen Fehler angezeigt, dass der Dateiname ungültig ist. Komisch. Habe es dann mit verschiedenen Varianten versucht und immer den Fehler erhalten. Dann hat es also doch geklappt...
AW: keine .xlsm ?..hier eine .xlsm
20.02.2019 10:59:20
Patrick
Ok, bei mir geht es nicht... Dachte, das wäre meine Datei.
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 11:09:45
Bernd
Servus Patrick,
wie soll das Makro angestoßen werden? Per Button, Tastenkürzel, per Worksheet_Change...
Grüße, Bernd
Anzeige
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 11:12:46
Patrick
Hi, da ich es nicht mehr verwenden werde (verlasse das Unternehmen), ist es möglich, dass es automatisch gestartet wird, sobald das Tabellenblatt aktiv ist, in dem die erforderlichen Prüfungen angekreuzt werden, die dann kopiert werden sollen?
Dies ist nur eine provisorische Tabelle, die muss sowieso noch komplett überarbeitet werden.
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 11:33:03
Bernd
Servus Patrick,
den folgenden Code in die Tabelle "Sonderprüfbedingungen" kopieren...

Private Sub Worksheet_Change(ByVal Target As Range)
Dim intLZ As Integer
If Target.Column  1 Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Value = "x" Then
Application.EnableEvents = False
With Sheets("Prüfplan")
intLZ = .Cells(Rows.Count, 8).End(xlUp).Row + 1
.Cells(intLZ, 8).Value = Target.Offset(, 1).Value
.Cells(intLZ, 9).Value = Target.Offset(, 2).Value
End With
Application.EnableEvents = True
End If
End Sub
Hinweis: Wenn das "x" wieder aus Spalte "A" gelöscht wird erfolgt keine automatische Löschung im Prüfplan!
Grüße, Bernd
Anzeige
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 11:45:31
Patrick
Wow, das ging schnell, danke.
Ist es möglich, dass die Einträge sich auch wieder löschen, wenn das "x" gelöscht wird?
Außerdem, wenn ich die Zeiten in der Spalte nachträglich manuell eintrage oder ändere, dass diese sich auch entsprechend in der ersten Tabelle anpassen? Doppeleinträge bei den Prüfkriterien sollen ebenfalls nicht möglich sein. Ich gehe davon aus, das diese Punkte sicher noch gefordert werden.
Dankeschön.
PS: Wofür steht das (xlUp)?
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 12:14:19
Bernd
Servus Patrick,
xlUp steht für die Suchrichtung.
intLZ = .Cells(Rows.Count, 8).End(xlUp).Row + 1
bedeutet einfach nur suche mir in Spalte 8 von unten nach oben die letzte befüllte Zeile und addiere 1.
teste mal...

Private Sub Worksheet_Change(ByVal Target As Range)
Dim intLZ As Integer
Dim wsq As Worksheet
Dim wsz As Worksheet
Dim treffer As Integer
If Target.Column  1 Then Exit Sub
If Target.Count > 1 Then Exit Sub
Set wsz = Sheets("Prüfplan")
Set wsq = Sheets("Sonderprüfbedingungen")
intLZ = wsz.Cells(Rows.Count, 8).End(xlUp).Row + 1
Application.EnableEvents = False
If Target.Value = "x" Then
With wsz
.Cells(intLZ, 8).Value = Target.Offset(, 1).Value
.Cells(intLZ, 9).Value = Target.Offset(, 2).Value
End With
Else
treffer = wsz.Range("H20:H" & intLZ).Find(what:=Target.Offset(, 1)).Row
With wsz
.Cells(treffer, 8).Value = ""
.Cells(treffer, 9).Value = ""
End With
End If
Application.EnableEvents = True
Set wsz = Nothing
Set wsq = Nothing
End Sub
Für die Prüfzeit würde ich einfach im Blatt "Prüfplan" in die Zelle "I20" diese Formel eintragen und runterkopieren.
=WENNFEHLER(SVERWEIS(H20;Sonderprüfbedingungen!$B:$C;2;FALSCH);"")
Dann aber bitte im Code oben diese Zeilen löschen

.Cells(intLZ, 9).Value = Target.Offset(, 2).Value
.Cells(treffer, 9).Value = ""
Grüße, Bernd
Anzeige
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 12:37:16
Patrick
Oh man, das hätte ich auch gleich machen können mit der Excel-Formel. Wieder zu kompliziert gedacht.
Ich frage mal meinen Chef, ob das reicht. Sonst melde ich mich. Hoffe, ich kann dann noch einmal mit Häkchen aufmachen.
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 13:37:01
Patrick
Hi, also es ist nun so: Wir lassen ddie Formel mit dem SVerweis weg. So kann dann manuell im Prüfplan die Zeit angepasst werden, bei Bedarf.
Mein Chef hätte gerne folgendes (wenn möglich):
Wird die Bezeichnung im Tabellenblatt "Sonderprüfbedingungen" nachträglich geändert, wäre es gut, wenn automatisch auch der entsprechende Eintrag im "Prüfplan" aktualisiert wird.
Wenn ich mehrere "x" gleichzeitig lösche, werden die Zeilen im Prüfplan nicht geleert.Ist es möglich, wenn einzelne "x" gelöscht wurden, dass er auch von oben nachsieht, ob eine leere Zeile vorhanden ist, um Einträge zu machen? Sowas wie erst von oben nachsehen und wenn nicht leer, dann erste freie Zelle von unten befüllen?
Außerdem: Wenn ich ein "x" mache, dann füllt er korrekt aus. Nun mache ich (versehentlich) ein weiteres "x" an gleicher Position und er trägt erneut in eine neue Zeile ein.
Jetzt wäre es also noch gut, wenn keine Doppeleinträge mit gleichem Inhalt möglich wären.
Und dann hat er noch den Wunsch, wenn er eine neue Spalte unter Sonderprüfbedingungen einfügt, dass dieser Inhalt dann auch kopiert wird. Im Beispiel wurde eine Spalte E (Test) eingefügt bei Sonderprüfbedingungen. In VBA möchte ich nun, dass bei Markierung der Inhalt in Spalte "Test" vom Prüfplan ebenfalls übernommen wird.
Da ich kaum noch was verstehe, habe ich es zwar versucht, siehe Code, aber es wird nun ein "x" gesetzt und das nicht in jeder entsprechenden Zeile, anstatt dass der Inhalt eingebunden wird.
Ich weiß, das ist viel und ich habe es nicht verstanden.... :-(
https://www.herber.de/bbs/user/127786.xlsm
Anzeige
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
20.02.2019 14:49:37
Bernd
Servus Patrick,
ich wollte bei einem spezifischen Problem deiner temporären Liste helfen und nicht eure Prüfplanung komplett neu gestalten. Das geht über eine übliche Forenhilfe hinaus. Versucht es vielleicht über eine Auftragsprogrammierung.
Ich bin raus.
Grüße, Bernd
AW: Zelleninhalt Tabelle 2 in Tabelle 1 kopieren
21.02.2019 06:53:27
Patrick
Hi Bernd,
das verstehe ich, ich danke Dir aber für Deine Mühen. Ich konnte nun bereits eines der Themen selbst lösen.
DANKE!

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige