Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Code-Ausführung bei Textveränderung
zurück: Verknüpfungen/Bilder aktualisieren weiter: Sound per Makro einfügen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
indscho
Weiß sich zu helfen, meist jedenfalls ...


Verfasst am:
06. März 2014, 16:00
Rufname:

Code-Ausführung bei Textveränderung - Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Hallo,
ich komme aus der Access-Schiene und muss in PP eine Aufgabe lösen.

Ich möchte immer dann, wenn ein Text in einer beliebigen Shape geändert wird, diesen neuen Text in das AlternativeText-Feld desselben Shapes schreiben, in etwa so:

Code:
ActivePresentation.Slides.Range.Shapes(x).AlternativeText = ActivePresentation.Slides.Range.Shapes(x).TextFrame.TextRange.Text


Mein Problem besteht jetzt darin, den Code im richtigen Moment auszulösen. Bei ACCESS würde sich dort das Ereignis AfterUpdate anbieten. Aber wie bekomme ich das in Powerpoint hin?

Hintergrund meines Vorgehens: Ich speichere im AlternativeText neben dem eigentlichen Text eine zugehörige Übersetzung (z. B. car/auto), die ich im Bedarfsfall aufrufe.

Hat jemand eine Idee?

Mit besten Grüßen

Ingo
Sockesg
Gast


Verfasst am:
07. März 2014, 15:00
Rufname:


AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

HI,

ich bin mir nicht ganz sicher ob dir das hilft, aber ich poste es trotzdem mal.

Eine Möglichkeit wäre evtl. dein Makro/Ereignis auszuführen, sobald du deine Selection auf der Slide änderst. Ich gehe mal davon aus, dass die Shapes im Entwurfsmodus und nicht während der Präsentation geändert werden sollen.

Du kannst dir quasi einen eigenen Eventhandler bauen. So kannst du z.B. ein Klassenmodul "EventClassModule" erstellen und darin folgenden Code packen

Code:
Public WithEvents PPTApp As Application

Private Sub Class_Initialize()
    MsgBox "Initializing"
End Sub

Private Sub PPTApp_WindowSelectionChange(ByVal Sel As Selection)
    'Hier steht der Code zum Ändern des Alternativtextes
End Sub


In einem anderen Modul, kannst du diese Event-Klasse dann initialisieren. Jedes Mal, wenn du dann die Selection auf der Slide änderst wird die Sub "WindowSelectionChange" abgefeuert.

Initialisieren tust du das ganze in etwa so

Code:
Option Explicit

Public NewEvent As New EventClassModule

Public Sub initEventHandler()
    Set NewEvent.PPTApp = Application
End Sub


Hoffe das hilft dir irgendwie weiter. Du kannst die Erstellung des EventHandlers auber auch nochmal hier nachlesen: http://msdn.microsoft.com/de-de/library/office/ff746018.aspx

Viel Erfolg
indscho
Weiß sich zu helfen, meist jedenfalls ...


Verfasst am:
07. März 2014, 16:01
Rufname:

AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Vielen Dank, ich werde es nächste Woche Mal ausprobieren. Der Weg klingt auf jeden Fall schon ganz gut.

Beste Grüße
Ingo
Sockesg
Im Profil kannst Du frei den Rang ändern


Verfasst am:
07. März 2014, 16:12
Rufname:

AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Halt mich auf dem Laufenden ;)
Gast



Verfasst am:
11. März 2014, 11:03
Rufname:

AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Hallo,

es könnte sein, dass es erstmal keine Events in Powerpoint gibt?
Es sein denn Du baust ein Addin, das die entsprechende Eventklasse instanziert, oder so...

pda
Sockesg
Im Profil kannst Du frei den Rang ändern


Verfasst am:
12. März 2014, 12:46
Rufname:

AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Ein Extra AddIn zu konstruieren wäre auch ne Möglichkeit, Ist aber nicht unbedingt nötig, wenn man den oben beschriebenen EventHandler "baut". Leider bietet Powerpoint halt nicht direkt, die für z.B. Excel üblichen EventHandler, wie den ChangeEvent-Handler... Frag mich eh, wieso MS bei Powerpoint einiges weggelassen hat. Der Makro-Rekorder wäre auch ganz cool gewesen.
Gast



Verfasst am:
13. März 2014, 11:08
Rufname:


AW: Code-Ausführung bei Textveränderung - AW: Code-Ausführung bei Textveränderung

Nach oben
       Version: Office 2007

Hallo,

naja, ein Addin ist der einzige Weg die Eventklasse automatisch zu instanzieren.
Nur Addins verfügen über Events wie Auto_Open bzw. Auto_Close...

pda
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Word Serienbriefe