Clever-Excel-Forum

Normale Version: VBA wenn gleicher Wert dann kopieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Leute, bin gerade am Beginn mich mit VBA zu beschäftigen und hänge bei diesem Beispiel.
Ich will, wenn in Tabellenblatt1 (Wert wird über Dropdown ausgewählt) der gleiche Wert wie in Tabellenblatt2 ist eine Tabelle von einem ins andere kopiert wird

Das habe ich bis jetzt geschrieben und es will nicht funktionieren

Code:
If Sheets("Tabelle1").Range("D3").Value = Sheets("VorlageRahmenplan").Range("D3").Value Then
    Sheets("VorlageRahmenplan").Select
    Range("D4:F22").Select
    Selection.Copy
    Sheets("Tabelle1").Select
    Range("D4").Select
    ActiveSheet.Paste
Else
  Exit Sub
End If

es wäre mir eine große Hilfe wenn mir wer sagen könnte wo der Fehler liegt

Vielen Dank
Hallo,

Code:
If Sheets("Tabelle1").Range("D3").Value = Sheets("VorlageRahmenplan").Range("D3").Value Then
  Sheets("VorlageRahmenplan").Range("D4:F22").Copy Sheets("Tabelle1").Range("D4")
End If

Gruß Uwe
(18.10.2014, 12:58)turbophil schrieb: [ -> ]...wo der Fehler liegt...
Hallo, ich hab ne Userform erstellt mit Commandbutton. Da hinein deinen Code kopiert und es klappt. Hoffe geholfen zu haben.
Danke euch beiden!
mit Commandbutton bekomme ich das ganze jetzt hin.

Mir wäre es aber lieber wenn sich die Werte automatisch ändern würden ohne das ich wo klicken muss
Gibt es dazu eine Lösung ohn CommandButton, bzw wo muss ich muss ich meinen Code dann einfügen??

lg phil
Hallo phil,

Rechtsklick auf den Tabellenreiter -> Code anzeigen.
Nun im rechten Codefenster diesen Code eintragen:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address(0, 0) = "D3" Then
    With Sheets("VorlageRahmenplan")
      If Target.Value = .Range("D3").Value Then
        .Range("D4:F22").Copy Me.Range("D4")
      End If
    End With
  End If
End Sub

Gruß Uwe
Super!!!!
Vielen Dank für die Hilfe!!

So funktioniert es genau wie ich es wollte!!


Danke