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

Schleifen-Problem

Forumthread: Schleifen-Problem

Schleifen-Problem
24.02.2004 16:57:35
Benjamin Gaus
Ich habe folgende Schleifen programmiert:
zeile = 30
spalte = 1
For i = 1 To Abwesend_SR
prompt31 = "Namen der Abwesenden geltenden Gruppen-SR? (Einzel Eingabe der Personen!)"
Namen_Abwesend = Application.InputBox(prompt31)
Tabelle1.Cells(zeile, spalte).Value = Namen_Abwesend
If spalte = 4 Then
zeile = zeile + 1
spalte = 1
End If
If spalte = 1 Then
spalte = spalte + 3
End If
Tabelle1.Cells(30, 10).Value = zeile
Tabelle1.Cells(30, 11).Value = spalte
Next i
Ich möchte Namen eingeben, das klappt aus, bloß wird nach der dritten Eingabe ein falscher Platz in Excel ausgewählt. Warum?
Ausgabe:
Erster Name: Spalte 30 Zeile 1
Zweiter Name: Spalte 30 Zeile 4
Dritter Name: Spalte 31 Zeile 4 (korrekt wäre Zeile 1)
aber was ist an den If-Schleifen falsch?
ich bin noch Anfänger, aber das verstehe ich nicht, warum das nicht korrekt ausgegeben wird!
hoffe ihr könnt mir helfen?
Bis dann
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Schleifen-Problem
24.02.2004 17:10:55
Alex K.
Hallo Benjamin
schaue dir mal diesen Teil an:

spalte = 1
End If
If spalte = 1 Then
spalte = spalte + 3
End If

Und was siehst du? Richtig, du setzt spalte auf 1 und gleich in der nächsten Abfrage wieder auf 4, da die Abfrage "If spalte = 1" ja zutrifft.
Also änder dies in

spalte = 1
else 'Wenn spalte wieder auf 1 zurückgesetzt wird, dann nicht in die
'Zuweisung "spalte = 4" laufen. Diese nur anlaufen, wenn spalte <> 4 ist
spalte = 4
End If

Anzeige
AW: Schleifen-Problem
24.02.2004 17:11:05
Benjamin Gaus
Ich habs gelöst.
habe einfach aus den zwei IF-Schleifen, eine gemacht und es geht jetzt aufeinmal!
nach meinen Programmierkenntnissen, hätte das auch so funktionieren müssen!
AW: Schleifen-Problem
24.02.2004 17:12:52
Andreas Rost
Hallo Benjamin,
Du änderst mit der If spalte = 4 Then spalte = 1 den Spaltenwert von 4 auf 1. Gleich danach wird die Spalte von 1 wieder auf 4 gesetzt. If spalte = 1 Then spalte = spalte + 3
somit wird der nächste in die Spalte 4 geschrieben. du solltest erst die Ausgabe vornehmen, bevor du die spalte wieder auf 4 setzt.

gruss
Andreas
Anzeige
;

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