Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
892to896
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
892to896
892to896
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Massenausbuchung

Massenausbuchung
02.08.2007 17:24:00
Christian
Hallo Profis,
Ich habe eine Datei in der ich eingebaut habe, daß wenn eine Zahl "von" "bis" in einer Userform eingetragen wird VBA automatisch für die Zahlen dazwischen jeweils eine Zeile einträgt.
Das klappt auch echt super !
Nun möchte ich, die Felder "von" "bis" auch für das austragen aus der Datei benutzen, da ich nicht jede
Zeile einzeln ausbuchen möchte.
Code zum einbuchen:
If TextBox13.Value "" And TextBox14.Value "" Then
'für KuponNummer_von und KuponNummer_bis wurden Werte eingegeben
For lIndex = CInt(TextBox13.Value) To CInt(TextBox14.Value)
.Cells(lZeile, 3).Value = Depot 'Spalte C
.Cells(lZeile, 4).Value = ISIN 'Spalte D
.Cells(lZeile, 5).Value = Nennwert 'Spalte E
.Cells(lZeile, 6).Value = StückeNummer1 'Spalte F
.Cells(lZeile, 7).Value = lIndex 'Kupon-Nummer Spalte G
.Cells(lZeile, 8).Value = Art_des_WP 'Spalte H
.Cells(lZeile, 9).Value = Währung1 'Spalte I
.Cells(lZeile, 10).Value = Zugangs_Buchungsbelegnummer1 'Spalte J
.Cells(lZeile, 11).Value = Datum 'Spalte K
.Cells(lZeile, 12).Value = Erster_Freigeber 'Spalte L
.Cells(lZeile, 13).Value = Zweiter_Freigeber 'Spalte M
lZeile = lZeile + 1
Next lIndex
Else
'Nur Daten für einen Kupon eintragen
.Cells(lZeile, 3).Value = Depot 'Spalte C
.Cells(lZeile, 4).Value = ISIN 'Spalte D
.Cells(lZeile, 5).Value = Nennwert 'Spalte E
.Cells(lZeile, 6).Value = StückeNummer1 'Spalte F
.Cells(lZeile, 7).Value = KuponNummer_von 'Spalte G
.Cells(lZeile, 8).Value = Art_des_WP 'Spalte H
.Cells(lZeile, 9).Value = Währung1 'Spalte I
.Cells(lZeile, 10).Value = Zugangs_Buchungsbelegnummer1 'Spalte J
.Cells(lZeile, 11).Value = Datum 'Spalte K
.Cells(lZeile, 12).Value = Erster_Freigeber 'Spalte L
.Cells(lZeile, 13).Value = Zweiter_Freigeber 'Spalte M
End If
End With
klappt wie gesagt super !!
Nun der Code zum austragen bisher:
Set gefunden = Worksheets("Bogentresor").Range("H10:H5000").Find(Art_des_WP)
If gefunden Is Nothing Then MsgBox ("Art des WP nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
Set gefunden = Worksheets("Bogentresor").Range("J10:J5000").Find(Zugangs_Buchungsbelegnummer1)
If gefunden Is Nothing Then MsgBox ("Zugangs-Buchungsbelegnummer nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
Set gefunden = Worksheets("Bogentresor").Range("G10:G5000").Find(KuponNummer_von)
If gefunden Is Nothing Then MsgBox ("Kuponnummer nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
If iGefunden = 3 Then
gefunden.EntireRow.Cut
Worksheets("Archiv").Cells(.Rows.Count, "C").End(xlUp).Offset(1, 0).EntireRow.Insert
Else: MsgBox ("Bestand nicht gefunden !"): GoTo Ende
Kann einer von Euch vielleicht helfen ?

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Massenausbuchung
04.08.2007 09:17:32
Gerd
Hallo Christian,
sind die Daten nach Kupon-Nummern sortiert?
Kann das Austragen dann erfolgen, ohne dass zusätzliche Bedingungen erfüllt sind ?
Gruß Gerd

AW: Massenausbuchung
06.08.2007 10:01:00
Christian
Hallo Gerd L,
wünsche schönes WE gehabt zu haben.
wieso fragst Du ob die Tabelle sortiert ist ? -die ist mal so und mal so sortiert. Wichtig ist dabei, dass bei der Ausbuchung noch ein weiteres Kriterium dazu gekommen ist. Die sog. Stückenr. enthält z.B. 20 Koponnummern.
Also:
Set gefunden = Worksheets("Bogentresor").Range("H10:H5000").Find(Art_des_WP)
If gefunden Is Nothing Then MsgBox ("Art des WP nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
Set gefunden = Worksheets("Bogentresor").Range("J10:J5000").Find(Zugangs_Buchungsbelegnummer1)
If gefunden Is Nothing Then MsgBox ("Zugangs-Buchungsbelegnummer nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
Set gefunden = Worksheets("Bogentresor").Range("J10:J5000").Find(StückeNummer1)
If gefunden Is Nothing Then MsgBox ("Stücke Nummer nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
Set gefunden = Worksheets("Bogentresor").Range("G10:G5000").Find(KuponNummer_von)
If gefunden Is Nothing Then MsgBox ("Kuponnummer nicht gefunden !"): GoTo Ende
lZeile = gefunden.Row
iGefunden = iGefunden + 1
If iGefunden = 4 Then
gefunden.EntireRow.Cut
Worksheets("Archiv").Cells(.Rows.Count, "C").End(xlUp).Offset(1, 0).EntireRow.Insert
Else: MsgBox ("Bestand nicht gefunden !"): GoTo Ende
Die Frage ist, ob man das so in eine Schleife verbauen kann, dass die eingegebene Kupunnummer von -Kuponnummer bis alles was dazwischen liegt jeweils einzeln in die Archivtabelle kopiert.

Anzeige
AW: Massenausbuchung
06.08.2007 19:43:29
Gerd
Hallo Christian,
wenn ich weis, wo es langgehen soll, kann ich Dir evtl. helfen.
Du liest die Werte zeilenweise ein.
Nun soll nach deinem Codeentwurf bei 4 Kriterien in "ganzen" Spaltenbereichen geprüft werden,
ob diese vorhanden sind.
Weshalb nicht nach einem Hauptkriterium z.B- Kuponnummer suchen u. anschließend prüfen, ob
die drei weiteren Kriterien in der so gefundenen Zeile erfüllt sind?
"Mal so, mal so sortiert". Es macht einen gewissen Unterschied, ob ein zusammenhängeder Zeilen-
bereich (Kuponnummern) ausgewertet werden kann oder bei einer Eingrenzung "von" "bis" trotzdem jeder einzelne Kuponnummern-Wertt im ganzen Spalten-Bereich neu gesucht werden muss.
Gruß Gerd
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige