- Delphiartiklar, tips, forum, länksamling - 

      

START | DELPHI | LÄNKARGÄSTBOK 




 Forum

Grundkurs
  »Introduktion
  »Snabbguide
  »Komponenter
  »Händelser
  »Strängar
  »Räkna med Delphi   »Egna typer
  »Selektion
  »Iteration
  »Menyer
  »Funktioner
  »Arraystrukturer

Tips & Tricks
  »Nya tips
  »Blandat
  »Databaser
  »Filer
  »Forms
  »Grafik
  »Internet
  »Komponenter
  »Matematik
  »Multimedia
  »Objekt/ActiveX
  »Skrivare
  »Strängar
  »System
  »Mest lästa tips

Artiklar
  »Delphi och ADO
  »Bygga en DLL
  »Skapa en enkel rapport
  »Hantera registret
  »Enheter, units
  »Klassen TCanvas
  »Använd LookUp Controls

 Nya tips
 Lägg till tips
 Delphilänkar
 Gästbok

 

Skriva värden till ett bokmärke i Microsoft Word Kategori: Objekt/ActiveX
Inlagt: 2004-03-16
Läst: 1782
Inlagt av: Staffan Berg
Beskrivning
Detta exempel visar en metod på hur du kan skriva flera värden till ett och samma bokmärke i Microsoft Word. 
Kod
{ ... } 
FMSWord := CreateComObject(CLASS_WordApplication) as WordApplication; 
{ ... } 
 
 
procedure TLTWordDocHandler.PopulateListBookMark(const ABookMarkName: 
stringconst AValue: Widestring ); 
var 
 i: integer; 
 LBMName: OleVariant; 
 MoveUnit: OleVariant; 
 NumRows: OleVariant; 
WorkingList: TStringList; 
begin 
 LBMName := ABookMarkName; 
 FMSWord.ActiveDocument.Bookmarks.Item(LBMName).Select; 
 if FMSWord.Selection.Tables.Count = 0 then 
  raise Exception.Create(Format(sBookmarkNotInTable, [ABookmarkName])); 
 MoveUnit := wdCell; 
 NumRows := 1; 
 WorkingList := TStringList.Create; 
 try 
  WorkingList.CommaText := AValue; 
  for i := 0 to WorkingList.Count - 1 do 
  begin 
   FMSWord.Selection.TypeText(WorkingList.Strings[i]); 
   if not(i = (WorkingList.Count - 1)) then 
    FMSWord.Selection.MoveRight(MoveUnit, EmptyParam, EmptyParam); {97 & 2000 compliant} 
  end; 
 finally 
  FreeAndNil(WorkingList); 
 end; 
end; 

 
 
© Copyright 2005 - Staffan Berg
- Alla rättigheter förbehålles -