Domino 9 und frühere Versionen > ND6: Entwicklung

Daten in Excel oder 1-2-3 aus LN DB "querryn"

<< < (2/2)

Thomas Schulte:
Wenn du ein Excel File aus einer Ansicht mit Hilfe der ExportToExcel erstellst, dann ist der Ablauf im wesentlichen derselbe wie wenn du in eine bestimmte Zelle in einer definierten Excel Tabelle einen Wert reinschreibst.
In Worten:
Hol dir ein Excel Object über  Createobject such dir den Worksheet, such die Zelle, und schreib deine WErte da rein. Speicher das File ab und fertig ist die Laube.
Wenn du dir den Export2Excel von Eknori anschaust hast du da alle notwendigen Mechanismen dazu. Du braucjst sie dir nur noch anzuschauen und minimal umzubauen.

Thomas

klaussal:
@All,

möchte der Autor es nicht so haben, dass EXCEL oder 1-2-3 sich die Daten LoNo holt ?


Hab zwar 1-2-3 zuhause, aber keine Ahnung, ob und wie das funzt.

klaus

Thomas Schulte:
Klaus hat recht. Aber das geht auch. Da musst du dir dann halt in Excel ein Lotus Object holen und dann ein wenig COM Programmieren. Die Klassen sind die gleichen und die Methoden kannst du auch abkupfern.

Thomas

fritandr:
Hallo,

anbei ein kleines Excelmakro, das Dir aus Deinen Adressbüchern die Namen holt und in Excel überträgt. Da sollte eigentlich alles drin sein, was Du brauchst.

Frag mich nicht, wo ich das Makro herhabe. Ich habe es irgendwann mal irgendwo im Internet gefunden und gerade getestet. Generell läuft es. Dinge wie Fehlerhandling, ... musst Du Dir selbst einbauen.


--- Code: ---Sub lotusnab()
 
Dim session
Set session = CreateObject("Lotus.NotesSession")
 
'Dim db As NOTESDATABASE
Dim v As Variant 'NOTESVIEW
Dim vn As Variant 'NotesViewNavigator
Dim e As Variant ' NotesViewEntry
Dim doc As Variant ' NOTESDOCUMENT
 
Dim strFullname As String
Dim strForm As String
Dim itemFullname
Dim itemForm
Dim books As Variant
 
 
   Call session.Initialize
   books = session.AddressBooks
   
   For Each Db In books   ' Iterate through each address book.
   Call Db.Open
 
   If Db.ISOPEN Then
   'Set db = s.GETDATABASE("", "OverviewExamples.nsf")
 
    Set v = Db.GETVIEW("($PeopleGroupsFlat)")
    Set vn = v.CreateViewNav()
    Set e = vn.GETFIRSTDOCUMENT()
    While Not (e Is Nothing)
        Set doc = e.DOCUMENT
   
        Set itemFullname = doc.GETFIRSTITEM("Fullname")
        If (itemFullname Is Nothing) Then
           
        Else
            Set itemForm = doc.GETFIRSTITEM("Form")
            If (itemForm Is Nothing) Then
       
            Else
                strForm = itemForm.Text
                If strForm = "Person" Or strForm = "Group" Then
                    strFullname = itemFullname.Text
                    i = i + 1
                    Cells(i, 1).Value = strFullname
                End If
            End If
        End If
        Set e = vn.GETNEXTDOCUMENT(e)
    Wend
   End If
   
  Next
End Sub

--- Ende Code ---

Viele Grüße
Andreas

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln