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

Hilfe bei Quelltext

Hilfe bei Quelltext
22.01.2008 15:08:02
Gordon
Moin,
ich schreibe gerade mit VBA ein Kalkulation für Kostenstellen. Leider habe ich da irgendwo ein ziemliches Problem. Vielleicht kann mir ja da jemand mal helfen. Hier schon mal der Quelltext:

Sub März()
Dim z As Long           'Zeile
Dim honorare As Long    '4181 Honorare
Dim fahrt As Long       '4000 TN_Fahrt u. Reisek.
Dim mittel As Long      '4010 TN_Lehr-u. Lernmittel
Dim kleidung As Long    '4020 TN Berufskleid.
Dim bewirtung As Long   '4050 TN Bewirtung
Dim pädagogisch As Long '4060 TN Pädag. Sonderm.
Dim transport As Long   '4781 Transport- kosten
Dim porto As Long       '4910 Porto- Post-gebühren
Dim büro As Long        '4930 Büro- Verwaltungs-bedarf
Dim bücher As Long      '4940 Bücher Zeitschriften
For z = Worksheets("März").Range("H65536").End(xlUp).Row To 4 Step -1
If Worksheets("März").Cells(z, 8) = Worksheets("Jahresübersicht").Range("A24") Then  _
_
If Worksheets("März").Cells(z, 6) = 4181 Then _
honorare = honorare + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4000 Then _
fahrt = fahrt + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4010 Then _
mittel = mittel + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4020 Then _
kleidung = kleidung + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4050 Then _
bewirtung = bewirtung + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4060 Then _
pädagogisch = pädagogisch + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4781 Then _
transport = transport + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4910 Then _
porto = porto + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4930 Then _
büro = büro + Worksheets("März").Cells(z, 7)
If Worksheets("März").Cells(z, 6) = 4940 Then _
bücher = bücher + Worksheets("März").Cells(z, 7)
Next
Worksheets("Jahresübersicht").Range("B28") = honorare
Worksheets("Jahresübersicht").Range("C28") = fahrt
Worksheets("Jahresübersicht").Range("d28") = mittel
Worksheets("Jahresübersicht").Range("e28") = kleidung
Worksheets("Jahresübersicht").Range("f28") = bewirtung
Worksheets("Jahresübersicht").Range("g28") = pädagogisch
Worksheets("Jahresübersicht").Range("h28") = transport
Worksheets("Jahresübersicht").Range("i28") = porto
Worksheets("Jahresübersicht").Range("j28") = büro
Worksheets("Jahresübersicht").Range("k28") = bücher
honorare = 0
fahrt = 0
mittel = 0
kleidung = 0
bewirtung = 0
pädagogisch = 0
transport = 0
porto = 0
büro = 0
bücher = 0
End Sub


Und zwar steht in Tabelle "Jahresübersicht" in Feld A24 = 100.
Auf dem Blatt "März" steht in der Spalte "H" (8.Spalte) nirgends der Wert 100, sondern nur 200.
Und trotz das die Felder ungleich sind, gibt er die Werte an die Variable Bücher weiter. Ich weiß aber nicht warum. Kann mir da jemand helfen? Ich hoffe, jemand kommt mit meiner Dartsellung zurecht. Gebe gerne mehr Auskunft....wüßte aber von selbst nicht wie.
Gruß
Gordon

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

Betreff
Datum
Anwender
Anzeige
AW: Hilfe bei Quelltext
22.01.2008 15:21:02
Hajo_Zi
Hallo Gordon,
der Teil ist überflüssig
honorare = 0
fahrt = 0
mittel = 0
kleidung = 0
bewirtung = 0
pädagogisch = 0
transport = 0
porto = 0
büro = 0
bücher = 0
Die Variablen sind nur im Makro gültig.
Wäre da eine Datei nicht guT?

AW: Hilfe bei Quelltext
22.01.2008 15:45:00
Erich
Hallo Gordon,
das Problem entsteht durch das Fortsetzungszeichen "_" nach der ersten If-Anweisung:
If Worksheets("März").Cells(z, 8) = Worksheets("Jahresübersicht").Range("A24") Then _
Dadurch bezieht sich das If nur auf die eine folgende Anweisung
If Worksheets("März").Cells(z, 6) = 4181 Then _
honorare = honorare + Worksheets("März").Cells(z, 7)
Alle weiteren Anweisungen werden immer ausgeführt, auch wenn das erste "If" nicht erfüllt ist.
(Unten fehlt entsprechend auch ein "End If".)
Versuchs mal damit:

Sub März()
Dim z As Long           'Zeile
Dim honorare As Long    '4181 Honorare
Dim fahrt As Long       '4000 TN_Fahrt u. Reisek.
Dim mittel As Long      '4010 TN_Lehr-u. Lernmittel
Dim kleidung As Long    '4020 TN Berufskleid.
Dim bewirtung As Long   '4050 TN Bewirtung
Dim pädagogisch As Long '4060 TN Pädag. Sonderm.
Dim transport As Long   '4781 Transport- kosten
Dim porto As Long       '4910 Porto- Post-gebühren
Dim büro As Long        '4930 Büro- Verwaltungs-bedarf
Dim bücher As Long      '4940 Bücher Zeitschriften
With Worksheets("März")
For z = .Range("H65536").End(xlUp).Row To 4 Step -1
If .Cells(z, 8) = Worksheets("Jahresübersicht").Range("A24") Then
Select Case .Cells(z, 6)
Case 4181: honorare = honorare + .Cells(z, 7)
Case 4000: fahrt = fahrt + .Cells(z, 7)
Case 4010: mittel = mittel + .Cells(z, 7)
Case 4020: kleidung = kleidung + .Cells(z, 7)
Case 4050: bewirtung = bewirtung + .Cells(z, 7)
Case 4060: pädagogisch = pädagogisch + .Cells(z, 7)
Case 4781: transport = transport + .Cells(z, 7)
Case 4910: porto = porto + .Cells(z, 7)
Case 4930: büro = büro + .Cells(z, 7)
Case 4940: bücher = bücher + .Cells(z, 7)
End Select
End If
Next
End With
With Worksheets("Jahresübersicht")
.Range("B28") = honorare
.Range("C28") = fahrt
.Range("d28") = mittel
.Range("e28") = kleidung
.Range("f28") = bewirtung
.Range("g28") = pädagogisch
.Range("h28") = transport
.Range("i28") = porto
.Range("j28") = büro
.Range("k28") = bücher
End With
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Hilfe bei Quelltext
22.01.2008 16:08:00
Gordon
Klasse!
Hat geklappt! Danke für die Hilfe!
Gruß
Gordon

Danke für Rückmeldung - Gerne! (oT)
22.01.2008 16:20:00
Erich

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige