Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
884to888
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
884to888
884to888
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Kopieren und löschen mit Datumseingabe

Kopieren und löschen mit Datumseingabe
16.07.2007 21:15:00
chris
Hallo Leute !
Ich habe eine Datei mit unmengen von zeilen A2-G3000. Ich will nun mittels VBA code jeweils eine zeile, wo ich das Datum (H2-H3000) eingebe, in eine andere Datei (Name: Erledigt) kopieren und auf dieser Datei (Name: Übersicht) soll dies Zeile gelöscht werden. Es sollte dann noch nachgefragt werden: wollen Sie wirklich löschen ?"
Könnt Ihr mir helfen.
Danke im voraus
chris

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopieren und löschen mit Datumseingabe
16.07.2007 22:02:00
Chaos
Servus,
vielleicht entspricht das deinen Vorstellungen/in das Tabellenmodul, wo deine Werte drin stehen

Private Sub Worksheet_Change(ByVal Target As Range)
Dim n As String
Dim r As Integer
If Not Intersect(Target, Range("H2:H3000")) Is Nothing Then ' Eingabebereich
If IsDate(Target) Then ' Abfrage, ob Datum
Application.ScreenUpdating = False
n = ActiveWorkbook.Name
Workbooks.Open Filename:="C:\Dokumente und Einstellungen\Christian\Desktop\Erledigt.xls" ' _
Hier dein Pfad
With Workbooks(n)
r = Target.Row
nachricht = MsgBox("Möchten Sie die Zeile wirklich löschen ?", vbYesNo) ' abfrage,  _
ob löschen
If nachricht = vbYes Then ' bei ja löschen und kopieren
.Sheets(1).Range("A" & r & ":G" & r).Copy Destination:=Workbooks("Erledigt.xls"). _
Sheets(1).Range("A65536").End(xlUp).Offset(1, 0)
.Sheets(1).Range("A" & r & ":G" & r).Delete
Else
Target.ClearContents
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True ' bei nein nichts
Exit Sub
End If
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
End If
End If
End Sub


Gruß
Chaos

Anzeige
AW: Kopieren und löschen mit Datumseingabe
16.07.2007 22:11:13
Chaos
Servus,
hier noch ne kleine Verbesserung, beim alten Code bleibt das Datum drin, hier nicht:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim n As String
Dim r As Integer
If Not Intersect(Target, Range("H2:H3000")) Is Nothing Then
If IsDate(Target) Then
Application.ScreenUpdating = False
n = ActiveWorkbook.Name
Workbooks.Open Filename:="C:\Dokumente und Einstellungen\Christian\Desktop\Erledigt.xls"
With Workbooks(n)
r = Target.Row
nachricht = MsgBox("Möchten Sie die Zeile wirklich löschen ?", vbYesNo)
If nachricht = vbYes Then
.Sheets(1).Range("A" & r & ":G" & r).Copy Destination:=Workbooks("Erledigt.xls"). _
Sheets(1).Range("A65536").End(xlUp).Offset(1, 0)
.Sheets(1).Range("A" & r & ":G" & r).Delete
Target.ClearContents
Else
Target.ClearContents
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
Exit Sub
End If
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
End If
End If
End Sub


Gruß
Chaos

Anzeige
AW: Kopieren und löschen mit Datumseingabe
17.07.2007 18:50:43
chris58
Danke für die Antwort, doch bei mir klappt das nicht. Ich habe die Datei hier reingestellt. Es ist eine umgemodelte von hier, ein wenig abgeändert halt.
Kannst du mir nochmal helfen ........ wenn ja .. danke im voraus

Die Datei https://www.herber.de/bbs/user/44176.xls wurde aus Datenschutzgründen gelöscht


AW: Kopieren und löschen mit Datumseingabe
18.07.2007 13:33:24
Chaos
Servus,
jetzt geht's, hab's getestet. Du hast das Datum nicht in H eingegeben, sondern in G (hab ich geändert) und das Sheet ist nicht Sheet(1), sondern Sheet(3) oder Sheet("Übersicht"). Es wird nach Erledigt!tabelle1 kopiert.
https://www.herber.de/bbs/user/44206.xls
Du musst nur noch den Pfad anpassen, wo Erledigt.xls liegt.
Gruß
Chaos

Anzeige
AW: Kopieren und löschen mit Datumseingabe
18.07.2007 15:02:25
chris58
Danke für deine Mühe, es klappt wenn ich die Datei "Erledigt" nicht öffne.
2 Fragen hätte ich noch:
1. Kann man das ganze auch als als Tabellenblatt im gleichen Excel Tool haben ? und
2. Wie kann man die Formel umändern, das die Zeile zwar kopiert aber nicht gelöscht wird ?
Denn es geht so, ich habe die Datei mit den Typenscheinen, hier werden sie eingetragen
dann werden diese mit 90% Vorfinanziert und sollen noch nicht erledigt sein, sie kommen nur auf eine andere Liste. Wenn das Auto dann verkauft wird, dann sollen sie in die Erledigten kommen. Wäre nett wenn du mir helfen würdest, denn es ist immer ein Riesenaufwand mit zwei Listen und den Datums usw. zu jonglieren. Ich werde mir dann die Listen zusammenstoppeln und hoffe ich komm auf einen grünen Zweig. Jedenfalls danke nochmal, das erste hat mir shcon sehr geholfen.
lg
chris

Anzeige
AW: Kopieren und löschen mit Datumseingabe
18.07.2007 22:07:00
Chaos
Servus Chris,

Private Sub Worksheet_Change(ByVal Target As Range)
Dim n As String
Dim r As Integer
If Not Intersect(Target, Range("G2:G3000")) Is Nothing Then ' Eingabebereich
If IsDate(Target) Then ' Abfrage, ob Datum
Application.ScreenUpdating = False
n = ActiveWorkbook.Name
Workbooks.Open Filename:="C:\Documents and Settings\stadter\Desktop\Erledigt.xls" ' _
Hier dein Pfad
With Workbooks(n)
r = Target.Row
nachricht = MsgBox("Möchten Sie die Zeile wirklich löschen ?", vbYesNo) ' abfrage, _
ob löschen
If nachricht = vbYes Then ' bei ja löschen und kopieren
.Sheets("Übersicht").Range("A" & r & ":G" & r).Copy Destination:=Workbooks(" _
Erledigt.xls"). Sheets(1).Range("A65536").End(xlUp).Offset(1, 0)
Else
Target.ClearContents
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True ' bei nein nichts
Exit Sub
End If
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
End If
End If
End Sub


Was meinst du mit im gleichen Excel-Tool ? In der selben Arbeitsmappe, z.B.: Sheets("Erledigt") ? Wenn du das meintest, dann ja. das geht ohne weiteres.
Habe dir im Code die Zeile, die fürs Löschen verantwortlich ist rausgenommen.
Gruß
Chaos

Anzeige
AW: Kopieren und löschen mit Datumseingabe
19.07.2007 18:14:42
chris58
Danke für deine Bemühung. Es klappt sehr gut, bin begeistert. Nun kann ich weitermachen und hoffe auf keine weiteren Probleme zu stossen. Nochmals danke
chris

AW: Kopieren und löschen mit Datumseingabe
19.07.2007 19:07:07
Chaos
Bitte

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige