AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

OLE: Word - Tabulator setzen

Ein Thema von Praktikant · begonnen am 10. Dez 2003 · letzter Beitrag vom 10. Dez 2003
Antwort Antwort
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#1

OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 12:34
Ich schreibe aus meinem Prog heraus Einstellungen in ein Word Doku.

Ich nehme nicht die OLE-Server (Word.Application und Word.Document), da diese einfach nicht laufen wollten (habe es mit diesem Bsp. probiert, sondern eben den Weg über CreateOleObject usw.


Das läufgt jetzt auch wunderbar (dank einem schönen Bsp.-Prog ), doch ich bekomme keinen Tabulatorsprung hin.

Habe schon das Makro-Tool mitlaufen lassen, das sieht folgendermassen aus:
Selection.TypeText Text:="hallo"
Selection.TypeParagraph
Selection.TypeText Text:=vbTab & "dies ist ein test"
Selection.TypeParagraph
Selection.Delete Unit:=wdCharacter, Count:=1
Selection.TypeParagraph
Selection.TypeParagraph
Selection.ParagraphFormat.TabStops.Add Position:=CentimetersToPoints(4), _
Alignment:=wdAlignTabLeft, Leader:=wdTabLeaderSpaces
Selection.TypeText Text:=vbTab & "tab gesetzt!"


Umgesetzt in Delphi:
Delphi-Quellcode:
var Word : OLEVariant;
begin
  Word.Selection.TypeText(Text := EditSteuer_Bits.Text);
  Word.Selection.TypeParagraph;
  Word.Selection.TypeParagraph;
  Word.Selection.TypeText(Text := 'hallo' & vbTab); //vbTab wird nicht akzeptiert
  ...
end;
Also, wie bekomme ich einen Tabulatorsprung hin? Und wie setze ich meinen Tabulator auf einen Wert (Lineal auf x(4)cm von links, wie oben im Makro?

thx
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#2

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 13:35
Hallo,

probiers mal mitWord.Selection.TypeText('hallo'#13#10);
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 13:41
nö, die operatoren funktionieren da nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#4

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 13:49
Das sollte natürlich so ausschauen:Word.Selection.TypeText('hallo'#9); Welche Operatoren meinst du?
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 13:56
mit operatoren meinte ich dein #xx
[edit] müll geschrieben, geht doch...[/edit]
Aber es sollte doch ein OLE-Befehl geben welcher funktioniert --> vbTab
Sprich #13 = Word.Selection.TypeParagraph;
#9 = Word.Selection.(???)

Tjo, jetzt geht's noch darum die Einstellung auf einen bestimmten Sprungwert zu schicken.

Update:
Hab's hinbekommen:
Word.Selection.ParagraphFormat.tabstops.add(Position:=50, Alignment:=wdAlignTabLeft, Leader:=wdTabLeaderSpaces); Allerdings ist die Position in einem untypischen Maß, sind keine mm oder cm, die 50 entsprechen 1,76cm
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#6

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 14:24
vbTab ist nichts anderes als eine Konstante, die in VBA Global zur Verfügung steht.

lt deinem Beispiel müsste der Tabulatorsprung mit Tabstops.Add funktionieren.

Diese Funktion ist folgendermassen deklariert: Function Add(Position As Single, [Alignment], [Leader] Und da gibts noch die Funktion CentimetersToPoints, die in der ActiveX Library als Global deklariert ist.

Ich vermute mal, dass es so funktioniert:Word.Selection.ParagraphFormat.TabStops.Add(Word.CentimetersToPoints(4))
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Praktikant

Registriert seit: 24. Sep 2003
131 Beiträge
 
Delphi 5 Enterprise
 
#7

Re: OLE: Word - Tabulator setzen

  Alt 10. Dez 2003, 16:11
erstma danke für die Hilfe.

Tabstops bzw. Tabstop mag er nicht

Das mit der activex hab ich noch nicht probiert, einfach nur activex in uses schreiben und es funzt?

Tjo, und wenn wir schon dabei sind:
Wie kann ich anstatt der Standardbezeichnung "Dokument1" Word beim Aufruf dazu bringen einen alternativen Dokunamen zu verwenden?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz