Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1636to1640
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
Inhaltsverzeichnis

Labels in einer UF löschen

Labels in einer UF löschen
26.07.2018 17:37:51
Herbert
Hallo,
mit dem nachfolgenden Code erstelle ich zur Laufzeit in einer MultiPage einer UF eine Liste mit Labels. Da ich in der UF, auf einer anderen Seite, u. a. auch vorh. Artikel löschen kann, möchte ich die aufgelisteten Labels auf dieser Seite, während der Laufzeit, wieder löschen können, um sie anschließend wieder neu aufzubauen, da dann ja ein oder mehrere Artikel weniger aufgelistet werden müssen. Wenn ich jetzt einen Artikel lösche, bleibt mir auf dieser Seite der letzte Artikel immer doppelt aufgelistet, weil ich die vorige Auflistung nicht entfernt habe. Wie kann ich die vorherige Auflistung löschen?
Vielen Dank im Voraus
Servus
With Tab2_ArtikelListe
For iCount = 1 To 25
Set sTb = MultiPage1.Pages(3).Controls.Add("Forms.Label.1", "lbl_Artikel" & iCount)
Controls("lbl_Artikel" & iCount).Caption = .Range("A" & iCount + 1).Value
Controls("lbl_Artikel" & iCount).ZOrder (0)
Next iCount
End With

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Labels in einer UF löschen
26.07.2018 17:58:29
Mullit
Hallo,
im Prinzip so:
Option Explicit

Public Sub test()
   Dim lngIndex As Long
   For lngIndex = 0 To MultiPage1.Pages(3).Controls.Count - 1
       If TypeOf Controls(lngIndex) Is MSForms.Label Then _
          Call Controls.Remove(lngIndex)
   Next
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

Gruß, Mullit
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:03:55
Mullit
Hallo,
ach ja übrigens, hast nur die Labels auf der Page, dann einfach so... ;-)
Option Explicit

Public Sub test()
   Call Controls.Clear
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

Gruß, Mullit
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:05:51
Mullit
Hallo nochmal,
uups so einfach doch nich, muß die Hitze sein...;-)
Option Explicit

Public Sub test()
   Call MultiPage1.Pages(3).Controls.Clear
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

Gruß, Mullit
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:10:48
Herbert
Hallo,
vielen Dank für Deine Hilfe. Doch wenn ich mich nicht irre, ruft man mit "Call..." eine andere Routine auf. Doch hast Du mir keine weitere Routine mitgegeben. Jedenfalls steigt er bei mir bei beiden Varianten aus. Oder habe ich da was übersehen?
Servus
AW: Labels in einer UF löschen
26.07.2018 18:15:49
Mullit
Hallo,
nein mit der Call-Anw. ruft man generell Methoden auf, auch Application-eigene...
Da sind ja nur Bsp.-Schnipsel, pack die Inhalte der Test-Subs z.B. in einen CommandButton auf Deiner zweiten Page...
Gruß, Mullit
AW: Labels in einer UF löschen
26.07.2018 18:23:44
Herbert
Hallo,
ich will das er alle vorh. Labels beim erneuten Aufruf der Page3 löscht und anschließend die aktuellen wieder einfügt. Das Einfügen ist klar. nur das löschen nicht.
Fehlermeldung: Laufzeitfehler 444: Steuerelemente können nicht gelöscht werden. Diese Methode kann in diesem Zusammenhang nicht verwendet werden.
Servus
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:37:24
Mullit
Hallo,
Fehlermeldung: Laufzeitfehler 444: Steuerelemente können nicht gelöscht werden.
Diese Methode kann in diesem Zusammenhang nicht verwendet werden.

ah ja dann hast Du da auch Labels drin, die nicht zu Laufzeit erstellt wurden, dann muß Du anders proggen:
Option Explicit

Public Sub test()
   Const LAB_NAME As String = "lbl_Artikel"
   Dim lngIndex As Long
   With MultiPage1.Pages(3)
        For lngIndex = 0 To .Controls.Count - 1
            If TypeOf .Controls(lngIndex) Is MSForms.Label Then _
               If Left$(String:=.Controls(lngIndex).Name, Length:=Len(LAB_NAME)) = LAB_NAME Then _
                        Call .Controls.Remove(lngIndex)
        Next
   End With
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

....Das ganze dann ins Aktivierungs-Event der Page....
Gruß, Mullit
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:19:22
Mullit
Hallo,
Jedenfalls steigt er bei mir bei beiden Varianten aus.

...wenn's immmer noch nicht klappt, was genau heißt das ? ... Fehlermeldung, Fehlernr., Fehlerbeschr. wären da hilfreich...
Gruß, Mullit
AW: Labels in einer UF löschen
26.07.2018 18:25:03
Mullit
Hallo,
im ersten Bsp. hat ich einen Fehler drin, war falsch referenziert, argh...
Option Explicit

Public Sub test()
   Dim lngIndex As Long
   With MultiPage1.Pages(3)
        For lngIndex = 0 To .Controls.Count - 1
            If TypeOf .Controls(lngIndex) Is MSForms.Label Then _
               Call .Controls.Remove(lngIndex)
        Next
   End With
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

Gruß, Mullit
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:27:25
Herbert
Sorry, aber auch hier kommt wieder die gleiche Fehlermeldung.
AW: Labels in einer UF löschen
26.07.2018 18:38:42
Mullit
Hallo,
yup, siehe oben in den Threads...
Gruß, Mullit
AW: Labels in einer UF löschen
26.07.2018 18:43:22
Nepumuk
Hallo Herbert,
ein Beispiel:
Option Explicit

Private Sub UserForm_Click()
    Dim iCount As Long
    For iCount = 1 To 25
        Call MultiPage1.Pages(3).Controls.Remove("lbl_Artikel" & iCount)
    Next
End Sub

Private Sub UserForm_Initialize()
    Dim iCount As Long
    Dim sTb As MSForms.Label
    For iCount = 1 To 25
        Set sTb = MultiPage1.Pages(3).Controls.Add("Forms.Label.1", "lbl_Artikel" & iCount)
        With sTb
            .Caption = Tab2_ArtikelListe.Range("A" & iCount + 1).Value
            Call .ZOrder(0)
        End With
    Next
End Sub

Gruß
Nepumuk
Anzeige
AW: Labels in einer UF löschen
26.07.2018 18:51:11
Mullit
Hallo Nepumuk,
top!, argh ja klar man kann ja auch mit dem Namen 'removen', ich glaub bei der Hitze mach ich heut nix mehr....:-(
Gruß, Mullit
AW: Labels in einer UF löschen
26.07.2018 18:54:14
Herbert
Hallo Nepumuk,
vielen Dank für Deine LÖSUNG!!! Ich habe die "...click"-Variante probiert und sie hat auf Anhieb geklappt! Die Zweite habe ich dann gar nicht mehr getestet. Aber ich denke, sie hätte auch gefunzt! Nochmals vielen Dank!
@Mullit: Trotzdem vielen Dank und nun haben wir beide etwas gelernt! Ist doch prima!
Servus
AW: Labels in einer UF löschen
26.07.2018 19:09:07
Mullit
Hallo Herbert,
@Mullit: Trotzdem vielen Dank und nun haben wir beide etwas gelernt! Ist doch prima!

stimmt, da hast Du sicher recht, aber die Tragik ist, eigentlich wußt ich das schon vorher, aber das glaubt einem hinterher eh niemand.., wie das immer so ist mit eigentlich...;-)
Aber Nepumuks Lösungen sind sowieso immer auf den Punkt...top..!
Gruß, Mullit
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige