Hey Leute,
ich exportiere gerade ein paar Daten in ein Excel. Im gleichen Zug führe ich natürlich noch ein paar Formatierungsbefehle aus, so dass dies auch irgendwo ordentlich aussieht.
Soweit kein Problem.
Ich Exportiere jedoch die Daten in verschieden Sheets/Blätter.
Da eine typische Formatierungbefehl bei mir so aussieht:
excelApp.Columns("A").Select
excelApp.Selection.Font.Bold = True '1. SPALTE Fett machen
führt der Befehl dazu, dass die Formiatierung immer im ersten Sheet ausgeführt wird. Ich denk mal, dass kommt daher, dass das "ExcelApp" Objekt wohl immernoch auf das erste Sheet zeigt.
Wie kann ich den Zeiger auf den Sheet2 umlenken!? Oder gibt es eine andere Möglichkeit (andere Befehle) die Formatierung im Sheet 2 auszuführen.
ICh hoffe es kommt klar herüber, was ich hier will.
(im Notfall baue ich mal ein kleines Beispiel Script zusammen, wenn dafür bedarf ist)
Gruß
Habe mal ein Excelmacro aufgezeichet und die Arbeitsblätter gewechselt. Vielleicht hilft es Dir ja ein Stück weiter
excelapp.Sheets("Tabelle2").Select
Markus
Der Ursprunscode von sculer arbeitet auf den Sichtbaren Daten. D.H.: Wenn der User irgendwo hinklickt läuft das Script gegen diese Zellen.
Hier ein Kurzes VBA Beispiel, wie direkt in die Zellen geschrieben wird. Der Fokus der GUI hat keinen Einfluss mehr.
Dim mySheet As Worksheet
Dim idxRow, idxCol As Double
Set mySheet = Sheets(2) ' Sheets("Tabelle2") geht auch
For idxRow = 1 To 10
For idxCol = 1 To 5
mySheet.Cells(idxRow, idxCol) = "'" & CStr(idxRow) & ", " & CStr(idxCol)
Next idxCol
Next idxRow
Damit das Ganze aus LotusScript funktioniert, müssen die VBA Objekte über das OLE Objekt referenziert werden.
...
Set mySheet = excelApp.Sheets(2)
...
Hope that helps