Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Formen per Makro Aus- und Einfügen
#1
Hallo Exel Profis,

ich hab ein Kalender, wo die KW aus eingefügten Formen bestehen.

Mein Vorhaben oder Wunsch ist, diese Formen mit einem Button Ein- und Auszufügen.
Also bin ich per Makroaufzeichnung meine Schritte durchgegangen.
Jedoch kommt beim ausüben des Befehles eine Fehlermeldung auf.

   

Könnt ihr mich bitte aufklären ob mein Vorhaben überhaupt möglich ist oder eine andere Vorgehensweise Vorschlagen?

An dem Kalender bzw. Zellen will und kann ich nicht großartig was verändern, im originalem sind in dem Zellen Werte/Formeln hinterlegt.


.xlsm   Exel Frage 2.xlsm (Größe: 44,73 KB / Downloads: 5)   

Danke / Thanks / Arigatò
juschimitsu
Antworten Top
#2
Hi,

zunächst einmal solltest Du jedem Shape einen eigenen Namen verpassen. Das kannst Du mit folgfendem Makro realisieren:
Dieses Makro musst Du nur 1 x ausführen und kannst es danach wieder löschen.
Code:
Sub Umbenennen()
Dim i As Integer
With ActiveSheet
For i = 1 To .Shapes.Count
   .Shapes(i).Name = "KW" & i
Next
End With

End Sub

Um die Shapes dann ein- bzw. wieder auszublenden kannst Du dieses Makro verwenden:
Code:
Sub ShapesBlenden()
Dim i As Integer
With ActiveSheet
For i = 1 To .Shapes.Count
  .Shapes(i).Visible = Not .Shapes(i).Visible
Next
End With
End Sub

Deinem Button zum Blenden musst Du natürlich das Makro  ShapesBlenden zuweisen. Dein altes Makro musst Du ebenfalls löschen....
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

[-] Folgende(r) 1 Nutzer sagt Danke an Ralf A für diesen Beitrag:
  • juschimitsu
Antworten Top
#3
...sorry... Korrektur!

In beiden Makros musst Du hinter die Zeile For i = 1 To .Shapes.Count  jeweils noch eine -1 anfügen.... ansonsten wird ja Dein Butto (der ja ebenfalls ein Shape ist) auch mit ausgeblendet... ;)
Also so:  For i = 1 To .Shapes.Count - 1
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#4
ach du scheiße, ich werd wahnsinnig, so simple und einfach, dass gibts doch gar nicht.

Danke dir sehr @Ralf A.

Ich muss nachhacken, wie macht ihr das so schnell?
Erstellt ihr solche Codes selber oder gibt es die scho fertig.
Kann man als Unerfahrener dies erlernen?

Ich beneide Euch wirklich sehr darum.   23

(12.06.2024, 13:19)Ralf A schrieb: ...sorry... Korrektur!

In beiden Makros musst Du hinter die Zeile For i = 1 To .Shapes.Count  jeweils noch eine -1 anfügen.... ansonsten wird ja Dein Butto (der ja ebenfalls ein Shape ist) auch mit ausgeblendet... ;)
Also so:  For i = 1 To .Shapes.Count - 1

hab i gemerkt, aber war kein Problem.

Heute bist du mein Held. 19
Antworten Top
#5
...smile... selbst Profis fangen irgendwann mal als Anfänger an. Also, ist kein Hexenwerk. Und ja, kann man lernen...
Und wenn man es kann, dann sind solche Kleinigkeiten scheller per Hand erledigt als nach Fertiglösungen suchen zu müssen... :)
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top
#6
Moin,

noch einfacher wird es, wenn du alle shapes gruppierst, dann musst du nur noch das GruppenShape ein oder ausblenden.
Code:
With Me.Shapes("Group 6")
   .Visible = Not .Visible
End With

Viele Grüße 
derHöpp
[-] Folgende(r) 1 Nutzer sagt Danke an derHoepp für diesen Beitrag:
  • juschimitsu
Antworten Top
#7
(12.06.2024, 13:59)Ralf A Und ja, kann man lernen... schrieb: Und wenn man es kann, dann sind solche Kleinigkeiten scheller per Hand erledigt als nach Fertiglösungen suchen zu müssen... :)

Ich würde es gerne versuchen etwas zu lernen.

Hast mir Hilfreiche online Seiten oder Empfehlungen was aber für Einsteiger wäre?

Extra Kurse oder Schule wäre für meine Verhältnisse jetzt etwas übertrieben.  19
Antworten Top
#8
(12.06.2024, 14:23)derHoepp schrieb: noch einfacher wird es, wenn du alle shapes gruppierst, dann musst du nur noch das GruppenShape ein oder ausblenden.

...stimmt. Allerdings ist das nur dann zu empfehlen, solange man nicht irgendwann auf einzelne Shapes zugreifen muss.

@juschimitsu,

es gibt (nicht nur) auf Youtube jede Menge gute Tutorials. Das Netz ist voll mit wertvollen und vorallem zielgerichteten Wissen. Auch das verfolgen von Forenbeiträgen entsprechender Foren kann helfen.
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste