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

Liste in Userform

Liste in Userform
06.02.2004 00:21:30
Michael Rapp
Hallo Excel Freunde,
habe nicht viel Erfahrung mit Userformen und möchte euch um Hilfe bitten. Folgendes habe ich mir vorgenommen:
Auf meinen Blättern verwende ich viele Grafiken. Die schichten sich aufeinander und sind dann nicht mehr leicht erreichbar, wenn sie durch andere Grafiken verdeckt sind. Ich möchte alle Shapes auf dem Aktiven Blatt in eine Auswahlbox einlesen und dann ein einzelnes auswählen, welches ich dann durch einige Befahlsschlatflächen verändere (z.B. in den Vordergrund senden).
Ich verstehe nicht wie ich die Grafiken im Speicher halten kann, um sie nacheinander auszuwählen und dann zu bearbeiten.
Danke
Michael

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

Betreff
Datum
Anwender
Anzeige
AW: Liste in Userform
06.02.2004 00:28:28
K.Rola
Hallo,
Grafik ist ein weitläufiger Begriff, was meinst du damit?
Gruß K.Rola
AW: Liste in Userform
06.02.2004 08:04:51
Thomas Risi
Hallo Michael
Versuch's mal etwa so (UF 'ShowModal=False') ...


Option Explicit
Private Sub ListBox1_Click()
    ActiveSheet.Shapes.Item(ListBox1.Text).Select
End Sub
Private Sub UserForm_Activate()
    
    Dim i&
    
    For i = 1 To ActiveSheet.Shapes.Count
        ListBox1.AddItem ActiveSheet.Shapes(i).Name
    Next i
    
End Sub

     Code eingefügt mit Syntaxhighlighter 2.5

Gruß
Thomas
Risi Thomas Softwareentwicklung
Anzeige
AW: Liste in Userform
06.02.2004 10:41:57
Michael Rapp
Hallo Thomas, Hallo K.Rola,
zunächst zur Frage: Ich verwende in den Tabellen hauptsächlich Grafiken, die mit der Office Zeichenleiste gebastelt wurden. Zusätzlich importierte ich Bilder. Allen "shapes" vergebe ich einen Namen, der mit "FS_" beginnt - also zum Beispiel "FS_Kreis".
Nun zum Code: Thomas, der funktioniert phantastisch!! So kurz und elegant!!
Ich habe beim Testen gemerkt, dass noch einige Fehlerroutinen notwendig sind. Wegen dem 'ShowModal=False'(ohne dem der Code nicht funktioniert) kann man auf ein anderes Tabellenblatt wechseln. Dort wird dann ein Fehler angezeigt, da die Liste nicht mehr zutrifft. Wie kann man das Wechseln des Blattes verhindern, oder noch besser beim Wechsel die Shpaes neu einlesen? Das Gleiche müßte passieren, wenn man das aktivierte Shape löscht.
Habe den Code bisher so angepasst:
Option Explicit

Private Sub CommandButton1_Click()
Selection.Delete
End Sub


Private Sub ListBox1_Click()
ActiveSheet.Shapes.Item(ListBox1.Text).Select
End Sub


Private Sub UserForm_Activate()
Dim i&
For i = 1 To ActiveSheet.Shapes.Count
If Left(ActiveSheet.Shapes(i).Name, 3) = "FS_" Then
ListBox1.AddItem ActiveSheet.Shapes(i).Name
End If
Next i
End Sub


Danke für eure Hilfe
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige