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

Daten überschreiben!

Daten überschreiben!
17.02.2009 16:22:00
lisa
Hallo zusammen
Ich habe in der Recherche nichts passendes gefunden und wende mich deshalb wieder an Euch.
Ich kopiere hier Daten von Tabelle1 nach Tabelle2!
Wenn ich einen Datensatz in Tabelle2 schon einmal vorliegen habe, breche ich den Vorgang ab und informiere per MsgBox.
Hierzu prüfe ich die Eingabe in Celle c1 der Eingabe Tabelle und die Spalte A:A der Ziel Tabelle.
Ich möchte nun aber den gefundenen vorhandenen Datensatz der Zieltabelle überschreiben, mit der Hinweis MsgBox wirklich überschreiben J/N.
Wie stelle ich das an? Kann mir heirbei jemand helfen?
Ich füge hier das Macro bei, wenn ich eine Bsp.-Tabelle zur besseren Verständlichkeit hochladen soll, sagt bitte bescheid.

Private Sub CommandButton1_Click()
If Not Application.CountIf(Sheets("Datenbank").[A:A], [C1]) > 0 Then
Dim wsT As Worksheet
Dim i As Integer
i = Sheets("Datenbank").Cells(Cells.Rows.Count, 1).End(xlUp).Row + 1
If i  0 Then
Sheets("Datenbank").Cells(i, 1) = Sheets("Dateneingabe").Cells(1, 3)
Sheets("Datenbank").Cells(i, 2) = Sheets("Dateneingabe").Cells(2, 2)
Sheets("Datenbank").Cells(i, 3) = Sheets("Dateneingabe").Cells(2, 3)
Range("i1") = Range("i1") + 1
End If
Else
MsgBox [C1].Text & " schon vorhanden!"
End If
End Sub


Mfg Lisa

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten überschreiben!
17.02.2009 16:45:00
D.Saster
Hallo,
probier mal:

Private Sub CommandButton1_Click()
Dim wksDB As Worksheet, wksDE As Worksheet
Dim i As Integer
Set wksDB = Sheets("Datenbank")
Set wksDE = Sheets("Dateneingabe")
i = wksDB.Cells(Cells.Rows.Count, 1).End(xlUp).Row + 1
If Not Application.CountIf(wksDB.Columns(1), wksDE.Range("C1")) > 0 Then
wksDB.Cells(i, 1) = wksDE.Cells(1, 3)
wksDB.Cells(i, 2) = wksDE.Cells(2, 2)
wksDB.Cells(i, 3) = wksDE.Cells(2, 3)
Range("i1") = Range("i1") + 1
Else
If MsgBox([C1].Text & " schon vorhanden!" & vbLf & "Überschreiben?", vbYesNo, "") = vbYes  _
Then
With wksDB
With .Cells(Application.Match(wksDE.Range("C1"), .Columns(1), 0), 1)
.Offset(0, 0) = wksDE.Cells(1, 3)
.Offset(0, 1) = wksDE.Cells(2, 2)
.Offset(0, 2) = wksDE.Cells(2, 3)
End With
End With
End If
End If
End Sub


Gruß
Dierk

Anzeige
AW: Danke und super!
17.02.2009 16:51:00
lisa

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige