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

VBA - Werte aus Tabellenblatt in MsgBox ausgeben

VBA - Werte aus Tabellenblatt in MsgBox ausgeben
31.12.2015 18:26:05
Ansako78
Hallo zusammen
ich habe eingeschränkte VBA-Erfahrungen und versuche gerade folgendes: es gibt eine Tabelle, in der in Spalte 1 verschiedene Kontonummern stehen, die wiederholt vorkommen, und in Spalte 2 steht die Buchungsnummer der Belastung und in Spalte 3 der belastete Betrag (es gibt keine Gutschriften, die gegengerechnet werden müssten).
Über eine Eingabebox kann der Benutzer eingeben, zu welcher Kontonummer in einer MsgBox die Belastungen gelistet werden. Die MsgBox soll zeilenweise die Buchungsnummer und den Betrag ausweisen. In der letzten Zeile der MsgBox soll die Summe der Belastungen stehen. Im Idealfall zeigt der Titel der Messagebox die Kontonummer an und superideal wäre, wenn man die MsgBox ausdrucken könnte.
Da ich keine Expertin bin, habe ich den Code soweit aufgestellt, dass er die Kontonummer abfragt und die zugehörigen Belastungen auf das zweite Tabellenblatt schreibt (ich bin behelfsmäßig so vorgegangen, weil ich gedacht habe, dass ich es leichter hinkriege, die dortigen Inhalte dann in der MsgBox anzeigen zu lassen statt irgendwie mit versteckten "Zwischenvariablen" zu arbeiten - es soll nicht elegant sein, aber funktionieren).
Dieses zweite Tabellenblatt, was nun als Quelle für die MsgBox genutzt werden kann und nicht mehr gefiltert werden muss, hat folgendes Format:
Zeile 1, Spalte 1: "Buchungsnummer"
Zeile 1, Spalte 2: "Betrag"
Zeile 2 bis n: zeigt die entsprechenden Buchungen
Zeile n+1, Spalte 1: "Summe"
Zeile n+1, Spalte 2: Gesamtbetrag der Buchungen
Mein konkretes Problem ist nun, dass die Anzahl der Buchungen immer unterschiedlich ist und in Einzelfällen die Zahl 50 erreicht. Wie kann man das mit einer Schleife lösen?
Mein Verständnis ist, dass man vorbereitend zunächst Variablen definieren muss (Analog zu den Buchungsnummern in Spalte 1) und dann diesen Variablen die zugehörigen Werte (die Beträge aus Spalte 2) zuweisen muss.
Die 'Schreibanweisung' für die MsgBox muss im Nachgang dann so flexibel sein, dass sie ebenfalls die unterschiediche Anzahl der Buchungen berücksichtigt. (Soetwas wie "MsgBox "Ziehung 1: " & Variable2 & vbLf & _ "Ziehung 3: " & Variable3 & vbLf & ....." geht nicht. Zudem ändert sich ja auch die Position für den Gesamtbetrag)
Tja, und dann wäre ja noch das Ding mit Titelzeile und dem Drucken....
Wenn man weiß, wie's geht, vermutlich ein kurzer Code, weil sicherlich mit einer Schleife lösbar...
wer kann helfen?
Besten Dank vorab
VG :-)

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Bitte ignorieren! Falscher Beitrag ;-(( o.T.
31.12.2015 20:01:30
Sepp
Gruß Sepp

AW: VBA - Werte aus Tabellenblatt in MsgBox ausgeben
01.01.2016 14:50:53
Matthias
Hier eine Möglichkeit!
Sub msgbox_groß()
Dim text
text = ""
For i = 2 To Worksheets(2).Cells(Rows.Count, 1).End(xlUp).Row
text = text & Worksheets(2).Cells(i, 1) & ": " & Worksheets(2).Cells(i, 2) & Chr(10)
Next i
MsgBox text
End Sub

329 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige