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

Inhalt aller Comboboxen in einem Sheet löschen

Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 14:10:17
Doro
Hallo Zusammen,
ich möchte gerne den Inhalt aller Comboboxen per Makro löschen. Da ich den Comboboxen Namen gegeben habe, funktioniert das Folgende NICHT:
Dim i As Integer
For i = 1 To Shapes.Count
ActiveSheet.OLEObjects("ComboBox" & i).Clear
On Error Resume Next
i = i + 1
Next i
Im einem Formular funktioniert das Folgende:
Dim cbo As Object
For Each cbo In Me.Controls
If TypeName(cbo) = "Combobox" Then cbo.Clear
Next cbo
Habe versucht, das auf eingebette Comboboxen zu übertragen:
Dim cbo As OLEObject
For Each cbo In ActiveSheet
If TypeName(cbo) = "Combobox" Then cbo.Clear
Next cbo
Aber das funktioniert nicht.
Weiß jemand Rat?
Viele Grüße,
Doro

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 14:26:31
Rudi
Hallo,

Sub tt()
Dim objOle As OLEObject
For Each objOle In ActiveSheet.OLEObjects
If objOle.progID = "Forms.Combobox.1" Then objOle.Clear
Next
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:04:00
Doro
Hallo Rudi,
Danke für Deine schnelle Antwort. Leider funktioniert es nicht - hier ein Screenshot vom Debug-Modus:
https://www.herber.de/bbs/user/51079.xls
Obwohl die If-Bedingung offensichtlich erfüllt ist, springt er direkt aus der If-Schleife raus. Verstehe ich nicht... Weißt Du da weiter?
Liebe Grüße,
Doro

Anzeige
AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:35:32
Rudi
Hallo,
klein aber gemein:

Sub tt()
Dim objOle As OLEObject
For Each objOle In ActiveSheet.OLEObjects
If objOle.progID = "Forms.ComboBox.1" Then objOle.Object.Clear
Next
End Sub


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:45:32
Doro
Hi Rudi!
Ja, jetzt klappt es! Vielen Dank für Deine Hilfe!
Liebe Grüße,
Doro

AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 14:31:00
Beverly
Hi Doro,

Sub ole_elemente()
Dim ooElement As OLEObject
For Each ooElement In ActiveSheet.OLEObjects
If ooElement.progID = "Forms.ComboBox.1" Then ooElement.Object.Value = ""
Next ooElement
End Sub




Anzeige
AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:06:32
Doro
Hallo Karin,
Rudi war 1 Minute schneller als Du :-) Trotzdem vielen Dank!! Aber es funktioniert nicht, vergleiche Antwort an Rudi :-(
Liebe Grüße,
Doro

AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:37:00
Beverly
Hi Doro,
ich sitze nicht alle Augenblicke da und aktualisiere den Bildschirm.
"Forms.ComboBox.1" == Box wird groß geschrieben - siehe meinen Code, der bei mir auch funktionert, andern falls hätte ich ihn nicht gepostet.


AW: Inhalt aller Comboboxen in einem Sheet löschen
27.03.2008 15:44:42
Doro
Hallo Karin,
war Copy Paste aus dem Posting von Rudi - Danke fürs aufmerksame Lesen! Jetzt funktioniert's
Viele Grüße,
Doro
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige