Hallo zusammen!
Vor langer Zeit habe ich einmal einen Exportagenten für eine Notes-Ansicht hier aus dem Forum bekommen. Das ganze läuft super, aaaaber:
In einigen Spalten tauchen bei meinen Daten Zahlen mit voran gestellten Nullen auf (z.B. 0001, 0018, usw.). Excel erkennt diese Werte als Zahlen und formatiert Sie ins entsprechende Format --> die Nullen sind weg
Wie kann ich das verhindern? Kann ich vielleicht vor der Datenübernahme alle Excel-Zellen auf Textwerte formatieren?
Gruß
drake
-------------------------------------
Sub Click(Source As Button)
Dim Session As New NotesSession
Dim db As NotesDatabase
Dim sourceview As NotesView
Dim sourcedoc As NotesDocument
Dim dataview As NotesView
Dim datadoc As NotesDocument
Dim maxcols As Integer
Dim ws As New Notesuiworkspace
Dim uiview As notesuiview
Dim cols As Integer
Dim rows As Integer
Dim getfield As Variant
Set db = session.CurrentDatabase
Set uiview=ws.currentview
Set dataview = uiview.view
Dim xlApp As Variant
Dim xlsheet As Variant
Set xlApp = CreateObject("Excel.Application")
xlApp.StatusBar = "Import vorbereiten..."
xlApp.Visible = True
xlApp.Workbooks.Add
xlApp.ReferenceStyle = 3
Set xlsheet = xlApp.Workbooks(1).Worksheets(1)
xlsheet.Name = uiview.viewname
xlApp.StatusBar = "Die Überschriften werden erstellt..."
cols=1
Forall X In dataview.Columns
xlsheet.Cells(1,cols).Value =X.title
cols=cols+1
End Forall
xlApp.StatusBar = "Überschriften wurden erstellt...fertig!"
xlApp.StatusBar = "Der Import wird vorbereitet..."
xlApp.StatusBar = "Die Daten werden importiert..."
Set datadoc = dataview.getfirstdocument
cols=1
rows=2
maxcols= dataview.columncount
While Not (datadoc Is Nothing)
For cols=0 To maxcols-1
getfield = Cstr(datadoc.ColumnValues( cols ))
xlsheet.Cells(rows,cols+1).Value = getfield
Next
rows=rows+1
cols=0
Set datadoc = dataview.getnextdocument(datadoc)
Wend
xlApp.StatusBar = "Import beendet! ... Formatieren starten"
xlApp.Rows("1:1").Select
xlApp.Selection.Font.Bold = True
xlApp.Range(xlsheet.Cells(1,1), xlsheet.Cells(1,maxcols)).Select
With xlApp.Selection.Interior
End With
xlApp.StatusBar = "Titel formatiert"
xlApp.Rows("1:1").Select 'Zeile 1 bis 1 ist
xlApp.Selection.Font.Bold = True ' Fett
xlApp.Range(xlsheet.Cells(1,1), xlsheet.Cells(rows,maxcols)).Select
xlApp.Selection.Font.Name = "Arial" 'Schrift Art
xlApp.Selection.Font.Size = 10'Schriftgröße der Excel Tab
xlApp.Selection.Columns.AutoFit
xlApp.Selection.Rows.AutoFit
With xlApp.Worksheets(1)
.PageSetup.Orientation = 2
.PageSetup.centerheader = "Notes Export" ' Tabellen Überschrift
.Pagesetup.RightFooter = "Seite: &S" & Chr$(13) & "Datum: &D"
' Arbeiten Sie mit einer Englischen Excelversion müssen
'sie bei Seite: &P verwenden
.Pagesetup.CenterFooter = ""
End With
xlApp.ReferenceStyle = 1
'Wo möchten Sie den Courser hinsetzen hier A1
xlApp.Range("A1").Select
xlApp.StatusBar = "Fertig!"
End Sub