Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten überschreiben!

Forumthread: 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

Anzeige

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
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige