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

Z?hlen

AW: Z?hlen
24.07.2004 13:42:27
Nepumuk
Hallo ?,
normalerweise werden Beitr?ge, die so v?llig ohne "Hallo" und "Bitte" auskommen nur gegen Bezahlung beantwortet. Ich hoffe f?r dich, dass du dir das auch noch angew?hnst.
Folgender Code pr?ft die Spalte A:


Private Sub Worksheet_Change(ByVal Target As Range)
    Dim intindex As Integer, myrange As Range
    If Target.Column = 1 And Target.Count = 1 Then
        If Left$(Target, 4) = "5220" And Len(Target) = 6 Then
            Application.EnableEvents = False
            Target = UCase$(Target)
            Application.EnableEvents = True
            For intindex = 1 To 9999
                Set myrange = Columns(1).Find(What:=Target & " " & Format(intindex, "00000"), LookAt:=xlWhole)
                If myrange Is Nothing Then
                    Application.EnableEvents = False
                    Target = Target & " " & Format(intindex, "00000")
                    Application.EnableEvents = True
                    Exit For
                End If
            Next
            If intindex = 10000 Then MsgBox "Alle Indizes für " & Target & " sind vergeben.", 16, "Warnung"
        End If
    End If
End Sub


Gru?
Nepumuk

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Z?hlen
Capri-Fan
Hallo,
ich entschuldige mich vielmals f?r meine Unh?flichkeit. Ich hatte diesen Text vorgeschrieben und ihn dann r?berkopiert. Dar?berhinaus habe ich die Kopfzeile vergessen.
Tut mir wirklich leid!!
Vielen Dank trotzdem, das mir jemand geantwortet hat. Ich habe nur ein Problem.
Was mache ich jetzt mit dem Code? Wo mu? ich ihn eingeben?
Mit ehrlich gemeinten Gr??en
C-F
AW: Z?hlen
25.07.2004 06:41:14
Nepumuk
Hallo CF,
der Code muss in das Klassenmodul der Tabelle, in welche die Nummern eingegeben werden. Dazu einfach einen Rechtsklick auf den Tabellenreiter - "Code anzeigen" und das Makro in das sich ?ffnende Editorfenster kopieren. Dieses Fenster schlie?en, fertig.
Gru?
Nepumuk
Anzeige
AW: Z?hlen
capri-fan
Hallo Nepumuk,
danke f?r den Tip. Ich habe es jetzt ausprobiert aber es haut noch nicht so ganz hin.
In meiner Tabelle (Spalte E) stehen jetzt schon ca. 1500 Nummern mit 5220 usw. wenn ich jetzt eine neue Zeile einf?ge und entsprechend dazu eine neue Nummer 5220 . ..... vergebe, kriege ich entweder eine die genau dar?ber steht oder es wird nur das angezeigt was ich eingebe. Ich habe den Code ge?ndert (X1whole auf X5whole)
Mache ich noch etwas falsch?
MfG
C-F

AW: Z?hlen
capri-fan
Hallo Nepumuk,
danke f?r den Tip. Ich habe es jetzt ausprobiert aber es haut noch nicht so ganz hin.
In meiner Tabelle (Spalte E) stehen jetzt schon ca. 1500 Nummern mit 5220 usw. wenn ich jetzt eine neue Zeile einf?ge und entsprechend dazu eine neue Nummer 5220 . ..... vergebe, kriege ich entweder eine die genau dar?ber steht oder es wird nur das angezeigt was ich eingebe. Ich habe den Code ge?ndert (X1whole auf X5whole)
Mache ich noch etwas falsch?
MfG
C-F

Anzeige
AW: Z?hlen
26.07.2004 16:13:06
Nepumuk
Hallo CF,
wenn du in deine ersten Anfrage geschrieben h?ttest, das es sich um Spalte E handelt, dann h?tte ich das Programm schon von Anfang an richtig schreiben k?nnen. Der korrigierte Code:


Private Sub Worksheet_Change(ByVal Target As Range)
    Dim intindex As Integer, myrange As Range
    If Target.Column = 5 And Target.Count = 1 Then
        If Left$(Target, 4) = "5220" And Len(Target) = 6 Then
            Application.EnableEvents = False
            Target = UCase$(Target)
            Application.EnableEvents = True
            For intindex = 1 To 9999
                Set myrange = Columns(5).Find(What:=Target & " " & Format(intindex, "00000"), LookAt:=xlWhole)
                If myrange Is Nothing Then
                    Application.EnableEvents = False
                    Target = Target & " " & Format(intindex, "00000")
                    Application.EnableEvents = True
                    Exit For
                End If
            Next
            If intindex = 10000 Then MsgBox "Alle Indizes für " & Target & " sind vergeben.", 16, "Warnung"
        End If
    End If
End Sub


Es heist ?brigens nicht x1Whole sondern xlWhole die unterscheidung von eins und dem kleinen l ist leider bei dieser Schriftart nicht m?glich. Desswegen ist es beser, du kopierst den Code, da sich sonst leicht Schreibfehler einschleichen.
Gru?
Nepumuk
Anzeige
AW: Z?hlen
capri-fan
Hallo Nepumuk,
du hast recht ich h?tte wohl genauere Angaben machen sollen.
Auf jeden Fall VIELEN DANK!!
Es klappt ausgezeichnet, echt Klasse dieses Forum und wie schnell einige Spezialisten die Probleme anderer l?sen k?nnen.
Beim n?chsten Mal mache ich hoffentlich nicht wieder solche Fehler.
Freundliche Gr??e aus dem hohen Norden
capri-fan
AW: Z?hlen
24.07.2004 13:42:27
Nepumuk
Hallo ?,
normalerweise werden Beitr?ge, die so v?llig ohne "Hallo" und "Bitte" auskommen nur gegen Bezahlung beantwortet. Ich hoffe f?r dich, dass du dir das auch noch angew?hnst.
Folgender Code pr?ft die Spalte A:


Private Sub Worksheet_Change(ByVal Target As Range)
    Dim intindex As Integer, myrange As Range
    If Target.Column = 1 And Target.Count = 1 Then
        If Left$(Target, 4) = "5220" And Len(Target) = 6 Then
            Application.EnableEvents = False
            Target = UCase$(Target)
            Application.EnableEvents = True
            For intindex = 1 To 9999
                Set myrange = Columns(1).Find(What:=Target & " " & Format(intindex, "00000"), LookAt:=xlWhole)
                If myrange Is Nothing Then
                    Application.EnableEvents = False
                    Target = Target & " " & Format(intindex, "00000")
                    Application.EnableEvents = True
                    Exit For
                End If
            Next
            If intindex = 10000 Then MsgBox "Alle Indizes für " & Target & " sind vergeben.", 16, "Warnung"
        End If
    End If
End Sub


Gru?
Nepumuk
Anzeige
AW: Z?hlen
Capri-Fan
Hallo,
ich entschuldige mich vielmals f?r meine Unh?flichkeit. Ich hatte diesen Text vorgeschrieben und ihn dann r?berkopiert. Dar?berhinaus habe ich die Kopfzeile vergessen.
Tut mir wirklich leid!!
Vielen Dank trotzdem, das mir jemand geantwortet hat. Ich habe nur ein Problem.
Was mache ich jetzt mit dem Code? Wo mu? ich ihn eingeben?
Mit ehrlich gemeinten Gr??en
C-F
AW: Z?hlen
25.07.2004 06:41:14
Nepumuk
Hallo CF,
der Code muss in das Klassenmodul der Tabelle, in welche die Nummern eingegeben werden. Dazu einfach einen Rechtsklick auf den Tabellenreiter - "Code anzeigen" und das Makro in das sich ?ffnende Editorfenster kopieren. Dieses Fenster schlie?en, fertig.
Gru?
Nepumuk
Anzeige
AW: Z?hlen
capri-fan
Hallo Nepumuk,
danke f?r den Tip. Ich habe es jetzt ausprobiert aber es haut noch nicht so ganz hin.
In meiner Tabelle (Spalte E) stehen jetzt schon ca. 1500 Nummern mit 5220 usw. wenn ich jetzt eine neue Zeile einf?ge und entsprechend dazu eine neue Nummer 5220 . ..... vergebe, kriege ich entweder eine die genau dar?ber steht oder es wird nur das angezeigt was ich eingebe. Ich habe den Code ge?ndert (X1whole auf X5whole)
Mache ich noch etwas falsch?
MfG
C-F

AW: Z?hlen
capri-fan
Hallo Nepumuk,
danke f?r den Tip. Ich habe es jetzt ausprobiert aber es haut noch nicht so ganz hin.
In meiner Tabelle (Spalte E) stehen jetzt schon ca. 1500 Nummern mit 5220 usw. wenn ich jetzt eine neue Zeile einf?ge und entsprechend dazu eine neue Nummer 5220 . ..... vergebe, kriege ich entweder eine die genau dar?ber steht oder es wird nur das angezeigt was ich eingebe. Ich habe den Code ge?ndert (X1whole auf X5whole)
Mache ich noch etwas falsch?
MfG
C-F

Anzeige
AW: Z?hlen
26.07.2004 16:13:06
Nepumuk
Hallo CF,
wenn du in deine ersten Anfrage geschrieben h?ttest, das es sich um Spalte E handelt, dann h?tte ich das Programm schon von Anfang an richtig schreiben k?nnen. Der korrigierte Code:


Private Sub Worksheet_Change(ByVal Target As Range)
    Dim intindex As Integer, myrange As Range
    If Target.Column = 5 And Target.Count = 1 Then
        If Left$(Target, 4) = "5220" And Len(Target) = 6 Then
            Application.EnableEvents = False
            Target = UCase$(Target)
            Application.EnableEvents = True
            For intindex = 1 To 9999
                Set myrange = Columns(5).Find(What:=Target & " " & Format(intindex, "00000"), LookAt:=xlWhole)
                If myrange Is Nothing Then
                    Application.EnableEvents = False
                    Target = Target & " " & Format(intindex, "00000")
                    Application.EnableEvents = True
                    Exit For
                End If
            Next
            If intindex = 10000 Then MsgBox "Alle Indizes für " & Target & " sind vergeben.", 16, "Warnung"
        End If
    End If
End Sub


Es heist ?brigens nicht x1Whole sondern xlWhole die unterscheidung von eins und dem kleinen l ist leider bei dieser Schriftart nicht m?glich. Desswegen ist es beser, du kopierst den Code, da sich sonst leicht Schreibfehler einschleichen.
Gru?
Nepumuk
Anzeige
AW: Z?hlen
capri-fan
Hallo Nepumuk,
du hast recht ich h?tte wohl genauere Angaben machen sollen.
Auf jeden Fall VIELEN DANK!!
Es klappt ausgezeichnet, echt Klasse dieses Forum und wie schnell einige Spezialisten die Probleme anderer l?sen k?nnen.
Beim n?chsten Mal mache ich hoffentlich nicht wieder solche Fehler.
Freundliche Gr??e aus dem hohen Norden
capri-fan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige