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

Schleifenfehler

Schleifenfehler
10.12.2003 11:59:32
Peter
Hallo Forum,
wer kann helfen? So ganz funktioniert die Sache nicht.
Wie beende ich die Mitarbeiterschleife,wenn kein Eintrag vorhanden ist?

Dank im voraus
Peter

~begin~

Sub MitarbEintragen()
Dim beginn, PersZahl, Zähler, Zeichenfolge
Dim MA As Object
'Mitarbeiter zählen & eintragen
With Sheets("Mitarbeiter")
Range("B2").Select
beginn = ActiveCell.Address
ActiveCell.End(xlDown).Select
PersZahl = Range(beginn, ActiveCell).Rows.Count
End With
'Mitarbeiterdaten eintragen
ActiveSheet.Range("B8").Select
For Zähler = 1 To PersZahl
Set MA = Sheets("Mitarbeiter").Cells(1 + Zähler, 2)
'Zeichenfolge mit ersten Buchstaben des Vornamens und Nachname
Zeichenfolge = MA.Offset(0, 1).Value & ", " & Left(MA.Value, 1) & ". "
ActiveCell.Value = Zeichenfolge
' Nächste Zelle markieren -----hier wird die Anordnung festgelegt
Range("B8").Offset(Zähler, 0).Select
Next
End Sub

~end~

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

Betreff
Datum
Anwender
Anzeige
AW: Schleifenfehler
10.12.2003 12:48:56
Otto Ecker
Hallo Peter,

ändere:

if Ma.offset(0,1).value ="" then
exit for
else
zeichenfolge=ma.offset......usw...
end if

Gruß Otto
AW: Schleifenfehler
10.12.2003 12:50:22
FCH
Hi,

dein Rows.Count hat immer den Wert 65536. Versuche es so:


Sub MitarbEintragen()
Dim Perszahl As Long
Dim Zähler As Long
Dim Zeichenfolge As String
'Mitarbeiter zählen & eintragen
Perszahl = Sheets("Mitarbeiter").[B2].End(xlDown).Row
'Mitarbeiterdaten eintragen
For Zähler = 2 To Perszahl
Zeichenfolge = Sheets("Mitarbeiter").Cells(Zähler, 2).Value
Zeichenfolge = Zeichenfolge & ", " & Left(Sheets("Mitarbeiter").Cells(Zähler, 3).Value, 1) & "."
Cells(Zähler + 6, 2) = Zeichenfolge
Next
End Sub


Ich habe mir erlaubt, deine Selects zu entfernen.

Gruß
FCH
Anzeige
AW: Ich bedank mich bei Euch o.T.
10.12.2003 17:00:50
Peter
Danke

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige