Verwenden von FormatConditions

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

Verwenden von FormatConditions

Beitragvon lape » 25. Juli 2008 09:31

Ich habe folgenden VBA Code:
Code: Alles auswählen
Range("D2:E5").Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="40"
Selection.FormatConditions(1).Font.ColorIndex = 2
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlLessEqual, Formula1:="40"
Selection.FormatConditions(2).Font.ColorIndex = 4
Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:="0"
Selection.FormatConditions(3).Font.ColorIndex = 3

ich bekomme es nun leider nicht hin, diesen in Dynamics um zu setzen.
Kann mir vielleicht jm auf die SprĂĽnge helfen?
lape
Microsoft Partner
Microsoft Partner
 
Beiträge: 37
Registriert: 3. Juli 2008 16:13
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Re: Verwenden von FormatConditions

Beitragvon navsyst » 15. März 2010 18:47

Hallo Lape,

hast du mittlerweile schon Lösung für dieses Problem gefunden?

Gruss
navsyst
 
Beiträge: 325
Registriert: 14. Oktober 2005 11:55
Wohnort: Stuttgart
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Version: 2.6-2009R2

Re: Verwenden von FormatConditions

Beitragvon lape » 17. Juni 2010 11:36

Ja und zwar funktioniert es wie folgt

Code: Alles auswählen
//Bedingte Formatierungen
Sheet.Range('A4'+':B3').FormatConditions.Delete;
Sheet.Range('A4'+':B3').FormatConditions.Add(1, 3, 0);
Sheet.Range('A4'+':B3').FormatConditions.Item(1).Font.ColorIndex := 2;
lape
Microsoft Partner
Microsoft Partner
 
Beiträge: 37
Registriert: 3. Juli 2008 16:13
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV

Re: Verwenden von FormatConditions

Beitragvon navsyst » 17. Juni 2010 13:42

lape hat geschrieben:Ja und zwar funktioniert es wie folgt

Code: Alles auswählen
//Bedingte Formatierungen
Sheet.Range('A4'+':B3').FormatConditions.Delete;
Sheet.Range('A4'+':B3').FormatConditions.Add(1, 3, 0);
Sheet.Range('A4'+':B3').FormatConditions.Item(1).Font.ColorIndex := 2;


Hallo lape,

Danke fĂĽr die Antwort.
Kannst du mir sagen was das Add(1, 3, 0) zu bedeuten?

Weisst du zufällig ob es ein Tips oder Dokumentation gibt wie man die Excel-Makrobefehle in C/AL richtig entschlüsseln kann?
navsyst
 
Beiträge: 325
Registriert: 14. Oktober 2005 11:55
Wohnort: Stuttgart
Bezug zu Microsoft Dynamics: End-Anwender
Microsoft Dynamics Version: 2.6-2009R2

HOW TO EXCEL REPORT :)

Beitragvon lape » 24. Juni 2010 14:54

(xlCellValue, Operator, Formula1)
sind die drei argumente

Sheet.Range('A1').FormatConditions.Add(1, 3, 0);
MĂĽsste =WENN(A1<0) entspechen. Genau weiĂź ich es aber nciht mehr ist ja fast n Jahr her jetzt :)

Eine gute Quelle hab ich selber nicht gefunden.
Ich habe es so gemacht, dass ich in Excel unter Extras die Makroaufzeichnung gestartet habe, dann das ausgefĂĽhrt, was ich durchfĂĽhren wollte und mir dann das Makro angesehen und probiert. Die Argumente sind in C/Side eigentlich immer nummerisch und rest muss zur Not dann Google her halten. Vielleicht hilft dir das ja weiter.

Vielleicht helfen dir meine Notizen ein wenig
Code: Alles auswählen
Excel Report erstellen

1.Variablen

Name   DataType   Subtype   
Excel   Automation   'Microsoft Excel 11.0 Object Library'.Application   
Book   Automation   'Microsoft Excel 11.0 Object Library'.Workbook   
Range   Automation   'Microsoft Excel 11.0 Object Library'.Range   
Sheet   Automation   'Microsoft Excel 11.0 Object Library'.Worksheet   
Bedingt   Automation   'Microsoft Excel 11.0 Object Library'.FormatConditions   

2.Erstellen des Dokuments

//Excel starten
CREATE(Excel);
//Excel sichbar machen
Excel.Visible(TRUE);
//Excel Formular erstellen
Book := Excel.Workbooks.Add(-4167);

//Arbeitsblatt hinzufĂĽgen
Sheet:=Book.Sheets.Add;
//Namen fĂĽr Arbeitsblatt definieren
Sheet.Name := „Ich bin das Arbeitsblatt“;

//Werte in Zellen schreiben
Sheet.Range('A1').Value := Hallo;
//Schriftgröße setzen
Sheet.Range('A1').Font.Size := '1';
//Schriftfarbe farbig hinterlegen
Sheet.Range('A1').Font.ColorIndex := 2;
//Hintergrundfarbe
Sheet.Range('A1').Interior.ColorIndex := 19;
//Schriftart
Sheet.Range('A1').Font.Name := 'Tahoma';

//Zellen verbinden
Sheet.Range('A1:C1').Merge;
//90° drehen
Sheet.Range('A1:C1').Orientation := 90;
//Verticale ausrichtung (1=links, 2=mitte, 3=rechts)
Sheet.Range('A1:C1').VerticalAlignment:= 2;
//automatische Breite und Höhe
Sheet.Range('A4:B5').Columns.AutoFit;
//Breite
Sheet.Range('A1’).ColumnWidth := 1.5;
//Bedingte Formatierung
 //Bedingte Formatierung löschen
 Sheet.Range('A1').FormatConditions.Delete;
 //wert > 40
 Sheet.Range('A1').FormatConditions.Add(1, 5, 40);
 //Formatierung Bedingung 1 (Schrift Farbe rot)
 Sheet.Range('A1').FormatConditions.Item(1).Font.ColorIndex := 3;
 //wert < 0
 Sheet.Range('A1').FormatConditions.Add(1, 3, 0);
 //Formatierung Bbedingung 2 (Schrift Farbe grĂĽn)
 Sheet.Range('A1').FormatConditions.Item(2).Font.ColorIndex := 2;

//Seite einrichten
//Abstand links/rechts
Sheet:=Excel.ActiveSheet;
Sheet.PageSetup.LeftMargin := 0.3;
Sheet.PageSetup.RightMargin := 0.3;
//?
Sheet.PageSetup.PrintTitleRows := '$1:$3';
//Druckbereich
Sheet.PageSetup.PrintArea := '$A$1:$F$50';
// Kopfzeile (Mitte)
Sheet.PageSetup.CenterHeader := '&20&B'; (könnte Tab Name sein – nicht mehr sicher)
Sheet.PageSetup.CenterHeader := 'created from: ' +USERID + ' ' + FORMAT(TODAY);
//FuĂźzeile (Mitte)
Sheet.PageSetup.CenterFooter := '&N';
//FuĂźzeile (rechts) [hier Seitenzahl]
Sheet.PageSetup.RightFooter := 'Seite &S';
//?
Sheet.PageSetup.PrintGridlines := TRUE;
//Querformat
Sheet.PageSetup.Orientation := 2;
//zoom 100%
Sheet.PageSetup.Zoom := 100;

Unbenannt.JPG
Farben und Linien aller Art


Stand 24.06.2010 lape
lape
Microsoft Partner
Microsoft Partner
 
Beiträge: 37
Registriert: 3. Juli 2008 16:13
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV


ZurĂĽck zu Microsoft Office

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast