Visual Basic Code in Navision: Parameter Autofitbehavior

Bild Speziell fĂĽr Probleme der Office-Integration in die Dynamics Produkte

Visual Basic Code in Navision: Parameter Autofitbehavior

Beitragvon T0M » 17. Januar 2008 16:01

Hallo will einen Report nach Word exportieren. Dort will ich ihn in einer Tabelle anzeigen. Von Navision aus eine Tabelle aufzubauen ist kein Problem. Jedoch beim FĂĽllen dieser, steh ich vor einem Problem:

Ich möchte diesen VB-Code in Navision ausführen:

Code: Alles auswählen
Selection.MoveRight Unit:=wdCell


Wenn ich das so

Code: Alles auswählen
WdApp.Selection.MoveRight(wdcell);


in Navison ausfĂĽhren will kommt eine Fehlermeldung beim kompilieren.
Das Problem ist dieses "wdcell" - wie muss ich das schreiben, damit das Navision annimmt???
Zuletzt geändert von T0M am 17. Januar 2008 17:48, insgesamt 1-mal geändert.
T0M
Microsoft Partner
Microsoft Partner
 
Beiträge: 16
Registriert: 17. Juli 2007 15:38

Beitragvon MrBurns » 17. Januar 2008 16:17

Das Problem ist dieses "wdcell" - wie muss ich das schreiben, damit das Navision annimmt???


wdCell wird vermutlich eine separat zu instatiierende Automation-Variable sein und muss deklariert werden.
To a man with a hammer, everything looks like a nail.
--- Mark Twain
Benutzeravatar
MrBurns
Microsoft Partner
Microsoft Partner
 
Beiträge: 450
Registriert: 5. Oktober 2007 08:49
Wohnort: Die schönste Stadt der Welt
Arbeitsort: Hamburg
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2-2018, BC

Re: Visual Basic Code in Navision: Selection.MoveRight

Beitragvon Marc Teuber » 17. Januar 2008 16:24

Hi Tim!

T0M hat geschrieben:wie muss ich das schreiben, damit das Navision annimmt???


Wie MrBurns schon geschrieben hat, muss wdcell als Variable vom Typ Automation angelegt werden (siehe Abbildung).

GruĂź, Marc
Dateianhänge
2008-01-17_152322.gif
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! DafĂĽr ist dieses Forum da.
Benutzeravatar
Marc Teuber
Microsoft Partner
Microsoft Partner
 
Beiträge: 1064
Registriert: 2. Oktober 2005 13:36
Wohnort: Greven
Arbeitsort: MĂĽnster, Dortmund
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Beitragvon feri » 17. Januar 2008 16:33

-- edit --
oh, hat sich bereits erledigt :oops:

gruesse
feri
feri
 
Beiträge: 261
Registriert: 16. März 2006 16:59
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Beitragvon T0M » 17. Januar 2008 17:47

Danke fĂĽr die schnelle Hilfe. Das klappt nun soweit.
Nun hab ich noch ein kleines Problem:
Wie kann ich eine Tabelle von Navison erstellen mit der Eigenschaft "Inhalt automatisch anpassen"

Ich hab mit einem Makro eine Tabelle erstellt und danach die Eigenschaft bestimmt. Das Makro spuckt mir den VBCode aus:

Code: Alles auswählen
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=1, NumColumns:= _
        5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
        wdAutoFitFixed
    With Selection.Tables(1)
        If .Style <> "Tabellengitternetz" Then
            .Style = "Tabellengitternetz"
        End If
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = False
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = False
        .ApplyStyleRowBands = True
        .ApplyStyleColumnBands = False
    End With
    Selection.Tables(1).AutoFitBehavior (wdAutoFitContent)


Also mein Problem ist der Tabelle diesen Parameter "wdAutoFitContent" mitzugeben.

Mein bisheriger CAL Code zur Erstellung der Tabelle ohne diese Eigenschaft:

Code: Alles auswählen
WdRange := WdApp.Selection.Range;
WdApp.ActiveDocument.Tables.Add(WdRange,PAR_INT_Row,PAR_INT_Column);
WdApp.Selection.Style := 'Tabellengitternetz';
T0M
Microsoft Partner
Microsoft Partner
 
Beiträge: 16
Registriert: 17. Juli 2007 15:38

Beitragvon Kowa » 17. Januar 2008 18:43

[Beitrag aus dem Forum Dynamics NAV 5.xx nach Software-Integration verschoben.]

GruĂź, Kai
MSDynamics.de-Team
GruĂź, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! DafĂĽr ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Beitragvon MrBurns » 17. Januar 2008 19:24

Parameter "wdAutoFitContent" mitzugeben.


Der "Parameter" ist eine Konstante.
In der MSDN http://msdn2.microsoft.com/de-de/librar ... able(VS.80).aspx steht folgendes:
AutoFitBehavior
Legt die AutoAnpassen-Regeln dafür fest, wie Word die Größe einer Tabelle bestimmt. Kann eine der folgenden WdAutoFitBehavior-Konstanten sein: wdAutoFitContent, wdAutoFitFixed oder wdAutoFitWindow. Wenn DefaultTableBehaviorwdWord8TableBehavior ist, wird dieses Argument ignoriert.

und
Visual Basic Code kopieren
Dim wdAutoFitBehavior1 As WdAutoFitBehavior = WdAutoFitBehavior.wdAutoFitContent


In Selection.Tables(1).AutoFitBehavior (wdAutoFitContent) muss ein weiterer Automation eingegeben werden.
To a man with a hammer, everything looks like a nail.
--- Mark Twain
Benutzeravatar
MrBurns
Microsoft Partner
Microsoft Partner
 
Beiträge: 450
Registriert: 5. Oktober 2007 08:49
Wohnort: Die schönste Stadt der Welt
Arbeitsort: Hamburg
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 2-2018, BC

Beitragvon feri » 18. Januar 2008 10:44

hi,

hier ist eine Liste saemtlicher Konstanten fuer Word.

Wird eine Konstante in einer Funktion erwartet, musst du in Navision den numerischen Wert davon verwenden, da Navision die Konstanten nicht kennt.

Gruesse
feri
feri
 
Beiträge: 261
Registriert: 16. März 2006 16:59
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Beitragvon T0M » 18. Januar 2008 11:22

Danke das hilft mir schonmal weiter.
Gut zu wissen das mit dem numerischen Wert ich hatte nämlich schon die Meldung: "Eine Typenkonvertierung kann ... Integer := Text"

Kann mir jemand das mit der Zuweisung der Automation Variablen noch genauer erklären.
Habe momentan folgenden Code:

Code: Alles auswählen
WdRange := WdApp.Selection.Range;
WdApp.ActiveDocument.Tables.Add(WdRange,PAR_INT_Row,PAR_INT_Column);
WdApp.Selection.Style := 'Tabellengitternetz';
WdTable := Wdapp.Selection  <-- !!!
WdTable.AutoFitBehavior := 1;


Bei der markierten Zeile gibts noch Probleme.


EDIT:

Habe es nun durch rumprobieren hinbekommen mit folgendem Code:
Code: Alles auswählen
WdRange := WdApp.Selection.Range;
WdTable := WdApp.ActiveDocument.Tables.Add(WdRange,PAR_INT_Row,PAR_INT_Column);
WdTable.AutoFitBehavior := 1;
WdApp.Selection.Style := 'Tabellengitternetz';


Danke fĂĽr eure Hilfe :-D
T0M
Microsoft Partner
Microsoft Partner
 
Beiträge: 16
Registriert: 17. Juli 2007 15:38


ZurĂĽck zu Microsoft Office

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast