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

Shapes-Namen ändern

Shapes-Namen ändern
17.07.2007 12:18:00
Pity
Hallo
In einer Zeile habe ich ca. 20 mittels Symbolleiste "Formular" eingetragene Shapes mit identischem Text = "Sortieren".
Nun möchte ich alle Shape-Text über VBA auf "Triage" ändern, sofern die Excel-Sprachversion = 1036 ist.
Wie lautet der Code?
Vielen Dank zum Voraus
Freundliche Grüsse
Pity

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Shapes-Namen ändern
17.07.2007 12:39:31
Dan
Hi,
hier ein Beispiel. Die Error-handling muss nicht vorhanden sein, oder koennte auch anders aussehen. Hier wird die undokomentierte funktion VBA.Erl benutzt... Das wesentliche ist jedoch nur dies:
For Each sp In ActiveSheet.Shapes
sp.OLEFormat.Object.Text = "Triage"
Next sp
Option Explicit

Public Sub RenameShapes()
Dim sp As Shape
On Error GoTo Err_handler
For Each sp In ActiveSheet.Shapes
1       sp.OLEFormat.Object.Text = "Triage"
Next sp
Exit Sub
Err_handler:
If (VBA.Erl = 1 And Err.Number = 438) Then
' object doesn't support the property text
Resume Next
Else
MsgBox Err.Description, vbCritical, "Error in RenameShapes"
End If
End Sub


Anzeige
AW: Shapes-Namen ändern
17.07.2007 12:44:38
ransi
HAllo
Versuch mal dies:
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit


Public Sub test()
Dim CB As CheckBox
If Application.LanguageSettings.LanguageID(msoLanguageIDUI) = 1036 Then
    For Each CB In CheckBoxes
        If CB.TopLeftCell.Row = 1 Then 'Alle Checkboxen in Zeile 1
            If CB.Caption = "Sortieren" Then 'Alle Checkboxen mit Caption sortieren
                CB.Caption = "Triage"
            End If
        End If
    Next
End If
End Sub

Wenn deine Steuerelemente CheckBoxen sind.
Wenn nicht kannst du das anpassen.
ransi

Anzeige
AW: Shapes-Namen ändern
17.07.2007 13:02:06
Pity
Hallo Ransi
Auch dir vielen Dank für deinen Vorschlag. Die Auswahl an Varianten und die prompten Anworten sind erfreulich. Deinen Code werde ich gerne bei Bedarf auch bei anderen Elementen einsetzen.
Gruss
Pity

AW: Shapes-Namen ändern
17.07.2007 12:49:00
Pity
Hallo Dan
Läuft super! Danke auch für die prompte Anwort.
Freundliche Grüsse
Pity

AW: Shapes-Namen ändern
17.07.2007 12:42:55
Wolli
Hallo Pity, versuch's mal hiermit.

Sub shapes_umbenennen()
Dim s As Shape
For Each s In ActiveSheet.Shapes
If Application.LanguageSettings.LanguageID(msoLanguageIDInstall) = 1036 Then
s.Select
Selection.Characters.Text = "Triage"
End If
Next s
End Sub


Die Vorgehensweise mit select ist natürlich nicht sehr elegant, aber anscheinend kann man einer Shape keine Caption zuweisen.
Gruß, Wolli

Anzeige
AW: Shapes-Namen ändern
17.07.2007 12:57:50
Pity
Hallo Wolli
Vielen Dank für deinen Vorschlag. Hab den von Dan erhaltenen Code bereits eingebaut.
Gruss
Pity

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige