Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Die Suche hat 7635 Ergebnisse ergeben.
Seite 78 von 509 Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7 ... 75, 76, 77, 78, 79, 80, 81 ... 503, 504, 505, 506, 507, 508, 509  Weiter
Index
Autor Nachricht
  Thema: Manuell geänderte Formatvorlage finden 
Lisa

Antworten: 9
Aufrufe: 1842

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 14. Mai 2009, 17:23   Titel: AW: Manuell geänderte Formatvorlage finden Version: Office 2003
Hallo Maiflower,

habe mir die Datei angesehen. Die beiden Stellen, die Du anders formatierst hast, sind allerdings nicht mit einer abweichenden Zeichenformatvorlage formatiert, sondern "hart" abweichend. Das dürfte vermutlich auch der Normalfall sein, den Du antriffst.
Der (ungeübte) User markiert ein Wort und ändert über Menü Format - Zeichen die Scriftart, Schriftgröße, Fett usw. Oder er nimmt dazu die Buttons in der Symbolleiste Format, das ist das Gleiche.
Die abweichenden Zeichenformatvorlagen (die übrigens im Namen kein "+" haben ;)) entstehen nur, wenn der User ein Wort markiert und dem Wort dann eine Absatzformatvorlage zuweist. Das kommt zwar auch vor, aber vermutlich nicht so häufig. Die findet man mit dieser Schleife:
Sub AlleFormatvorlagen()

Dim sty As Word.Style

For Each sty In ActiveDocument.Styles
If sty.Type = wdStyleTypeCharacter Then
If sty.BuiltIn = False Then
Debug.Print st ...
  Thema: unterstrichene Wörter als Textmarke aufnehmen, aber 
Lisa

Antworten: 7
Aufrufe: 1178

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 14. Mai 2009, 14:57   Titel: AW: unterstrichene Wörter als Textmarke aufnehmen, aber Version: Office 2k (2000)
Hallo Peter,

folgende Sachen sind mir jetzt nicht klar:
Im Ausgangspost hast Du geschrieben, dass das Makro gut funktioniert, bis auf die Unterstreichung, die erhalten bleibt. An der Prozedur habe ich doch beim letzten Vorschlag gar nichts geändert, nur die Unterstreichung danach herausgenommen. Entweder sind die Ausgangsbedingungen nicht die gleichen oder die Prozedur hat vorher doch nicht gut funktioniert. (Wie schon angedeutet, ich würde es anders machen!)
Also bitte nochmal genau sagen: Hat das Ausgangsmakro zuverlässig funktioniert? Auch bei der Konstellation, die Du jetzt hast, mit dem Fließtext.
Was ist mit dem ganzen Satz? Soll der ganze Satz in die Textmarke? Hat das vorher funktioniert und jetzt nicht mehr??
Wenn Du sowieso festlegst, dass die ersten 10 Stellen den Textmarkennamen bilden, müssen die nicht extra unterstrichen werden.
Wie sieht denn jetzt der wirkliche Text aus? Ist das Fließtext oder steht er in einer Tabelle? Oder kann man möglicherweise durch die ...
  Thema: unterstrichene Wörter als Textmarke aufnehmen, aber 
Lisa

Antworten: 7
Aufrufe: 1178

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 14. Mai 2009, 14:15   Titel: AW: unterstrichene Wörter als Textmarke aufnehmen, aber Version: Office 2k (2000)
Hallo Peter,

ja, da hast Du Recht. Ich hatte gar nicht beachtet, dass Du das mit Find machst. Wann immer Du auf Find verzichten kannst, tu es!!! Wenn Du eine Schleife durch alle Tabellenzeilen machst, ist das zuverlässiger und leichter zu handhaben.

Das hier tut es aber jetzt:
Sub TextmarkenfelderSetzen()

Dim i As Long

ActiveDocument.Range(0, 0).Select
i = 0
With Selection.Find
.ClearFormatting
.Format = True
.Font.Underline = wdUnderlineSingle
.Text = ""
.Execute
While .Found = True
i = i + 1
Selection.Bookmarks.Add Name:="TM" & i
.Execute
Wend
End With

For i = 1 To ActiveDocument.Bookmarks.Count
If Left(ActiveDocument.Bookmarks(i).Name, 2) = "TM" Then
ActiveDocument.Bookmarks(i).Range.Font.Underline = wdUnderlineSingle
End If
...
  Thema: unterstrichene Wörter als Textmarke aufnehmen, aber 
Lisa

Antworten: 7
Aufrufe: 1178

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 14. Mai 2009, 12:52   Titel: AW: unterstrichene Wörter als Textmarke aufnehmen, aber Version: Office 2k (2000)
Hallo Peter,

dabei wird natürlich die Unterstreichung aufgehoben, klar:
Sub TextmarkenfelderSetzen()

Dim bmk As Word.Bookmark
Dim i As Long

ActiveDocument.Range(0, 0).Select
i = 0
With Selection.Find
.ClearFormatting
.Format = True
.Font.Underline = wdUnderlineSingle
.Text = ""
.Execute
While .Found = True
i = i + 1
Set bmk = Selection.Bookmarks.Add(Name:="TM" & i)
bmk.Range.Font.Underline = wdUnderlineNone
.Execute
Wend
End With

End Sub
  Thema: Mehrere Tabellen parallel Foramtieren 
Lisa

Antworten: 5
Aufrufe: 498

BeitragForum: Word Gestaltungselemente   Verfasst am: 14. Mai 2009, 11:23   Titel: AW: Mehrere Tabellen parallel Foramtieren Version: Office 97
Hallo caol1,

alle Tabellen kannst Du dann so formatieren:
Sub AlleTabellenbehandeln()

Dim tbl As Word.Table

For Each tbl In ActiveDocument.Tables
tbl.Columns(1).Width = CentimetersToPoints(1.5)
Next tbl

End Sub
1.5 ist hier die Angabe für 1,5 Zentimeter. Du hast zwar geschrieben 1,5 mm, das war ja etwas sehr schmal. Falls Du tatsächlich 1,5 Millimeter meinst, müsste es heißen: CentimetersToPoints(0.15)
Die Dezimalstelle ist als Punkt angegeben.
  Thema: Makro aktivieren 
Lisa

Antworten: 8
Aufrufe: 65286

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 21:11   Titel: AW: Makro aktivieren
Hallo Gast,

gelben Office-Knopf, unten rechts Button: Word-Optionen. Dort findest Du den Reiter Sicherheit.

Gruß
Lisa
  Thema: Mehrere Tabellen parallel Foramtieren 
Lisa

Antworten: 5
Aufrufe: 498

BeitragForum: Word Gestaltungselemente   Verfasst am: 13. Mai 2009, 18:29   Titel: AW: Mehrere Tabellen parallel Foramtieren Version: Office 97
Hallo Caol1,

nein, zum Lachen ist das doch nicht, mir eher unklar. Versuch mal zu beschreiben, was Du in der Tabelle erreichen willst. Wie soll die Breite welcher Spalten geändert werden?

Ansonsten Makro aufzeichnen: Menü Extras - Makro - Aufzeichnen. Dann öffnet sich zuerst der Dialog "Makro aufzeichnen", wo man den Namen für das Makro festlegen kann und wo es gespeichert werden soll. Kommst Du soweit? Danach klickst Du auf OK. Dann läuft die Aufzeichnung. Ah, jetzt sehe ich, was Du meinst, bei mir sieht der Cursor aus wie eine Musikkassette.
Alles, was aufgezeichnet werden soll, muss in Word mit den Tasten gemacht werden (die Maushandlungen werden nicht aufgezeichnet).

Aber okay, beschreib einfach, was das Makro genau machen soll. Welche Spalten oder Zeilen sollen wie formatiert werden?

Gruß
Lisa
  Thema: Verknüpfungen per VBA löschen 
Lisa

Antworten: 16
Aufrufe: 3984

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 16:51   Titel: AW: Verknüpfungen per VBA löschen Version: Office 2003
Hallo Quo,

ich hatte nicht damit gerechnet, dass in der Kopfzeile Textfelder stehen, in denen die Feldfunktionen untergebracht sind. Probier mal das hier:
Sub AlleFelderLoesen()

Dim sty As Word.Range
Dim shp As Word.Shape
Dim rngshp As Word.Range

For Each sty In ActiveDocument.StoryRanges
If sty.StoryType = wdPrimaryHeaderStory Then
For Each shp In ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Shapes
If shp.TextFrame.HasText Then
Set rngshp = shp.TextFrame.TextRange
rngshp.Fields.Unlink
End If
Next shp
End If
sty.Fields.Unlink
' Call FeldTyppruefen(sty)
Do While Not (sty.NextStoryRange Is Nothing)
Set sty = sty.NextStoryRange
sty.Fields.Unlink
' Call FeldTyppruefen(sty)
Loop
Next sty

End Sub
  Thema: Wenn in erste Zeile, dann MsgBox öffnen - MS Word 
Lisa

Antworten: 6
Aufrufe: 1555

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 13:18   Titel: AW: Wenn in erste Zeile, dann MsgBox öffnen - MS Word Version: Office 2007
Hallo Sam,

kann man nicht pauschal sagen, es kommt halt drauf an, wieviel Code jedesmal ausgeführt werden muss, wie lang das Dokument ist und wie komplex. Sicher hängt es auch von der Ausstattung des einzelnen Rechners ab.

Wenn es funktioniert, freut mich das.

Gruß
Lisa
  Thema: Verknüpfungen per VBA löschen 
Lisa

Antworten: 16
Aufrufe: 3984

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 13:15   Titel: AW: Verknüpfungen per VBA löschen Version: Office 2003
Hallo Quo,

ja, gibt es, etwa so:
Sub AlleFelderLoesen()

Dim sty As Word.Range

For Each sty In ActiveDocument.StoryRanges
sty.Fields.Unlink
Do While Not (sty.NextStoryRange Is Nothing)
Set sty = sty.NextStoryRange
sty.Fields.Unlink
Loop
Next sty

End Sub
ABER VORSICHT: Da werden wirklich alle Felder aufgelöst, auch Seitenzahlenfelder, Datumsfelder usw.

Wenn Du eine Auswahl treffen willst, kommst Du nicht drum herum, innerhalb der Schleife noch durch die Felder zu schleifen und deren Typ zu überprüfen, etwa so:
Sub AlleFelderLoesen()

Dim sty As Word.Range

For Each sty In ActiveDocument.StoryRanges
Call FeldTyppruefen(sty)
Do While Not (sty.NextStoryRange Is Nothing)
Set sty = sty.NextStoryRange
Call FeldTyppruefen(sty)
Loop
Next sty

End Sub

Sub FeldTyppruefen(ByRef st ...
  Thema: Wenn in erste Zeile, dann MsgBox öffnen - MS Word 
Lisa

Antworten: 6
Aufrufe: 1555

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 12:07   Titel: AW: Wenn in erste Zeile, dann MsgBox öffnen - MS Word Version: Office 2007
Hallo Sam,

ganz genau das ist der schwierige Teil der Frage, weswegen ich auf die erste Frage nicht geantwortet hatte ;)

Du brauchst dazu eine Ereignis, das ständig die Selection abfragt. Ansonsten müsstest Du es irgendwo anders "anbinden", an das Speichern, Drucken oder Schließen des Dokuments o.ä.
In Word 2007 könnte das Application-Ereignis WindowSelectionChange dafür geeignet sein. Dabei ist allerdings zu bedenken, dass das bei jedem Mausklick und bei jeder Markierung im Dokument ausgelöst wird. Du kannst in dieses Ereignis zwar die obige Abfrage integrieren, bedenke aber die Auswirkungen auf die Performance von Word!

Du kannst das nur ausprobieren, ob das die Performance untragbar macht. Es hängt sicherlich auch von der Größe und Komplexität des Dokuments ab und von dem, was bei Deinem Code noch hinzukommt. Bitte probier aus und berichte hier.

Ist in der VBA-Hilfe unter WindowSelectionChange-Ereignis auch beschrieben.

Gruß
Lisa
  Thema: Wenn in erste Zeile, dann MsgBox öffnen - MS Word 
Lisa

Antworten: 6
Aufrufe: 1555

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 11:38   Titel: AW: Wenn in erste Zeile, dann MsgBox öffnen - MS Word Version: Office 2007
Hallo Sam,

mach es mal so:
Sub ErsteTabelle()

Dim rng As Word.Range

If Selection.Information(wdWithInTable) Then
Set rng = ActiveDocument.Range(Start:=ActiveDocument.Range.Start, _
End:=Selection.Range.End)
If rng.Tables.Count < 2 Then
MsgBox "Ordentlich eintragen"
Exit Sub
End If
Set rng = Nothing
End If

End Sub
  Thema: Formatierung "Text durchstreichen" mittels Hotkey  
Lisa

Antworten: 2
Aufrufe: 13895

BeitragForum: Word Formate   Verfasst am: 13. Mai 2009, 11:29   Titel: AW: Formatierung "Text durchstreichen" mittels Hot Version: Office XP (2002)
Hallo Thomas,

ja, die Ursache ist, dass der Makrorecorder viel mehr aufzeichnet, als Du wirklich brauchst. Du brauchst eigentlich auch nicht zwei Makros, sondern nur eins. Das macht genau das, was auch die Word-Funktion macht. Wenn ein Wort markiert ist, wird es bei Betätigung des Makros durchgestrichen. Wenn es markiert ist und vorher durchgestrichen war, wird die Durchstreichung aufgehoben. Wenn kein Wort markiert ist, schaltet das Makro Durchstreichen ein (oder aus), also je nachdem, was vorher eingeschaltet war.

Und jetzt kommt das Allerbeste, das eine Makro, das Du nur brauchst, ist noch viel kürzer:
Sub Durchstreichen()

Selection.Font.StrikeThrough = Not Selection.Font.StrikeThrough

End Sub
Mehr wird nicht benötigt. Das legst Du jetzt auf einen Shortcut, und fertig.

Und jetzt kommt es noch besser: Du brauchst gar kein Makro!! Du kannst einfach den Word-Befehl mit einem ShortCut versehen:
Öffne dazu den Dialog Extras - Anpassen - Button: Tastatur. ...
  Thema: FormFields-Index abfragen und ändern 
Lisa

Antworten: 2
Aufrufe: 2065

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 11:18   Titel: AW: FormFields-Index abfragen und ändern Version: Office 2003
Hallo TODuke,

die Formularfelder haben keinen Index. Sie können nur über ihren Namen identifiziert werden. Den Namen kann man allerdings ändern. Das beeinflusst jedoch nicht die Reihenfolge im Dokument (die wird beim erstmaligen Einfügen in der Reihenfolge des Einfügens !! festgelegt).

So kann man die Namen aller Formularfelder ermitteln:
Sub AlleFormularfelderAuslesen()

Dim ff As Word.FormField

For Each ff In ActiveDocument.FormFields
Debug.Print ff.name & vbTab & ff.Type
Next ff

End Sub
  Thema: Manuell geänderte Formatvorlage finden 
Lisa

Antworten: 9
Aufrufe: 1842

BeitragForum: Word VBA Programmierung (Makros)   Verfasst am: 13. Mai 2009, 10:16   Titel: AW: Manuell geänderte Formatvorlage finden Version: Office 2003
Hallo Maiflower,

bei BuiltIn = true hast Du Recht, d.h. es ist eine in Word integrierte Formatvorlage, die Word schon mitbringt.
InUse heißt nur, dass die Formatvorlage im Dokument vorhanden ist, weil sie irgendwann einmal im Dokument angelegt oder benutzt worden ist. Selbst wenn sie keinerlei Text mehr zugewiesen ist, gibt InUse immer noch True zurück. Der Rückgabewert ist insofern völlig unbrauchbar.

Um zu prüfen, ob eine Formatvorlage wirklich im Dokument benutzt wird, also ob sie einem Textstück zugewiesen ist, kann man nur mit ActiveDocument.Content.Find danach suchen, ob man einen Text mit der Formatvorlage findet.

Gut, dass Du die Datei hochgeladen hast. Ich sehe sie mir dann an, nach meinem Schreibtisch zu urteilen, wird das sicher erst heute abend werden. Ich melde mich dann nochmal.

Gruß
Lisa
 
Seite 78 von 509 Gehe zu Seite Zurück  1, 2, 3, 4, 5, 6, 7 ... 75, 76, 77, 78, 79, 80, 81 ... 503, 504, 505, 506, 507, 508, 509  Weiter
Gehe zu:  
Alle Zeiten sind
GMT + 1 Stunde

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: HTML Forum