Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel/VBA 3d rotation

Forumthread: Excel/VBA 3d rotation

Excel/VBA 3d rotation
09.04.2018 14:54:08
Ildar
Hallo meine Freunde der feuchtfröhlichen VBA Unterhaltung,
ich bin neu in diesem Forum und dies ist mein erster Beitrag, also habt Nachsicht mit mir.
Ich möchte gerne ein 3D Modell eines Zugbolzens, welches zuvor modelliert wurde und als .3mf Datei gespeichert wurde, mithilfe einer Schleife um die y-Achse rotieren lassen.
Allerdings scheitert es bereits hierbei (siehe Anhang).
Ich hoffe ihr könnt mir ein bisschen dabei helfen.
Sub ThreeDRotationTest()
ActiveSheet.Shapes("3D-Modell 14").ThreeD.RotationX = 30
End Sub

Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 15:09:57
EtoPHG
Hallo,
1. Sehe ich keinen Anhang, ausser einem sehr suspekten VBA Code!
2. Ein Shape ist in Excel meines Wissens immer 2D.
3. .3mf Dateien werden in CAD Applikationen verarbeitet, aber nicht in Excel
4. Mit x,y,z Diagrammen können gewisse Rotationseffekte (aufwändig) nachgebaut werden
Gruess Hansuel
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 15:33:20
Ildar
Hallo Hansuel,
danke für die schnelle Rückmeldung.
https://www.herber.de/bbs/user/120951.xlsm
ich hab leider vergessen, den Link einzufügen, wie gesagt bin neu :)
Aber was genau verstehst du unter "verarbeitet"? In der Mappe hab ich diese .3mf Datei einfügen können und kann diese auch bewegen. Das Ziel ist in dem Fall lediglich, diese nicht mehr von Hand zu machen.
Eventuell hast du eine Idee, wie ich das realisieren kann.
Mit freundlichen Grüßen Ildar
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 15:43:32
EtoPHG
Hallo
Unter "verarbeitet" meine ich erstellen, modifizieren oder allgemein ändern.
Wenn du dein Bildchen (2D Flat!) um 270° in der Y-Achse rotierst, siehst du genau NIX und nicht etwa den Kopf oder den Boden des Zugbolzens. Das meine ich mit deiner IMHO falscher Erwartungshaltung!
Excel ist eine Tabellen-Kalkulation und hat nur eingeschränkte Möglichkeiten mit Bildern umzugehen.
Gruess Hansueli
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 15:57:11
Ildar
Hallo,
wie würdest du denn an diese Aufgabenstellung herangehen, bzw. dieses Problem lösen?
Mit freundlichen Grüßen Ildar
AW: Excel/VBA 3d rotation
09.04.2018 16:02:06
EtoPHG
Hallo,
Was ist den die genaue Aufgabenstellung? Ein 3mf-Bild rotieren? Dann mit dem entsprechenden CAD-System, aber sicher nicht mit XL.
Gruess Hansueli
AW: Excel/VBA 3d rotation
09.04.2018 16:08:13
Ildar
Hallo,
mein Ziel ist es, eine 3D Darstellung eines Zugbolzens rotieren zu lassen. Zumindest soll es so wirken
Mit freundlichen Grüßen Ildar
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 16:01:07
Dieter(Drummer)
Hallo Ildar,
evtl. kannst du damit etwas anfangen. Diverse Formen in 3D Rotation, ohne VBA.
Diese Datei ist nicht von mir. https://www.herber.de/bbs/user/120953.xlsx
Gruß, Dieter(Drummer)
AW: Excel/VBA 3d rotation
09.04.2018 16:14:45
Ildar
Hallo Dieter,
danke für deine Rückmeldung. Ich werde mich da mal durcharbeiten
Mit freundlichen Grüßen Ildar
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 16:49:13
Frank
Hallo,
Voraussetzung:
Excel 2016 in der Version in der 3D-Modelle eingefügt werden können.
Dann z.B. für eine Rotation um 45 Grad, um die Z-Achse:
ActiveSheet.Shapes("NameDer3DGrafik").Model3D.RotationZ = 45
FRank Arendt-Theilen
AW: Excel/VBA 3d rotation
09.04.2018 16:49:34
Frank
Hallo,
Voraussetzung:
Excel 2016 in der Version in der 3D-Modelle eingefügt werden können.
Dann z.B. für eine Rotation um 45 Grad, um die Z-Achse:
ActiveSheet.Shapes("NameDer3DGrafik").Model3D.RotationZ = 45
Frank Arendt-Theilen
Anzeige
AW: Excel/VBA 3d rotation
09.04.2018 16:54:00
Ildar
Hallo Frank,
vielen Dank für deine Hilfe, es funktioniert jetzt tatsächlich. Jetzt verbinde ich das mit einem Timer, sodass eine flüssige und fortwährende Drehung zu erkennen ist
Mit freundlichen Grüßen Ildar
;
Anzeige

Infobox / Tutorial

3D Rotation in Excel mit VBA


Schritt-für-Schritt-Anleitung

  1. Voraussetzungen:

    • Du benötigst Excel 2016 oder eine neuere Version, die die Verwendung von 3D-Modellen unterstützt.
  2. 3D-Modell einfügen:

    • Gehe zu Einfügen > 3D-Modelle und wähle dein 3D-Modell aus, das du verwenden möchtest.
  3. VBA-Editor öffnen:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  4. Neues Modul erstellen:

    • Klicke im Menü auf Einfügen > Modul.
  5. VBA-Code hinzufügen:

    • Füge den folgenden VBA-Code in das Modul ein, um dein 3D-Modell um die Z-Achse zu rotieren:
      Sub Rotate3DModel()
      ActiveSheet.Shapes("NameDer3DGrafik").Model3D.RotationZ = 45
      End Sub
    • Ersetze "NameDer3DGrafik" mit dem tatsächlichen Namen deines 3D-Modells.
  6. Makro ausführen:

    • Drücke F5, um das Makro auszuführen und die Rotation zu beobachten.

Häufige Fehler und Lösungen

  • Fehler: "Shape ist in Excel immer 2D."

    • Lösung: Stelle sicher, dass du ein echtes 3D-Modell in Excel eingefügt hast. 2D-Formen unterstützen keine 3D-Rotation.
  • Fehler: "Das 3D-Modell wird nicht angezeigt."

    • Lösung: Überprüfe, ob das Modell korrekt eingefügt wurde und sich auf dem Arbeitsblatt befindet.
  • Fehler: "VBA gibt einen Fehler aus."

    • Lösung: Überprüfe die Schreibweise des Modells und stelle sicher, dass du die Rotationsfunktion für das richtige Objekt verwendest.

Alternative Methoden

  • Verwendung von Diagrammen:

    • Du kannst auch 3D-Effekte mit Diagrammen erstellen. Erstelle ein 3D-Diagramm (z.B. ein 3D-Säulendiagramm) und experimentiere mit den Rotationseinstellungen.
  • Animation in PowerPoint:

    • Falls Excel nicht die gewünschte Flexibilität bietet, kannst du das 3D-Modell in PowerPoint importieren und dort eine Animation erstellen.

Praktische Beispiele

  • Um eine kontinuierliche Rotation zu erstellen, kannst du eine Schleife in deinem VBA-Skript verwenden:

    Sub ContinuousRotation()
       Dim angle As Integer
       For angle = 0 To 360 Step 5
           ActiveSheet.Shapes("NameDer3DGrafik").Model3D.RotationZ = angle
           DoEvents
           Application.Wait Now + TimeValue("00:00:01") ' Pause von 1 Sekunde
       Next angle
    End Sub
  • Kopf 3D Modell: Wenn du ein spezifisches 3D-Modell wie ein Kopf-Modell hast, kannst du die gleichen Rotationsmethoden anwenden, um es in einer Präsentation schön zu animieren.


Tipps für Profis

  • Verwende Timer: Kombiniere deine Rotation mit einem Timer, um flüssige Animationen zu erstellen.
  • Experimentiere mit verschiedenen Achsen: Probiere Rotationen um die X- und Y-Achse aus, um unterschiedliche 3D-Effekte zu erzielen.
  • Dokumentation: Halte deine Makros gut dokumentiert, um die Nachvollziehbarkeit zu gewährleisten.

FAQ: Häufige Fragen

1. Kann ich .3mf-Dateien direkt in Excel verwenden? Ja, aber Excel hat eingeschränkte Funktionen im Umgang mit 3D-Modellen. Das Modell sollte als 3D-Objekt in Excel importiert werden.

2. Welche Excel-Version benötige ich für 3D-Modelle? Du benötigst mindestens Excel 2016, um 3D-Modelle in deinen Arbeitsblättern verwenden zu können.

3. Wie kann ich sicherstellen, dass mein 3D-Modell korrekt rotiert? Stelle sicher, dass du die richtige Schreibweise für den Namen des 3D-Modells verwendest und dass das Modell in der entsprechenden Ebene sichtbar ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige