PDA

Vollständige Version anzeigen : Neues Textfeld anlegen


Mamon
12.02.2003, 10:21
Hi,

ich habe eine kleine frage auf einer Folie und möchte je nachdem ob sie richtig beantwortet ist ein Textfeld anzeigen lassen.

1. Variante: Ich erzeuge ein Textfeld neu

habe keine Ahnung...irgendwas mit ActiveWindow.Selection.SlideRange.Shapes.AddLabel

2. Varinate: Ich mache eine Textfeld sichtbar

ähm, dazu muss es erstmal unsichtbar sein, nur wie?
und wie spreche ich es dann an?


ich wäre sehr dankbar, wenn ihr mir die Lösung für beide Varianten nennen könntet

mfg
Mamon

peppi
12.02.2003, 10:32
Hallo,

muß es eigentlich unbedingt mit vba sein? - Du kannst doch das Textfeld über die benutzerdefinierten Aktionen auf Mausklick (oder was auch immer) einblenden lassen.

Mamon
12.02.2003, 10:46
Ja, "leider" muss es mit vba sein.

Denn ich brauche auch eine if-abfrage !!

Weisst du denn wie die Varianten mit vba zu lösen sind ?

peppi
12.02.2003, 10:52
Hallo,

leider kann ich es jetzt nicht mehr testen, da ich "auf dem Sprung bin". Aber Du kannst doch den Makrorekorder laufen lassen, wenn Du diese Aktion einstellst (Menü Extras, Makros, Aufzeichnen). Oder aber in der vba-Hilfe mal nach "benutzerdefinierten Aktionen" sehen.

Heute abend werde ich mal versuchen, mich schlau zu machen, falls bis dahin niemand anders geantwortet hat, oder Du selbst weitergekommen bist. Gib nochmal "Laut".

Schönen Tag.

Mamon
12.02.2003, 12:37
leider komme ich nicht weiter, deshalb wäre es nett, wenn du mir helfen könntest !

peppi
12.02.2003, 15:42
Hallo,

habe gerade mal in PP97 den Makrorekorder mitlaufen lassen:

1. Textfeld erstellen:

Sub TextfeldErstellen()
'
' Makro aufgezeichnet am 12.02.2003 von peppi
'
ActiveWindow.Selection.SlideRange.Shapes.AddLabel(msoTextOrientationHorizontal, 126, 126, 474, 36).Select
ActiveWindow.Selection.ShapeRange.TextFrame.TextRange.Characters(Start:=1, Length:=0).Select
With ActiveWindow.Selection.TextRange
.Text = "Textfeld einfügen"
With .Font
.Name = "Times New Roman"
.Size = 24
.Bold = msoFalse
.Italic = msoFalse
.Underline = msoFalse
.Shadow = msoFalse
.Emboss = msoFalse
.BaselineOffset = 0
.AutoRotateNumbers = msoFalse
.Color.SchemeColor = ppForeground
End With
End With
End Sub

2. Textfeld-Animation (von unten):

Sub Animation()
'
' Makro aufgezeichnet am 12.02.2003 von peppi
'
With ActiveWindow.Selection.ShapeRange.AnimationSettings
.Animate = msoTrue
.TextLevelEffect = ppAnimateByAllLevels
.AnimateBackground = msoTrue
End With
ActiveWindow.Selection.ShapeRange.AnimationSettings.EntryEffect = ppEffectFlyFromBottom
End Sub

Du kannst ein Textfeld nur durch die benutzerdefinierte Animation sichtbar machen. Normalerweise würde ich eine neue Folie nehmen, auf der dann das Textfeld vorhanden ist.

Mehr "Schnickschnack" gibt es erst ab der Version XP (2002).

Mamon
12.02.2003, 22:44
danke