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

Namen hochzählen

Namen hochzählen
01.05.2003 11:21:29
Rolf St.
Hallo Excel Experten!
Wie muß ich folgendes Makro umändern, damit es auch Namen (Buchstaben) hochzählt. (Zur Zeit zählt es nur bei Zahlen hoch)

Sub aufzählen()

Dim intCounter As Variant, LetzteZelle As Variant, Anfang As Variant

LetzteZelle = Cells(Cells.Rows.Count, 1).End(xlUp).Row

Anfang = 2 'Alternativ Anfang = ActiveCell.Row

For intCounter = Anfang To LetzteZelle

If IsNumeric(Cells(intCounter - 1, 1)) Then

If Cells(intCounter, 1) <> Cells(intCounter - 1, 1) Then
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1) + 1
Else
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1)
End If
Else
Cells(intCounter, 1).Offset(0, 1) = 1
End If
Next intCounter

Application.ScreenUpdating = True
Range("A1").Select

End Sub

Vielen Dank für eure Hilfe!

Tschüß
Rolf



7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Namen hochzählen
01.05.2003 11:35:21
ChrisL

Hallo Rolf

Versuchs mal so (nicht getestet)...

Sub aufzählen()

Dim intCounter As Variant, LetzteZelle As Variant, Anfang As Variant

LetzteZelle = Cells(Cells.Rows.Count, 1).End(xlUp).Row

Anfang = 2 'Alternativ Anfang = ActiveCell.Row

For intCounter = Anfang To LetzteZelle

If Cells(intCounter, 1) <> Cells(intCounter - 1, 1) Then
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1) + 1
Else
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1)
End If
Next intCounter

Application.ScreenUpdating = True
Range("A1").Select
End Sub


n.b. die Zeile hier...
Application.ScreenUpdating = True

bringts übrigens nur, wenn du am Anfang des Makros...
Application.ScreenUpdating = False
machst. Ansonsten weglassen.

Gruss
Chris


Anzeige
Re: Namen hochzählen
01.05.2003 12:02:14
Rolf St.

Hallo Chris!
Vielen Dank für Deine Hilfe!

Leider Kommt Laufzeitfehler 13
Typen unverträglich
In diesem Codebereich:
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1) + 1

Sub aufzählen1()

Dim intCounter As Variant, LetzteZelle As Variant, Anfang As Variant
Application.ScreenUpdating = False

LetzteZelle = Cells(Cells.Rows.Count, 1).End(xlUp).Row

Anfang = 2 'Alternativ Anfang = ActiveCell.Row

For intCounter = Anfang To LetzteZelle

If Cells(intCounter, 1) <> Cells(intCounter - 1, 1) Then
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1) + 1
Else
Cells(intCounter, 1).Offset(0, 1) = _
Cells(intCounter, 1).Offset(-1, 1)
End If
Next intCounter

Application.ScreenUpdating = True
Range("A1").Select
End Sub

Vielleicht kannst du ja noch mal schauen?

Tschüß
Rolf

Anzeige
Re: Namen hochzählen
01.05.2003 12:24:23
andre

hallo rolf,
wenn in zeile 1 deine überschrift steht und du fängst in zeile2 an, dann willst du zur überschrift 1 dazuzählen.
noch ein tip: variant als typ brauchst du nicht definieren, da reicht dim intcounter, letztezelle ...
schau aber mal nach den typen und dem benötigten speicherplatz, da findest du den richtige typ.
gruss andre

Re: Namen hochzählen
01.05.2003 12:27:53
ChrisL

Hallo Rolf

Ich hoffe, ich habe das bestehende Makro richtig interpretiert. Versuchs mal wie folgt:

Option Explicit

Sub aufzählen()
Dim intCounter As Long, LetzteZelle As Long, Anfang As Long, Nummer As Long
Application.ScreenUpdating = False
Nummer = 0

LetzteZelle = Range("A65536").End(xlUp).Row
Anfang = 2

For intCounter = Anfang To LetzteZelle
If IsEmpty(Cells(intCounter, 1)) = False Then
Nummer = Nummer + 1
Cells(intCounter, 2) = Nummer
Else
Cells(intCounter, 2) = ""
End If
Next intCounter

Application.ScreenUpdating = True
End Sub


Gruss
Chris

Anzeige
Re: Namen hochzählen
01.05.2003 13:34:07
Rolf St.

Re: Namen hochzählen
01.05.2003 13:36:39
ChrisL

https://www.herber.de/forum/messages/251399.html

Dim intCounter As Long, LetzteZelle As Long, Anfang As Long, Nummer As Long
Application.ScreenUpdating = False
Nummer = 0

LetzteZelle = Range("A65536").End(xlUp).Row
Anfang = 2

For intCounter = Anfang To LetzteZelle
If IsEmpty(Cells(intCounter, 1)) = False Then
If Cells(intCounter, 1) <> Cells(intCounter - 1, 1) Then Nummer = Nummer + 1
Cells(intCounter, 2) = Nummer
Else
Cells(intCounter, 2) = ""
End If
Next intCounter

Application.ScreenUpdating = True

Re: Namen hochzählen
01.05.2003 13:48:55
Rolf St.

Hallo Chris!
Läuft super!

Danke!

Tschüß
Rolf

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige