none
MIt VB6 Dateien in Access 2010 in einem Anlage-Feld speichern

    Frage

  • Hallo Leute,

    ich suche eine Möglichkeit, wie ich aus einem VB6-Programm Dateien in eine Acc 2010-DB in einem DB-Feld vom Typ Anlage im- und exportieren kann.

    Kann mir jemand vielleicht helfen, welche Verweise ich setzen muss und wie der Code aussehen muss. Ich habe bisher nur Beispiele wie ich das in Access direkt bewerkstellige.

    Vielen Dank im Voraus.

    Gruß Ahmed

    Mittwoch, 14. Dezember 2011 17:34

Antworten

  • Hallo Ahmed,

    Ahmed Martens wrote:

    ich suche eine Möglichkeit, wie ich aus einem VB6-Programm Dateien in
    eine Acc 2010-DB in einem DB-Feld vom Typ Anlage im- und exportieren
    kann.

    Kann mir jemand vielleicht helfen, welche Verweise ich setzen muss und
    wie der Code aussehen muss. Ich habe bisher nur Beispiele wie ich das in
    Access direkt bewerkstellige.

    Vom Prinzip her ist es das gleiche. Du musst einen Verweis auf die
    ACEDAO.DLL setzen, denn die enthaelt die entsprechenden Methoden.
    Beispielcode hast du ja schon.

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    • Als Antwort markiert Ahmed Martens Freitag, 16. Dezember 2011 08:20
    Donnerstag, 15. Dezember 2011 14:22
    Moderator

Alle Antworten

  • Hallo Ahmed,

    Ahmed Martens wrote:

    ich suche eine Möglichkeit, wie ich aus einem VB6-Programm Dateien in
    eine Acc 2010-DB in einem DB-Feld vom Typ Anlage im- und exportieren
    kann.

    Kann mir jemand vielleicht helfen, welche Verweise ich setzen muss und
    wie der Code aussehen muss. Ich habe bisher nur Beispiele wie ich das in
    Access direkt bewerkstellige.

    Vom Prinzip her ist es das gleiche. Du musst einen Verweis auf die
    ACEDAO.DLL setzen, denn die enthaelt die entsprechenden Methoden.
    Beispielcode hast du ja schon.

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    • Als Antwort markiert Ahmed Martens Freitag, 16. Dezember 2011 08:20
    Donnerstag, 15. Dezember 2011 14:22
    Moderator
  • Danke für die Info. Dann werde ich mich einmal ans Werk machen.

    Nachtrag:

    Für einen Verweis auf das neue Datenbankformat geht man wie folgt vor:

    1) In VB6 Projekt | Verweise
    a) Deaktivieren Microsoft DAO 3.6 object library
    b) Auswahl Microsoft Office 12 access database engine object library (Office 2007 = 12; Office 2010 = 14)
    c) Auswahl Microsoft Office 12 object library (Office 2007 = 12; Office 2010 = 14)

    Und schon kann es losgehen.

    Vielen Dank noch einmal.

    Gruß Ahmed


    Freitag, 16. Dezember 2011 08:21

  • Ahmed Martens wrote:

    1) In VB6 Projekt | Verweise
    a) Deaktivieren Microsoft DAO 3.6 object library
    b) Auswahl Microsoft Office 12 access database engine object library
    (Office 2007 = 12; Office 2010 = 14) c) Auswahl Microsoft Office 12
    object library (Office 2007 = 12; Office 2010 = 14)

    Wozu braucht's die Microsoft Office 12 (rsp. 14) Library? Die ACE sollte eigentlich ausreichen, oder? Was benötigst Du aus der Office Library.

    Grund der Frage: Die ADE (2010) kann von MS als Redistributable heruntergeladen werden.
    http://www.microsoft.com/download/en/details.aspx?id=13255
    Mit der ADE 2010 sollten auch auf Attachments der ADE 2007 zugegriffen werden können (Backward Compatibilty)

    Für die Microsoft Office Library benötigt der Endbenutzer eine Office Lizenz . Zumindest habe ich noch nirgends eine Redistributable MSOL gefunden.

    Gruss
    Henry

    Freitag, 16. Dezember 2011 10:44
  • Hallo Henry,

    Henry Habermacher wrote:

    Ahmed Martens wrote:

    1) In VB6 Projekt | Verweise
    a) Deaktivieren Microsoft DAO 3.6 object library
    b) Auswahl Microsoft Office 12 access database engine object library
    (Office 2007 = 12; Office 2010 = 14) c) Auswahl Microsoft Office 12
    object library (Office 2007 = 12; Office 2010 = 14)

    Wozu braucht's die Microsoft Office 12 (rsp. 14) Library? Die ACE sollte
    eigentlich ausreichen, oder? Was benötigst Du aus der Office Library.

    Evtl. weil Ribbons im Spiel sind?

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    Freitag, 16. Dezember 2011 14:26
    Moderator
  • Danke für den Hinweis, ich dachte beide Verweise gehören zusammen. Ich benötige nur die JET-Engine.

    Ich werde den unnötigen Verweis sofort heraus nehmen. Bloß keinen Balast.

     

    Gruß Ahmed

     

    P.S. Es ist echt schade, dass es nicht mehr das alte Forum gibt. Dort war viel mehr los. Allein das Mitlesen hat einen schon geholfen. Aber hier ist ja echt tote Hose.

    Freitag, 16. Dezember 2011 16:29
  • Am 16.12.2011 schrieb Ahmed Martens:

    P.S. Es ist echt schade, dass es nicht mehr das alte Forum gibt. Dort war viel mehr los. Allein das Mitlesen hat einen schon geholfen. Aber hier ist ja echt tote Hose.

    Du meinst sicherlich die Newsgroups. Die gibt es natürlich immer noch:
    de.comp.datenbanken.ms-access und microsoft.public.de.access kannst Du
    z.B. über http://news.individual.de/ per NNTP erreichen.

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/
    Reg2xml:  http://www.reg2xml.com - Registry Export File Converter

    Freitag, 16. Dezember 2011 17:14
  • Hallo Winfried,

    aber schau dir doch die Frequenz der Beiträge an. Das ist doch nur noch ein müder Abklatsch von dem alten MS-Forum. Es ist schon enttäuschend den Niedergang von Access zu beobachten. :-(

     

    Gruß Ahmed

    Freitag, 16. Dezember 2011 18:21
  • Hallo Ahmed Martens,

    Ahmed Martens schrieb folgendes:

    aber schau dir doch die Frequenz der Beiträge an. Das ist doch nur
    noch ein müder Abklatsch von dem alten MS-Forum. Es ist schon
    enttäuschend den Niedergang von Access zu beobachten. :-(

    das ist nicht der Niedergang von Access. Die Benutzer sind halt in alle möglichen Foren ausgewandert, nachdem
    MS die MS Newsgroups(IMO ohne Not) geschlossen hat.
    Gruß
    Gunter


    Access FAQ: http://www.donkarl.com

          http://www.avenius.de - http://www.AccessRibbon.de
    http://www.ribboncreator.de - http://www.ribboncreator2010.de

    Freitag, 16. Dezember 2011 18:38
    Moderator
  • Das ist was ich meine. Früher war das MS-Forum ein profunde Ansammlung von Wissen und Ideen. Aber jetzt muss ich mir immer erst alles mühsam aus dem INet zusammen sammeln.

    Wo sind die ganzen Gurus abgeblieben? Ich habe schon einmal Thomas Möller gesagt, ich fühle mich wie in Kind, dass einfach ausgesetzt wurde.

    Und dieses Forum ist doch auch nur der letzte Heuler. Wenn ich mir allein schon den Threat-Aufbau ansehe, dann könnte ich [...}. Auch die thematischen Trennung in den Foren zwischen Enduser (MS-Answer) und Profis ist doch einfach Schwachsinn.

    Aber sei es wie es ist.

    Gruß Ahmed

    Freitag, 16. Dezember 2011 19:06
  • Am 16.12.2011 schrieb Ahmed Martens:

    Das ist was ich meine. Früher war das MS-Forum ein profunde Ansammlung von Wissen und Ideen. Aber jetzt muss ich mir immer erst alles mühsam aus dem INet zusammen sammeln.

    Nix Forum, Newsgroup war und ist das. Der Unterschied mag klein
    sein, aber dafür sehr fein.

    Wo sind die ganzen Gurus abgeblieben? Ich habe schon einmal Thomas Möller gesagt, ich fühle mich wie in Kind, dass einfach ausgesetzt wurde.

    In den diversen Foren abgetaucht, gibt doch genügend.

    Und dieses Forum ist doch auch nur der letzte Heuler. Wenn ich mir allein schon den Threat-Aufbau ansehe, dann könnte ich [...}. Auch die thematischen Trennung in den Foren zwischen Enduser (MS-Answer) und Profis ist doch einfach Schwachsinn.

    Dann poste doch wie viele andere auch mit einem Newsreader. Dann
    merkst Du gar nicht ob es ein Forum oder eine Newsgroup ist.

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/
    Reg2xml:  http://www.reg2xml.com - Registry Export File Converter

    Freitag, 16. Dezember 2011 22:25
  • Hallo Winfried,

    Am Fri, 16 Dec 2011 22:25:10 +0000 schrieb Winfried Sonntag [MVP]:

    Dann poste doch wie viele andere auch mit einem Newsreader. Dann
    merkst Du gar nicht ob es ein Forum oder eine Newsgroup ist.

    ich wußte gar nicht das die Community Forums NNTP-Bridge noch weiter
    entwickelt wird. Ich bin der Meinung gelesen zu haben, dass MS den
    Zugang hierfür in den Webforen sperren wollte bzw. sogar gesperrt hatte.

    Ist aber jetzt auch egal. Ich habe mir einmal die neueste Version
    herunter geladen und installiert. In 40tude den Zugang eingericht und
    siehe da, ich habe sofort eine Verbindung.

    Ich bin jetzt nur gespannt, ob und wie meine Antwort ankommt.
    Vielen Dank für den Denkanstoß.

    Gruß Ahmed


    Antworten bitte nur in der Newsgroup
    Windows 7 64bit Home Premium
    Office Prof. 2010

    Samstag, 17. Dezember 2011 08:59
  • Über das Webforum:

    Hat ja alles wunderbar funktioniert. Sogar die Zitate werden richtig angezeigt.

    Dann kann es ja wie bisher weitergehen. :-)

    Ahmed

    Samstag, 17. Dezember 2011 09:01
  • Hallo Ahmed,

    Am 17.12.2011 10:01, schrieb Ahmed Martens:

    Dann kann es ja wie bisher weitergehen. :-)

    Du meinst auf technischer Ebene - oder ?
     SCNR


    Thomas

    Homepage: www.Team-Moeller.de

    Samstag, 17. Dezember 2011 09:04
  • Hallo,

    Ahmed Martens wrote:

    Am Fri, 16 Dec 2011 22:25:10 +0000 schrieb Winfried Sonntag [MVP]:

    Dann poste doch wie viele andere auch mit einem Newsreader. Dann
    merkst Du gar nicht ob es ein Forum oder eine Newsgroup ist.

    ich wußte gar nicht das die Community Forums NNTP-Bridge noch weiter
    entwickelt wird.

    Da sie nicht von Microsoft stammt, kann die Entwicklung von MS auch nicht
    eingestellt werden. Anders verhaelt es sich beim Webservice, der die
    Community Bridge bedient.

    Ich bin der Meinung gelesen zu haben, dass MS den
    Zugang hierfür in den Webforen sperren wollte bzw. sogar gesperrt hatte.

    Das gilt fuer Answers, hier in MSDN ist noch alles gut. :-)

    Gruss - Peter


    Mitglied im http://www.dbdev.org
    FAQ: http://www.donkarl.com

    Samstag, 17. Dezember 2011 10:04
    Moderator
  • Am 17.12.2011 schrieb Ahmed Martens:

    Am Fri, 16 Dec 2011 22:25:10 +0000 schrieb Winfried Sonntag [MVP]:

    Dann poste doch wie viele andere auch mit einem Newsreader. Dann
    merkst Du gar nicht ob es ein Forum oder eine Newsgroup ist.

    ich wußte gar nicht das die Community Forums NNTP-Bridge noch weiter
    entwickelt wird. Ich bin der Meinung gelesen zu haben, dass MS den
    Zugang hierfür in den Webforen sperren wollte bzw. sogar gesperrt hatte.

    Wie Peter schon schrieb, das gilt nur für Answers, ist auch hier zu
    lesen: http://communitybridge.codeplex.com/

    Ist aber jetzt auch egal. Ich habe mir einmal die neueste Version
    herunter geladen und installiert. In 40tude den Zugang eingericht und
    siehe da, ich habe sofort eine Verbindung.

    Na super. ;)

    Ich bin jetzt nur gespannt, ob und wie meine Antwort ankommt.
    Vielen Dank für den Denkanstoß.

    Natürlich kommt die Antwort an und bitte, gern geschehen. ;)

    Servus
    Winfried


    Connect2WSUS: http://www.grurili.de/tools/Connect2WSUS.exe
    GPO's: http://www.gruppenrichtlinien.de
    Community Forums NNTP Bridge: http://communitybridge.codeplex.com/
    Reg2xml:  http://www.reg2xml.com - Registry Export File Converter

    Samstag, 17. Dezember 2011 11:41
  • Hallo Peter

    Peter Doering [MVP] wrote:

    Wozu braucht's die Microsoft Office 12 (rsp. 14) Library? Die ACE sollte
    eigentlich ausreichen, oder? Was benötigst Du aus der Office Library.

    Evtl. weil Ribbons im Spiel sind?

    Wusste gar nicht, dass man die Ribbons von VB6 aus auch benutzen kann ;-)

    Gruss
    Henry

    Montag, 19. Dezember 2011 02:43
  • Hallo Leute,

    also hier nun die versprochene Lösung.

    In einem globalen Modul mdlSave_Attachment.bas:

     

    'Allgemeine Parameter:
    ' »    strFileName: Verzeichnis und Name der zu importierenden Datei
    ' »    strTable: Name der Tabelle, in der sich das Anlage-Feld befindet
    ' »    strFieldAttach: Name des Anlage-Feldes
    ' »    boolEdit: Gibt an, ob die Anlage in einem bestehenden Datensatz gespeichert werden soll
    ' »    strIDField: Name des Primärschlüsselfeldes der Tabelle
    ' »    varID: Wert des Primärschlüsselfeldes für den Datensatz, zu dem eine Anlage hinzugefügt werden soll
    ' »    strAttachment: Name des Attachments, das gegebenenfalls überschrieben werden soll
    
    
    'Der Zugriff auf die Anlagen erfolgt mit DAO. Der grundlegende Ablauf ist, dass Sie zu-
    'nächst ein Recordset-Objekt auf Basis der Tabelle mit dem Anlage-Feld erstellen und
    'ein weiteres auf Basis der Value-Eigenschaft des Anlage-Feldes. Letzteres muss unbe-
    'dingt ein Recordset2-Objekt sein, ebenso wie das Field-Objekt mit dem Anlage-Feld die
    'neue Version Field2 braucht.
    'Die Prozedur sieht wie folgt aus:
    
    Function StoreBLOB(strFilename As String, strACCDB As String, strTable As String, _
                                 strFieldAttach As String, Optional boolEdit As Boolean, _
                               Optional strIDField As String, Optional varID As Variant, _
                                              Optional strAttachment As String) As Boolean
        Dim fld2 As DAO.Field2
        Dim rstDAO As DAO.Recordset2
        Dim rstACCDB As DAO.Recordset2
        Dim myDB As Database
        On Error GoTo ErrHandler
        Set myDB = OpenDatabase(strACCDB)
        Set rstDAO = myDB.OpenRecordset("SELECT * FROM [" & strTable & "]", _
                                                                            dbOpenDynaset)
        If boolEdit Then
            If IsNull(varID) Then Err.Raise vbObjectError + 1, , _
                                                           "Keine Datensatz-ID angegeben!"
            rstDAO.FindFirst "CStr([" & strIDField & "])='" & CStr(varID) & "'"
            If rstDAO.NoMatch Then Err.Raise vbObjectError + 2, , _
                                          "Datensatz mit ID " & varID & " nicht gefunden!"
            rstDAO.Edit
        Else
            rstDAO.AddNew
        End If
        Set rstACCDB = rstDAO(strFieldAttach).Value
        If boolEdit Then
            If rstACCDB.EOF Then 'Fall 1: Es gibt noch keine Anlagen; > neue Anlage
                rstACCDB.AddNew
            Else
                Do While Not rstACCDB.EOF
                    rstACCDB.MoveNext
                Loop
                rstACCDB.FindFirst "[FileName]='" & strAttachment & "'"
                'Fall2: Es gibt keine Anlage mit dem Namen in sAttachment: > neue Anlage
                'Fall3: Anlage gefunden; dann editieren
                    If rstACCDB.NoMatch Then
                        rstACCDB.AddNew
                    Else
                        rstACCDB.Edit
                    End If
            End If
        Else                'Dateien per VBA in Anlage-Felder importieren und exportieren
            rstACCDB.AddNew
        End If
        
        Set fld2 = rstACCDB.Fields!FileData
        On Error Resume Next
        fld2.LoadFromFile (strFilename)
        
        If Err.Number = -2146697202 Then    'Unerlaubte Dateiendung! Spezialbehandlung...
            On Error GoTo ErrHandler
            Name strFilename As strFilename & ".dat"  'Datei mit Endung ".dat" anfügen
            fld2.LoadFromFile (strFilename & ".dat")  'Datei laden
            Name strFilename & ".dat" As strFilename  'Umbenennung rückgängig machen
            'Anlagename setzen
            rstACCDB.Fields!FileName = Mid(strFilename, InStrRev(strFilename, "\") + 1)
            rstACCDB.Update
        Else
            On Error GoTo ErrHandler
            rstACCDB.Update
        End If
        
    
    Ende:
        rstDAO.Update
        StoreBLOB = True    'Rückgabe True = Alles ok.
    
    Finally:
        On Error Resume Next
        rstACCDB.Close
        rstDAO.Close
        Set rstACCDB = Nothing
        Set rstDAO = Nothing
        Set fld2 = Nothing
        Exit Function
    ErrHandler:
        MsgBox Err.Description, vbCritical
        Resume Finally
    End Function
    
    
    
    'Für  den  umgekehrten  Weg  gibt  es  ebenfalls  eine  passende  und  universell  einsetzbare
    'Funk tion. Der Grund, warum die Datei wesentlich kompakter ist als die zum Importieren
    'von  Dateien,  ist  folgender:  Die  Routine  greift  direkt  mit  einer  geeigneten  SQL-Abfrage
    'auf die in der Untertabelle des Anlage-Feldes enthaltenen Felder zu. Die Parameter sind
    'weit gehend mit denen der vorherigen Funktion identisch. Auch der Export mit der Me-
    'thode SaveToFile prüft die Dateiendung, weshalb auch hier ein Work around eingebaut ist.
    'Ein Beispielaufruf sieht etwa so aus:
    'RestoreBLOB "tblAnlagen", "Anlagen", "AnlageID", 20, _
    '                                 CurrentProject.Path & "\CatsExportiert.jpg", "cats.jpg"
    'Die Funktion ist wie folgt aufgebaut:
    
    Function RestoreBLOB(strACCDB As String, strTable As String, strFieldAttach As String, _
                           strIDField As String, varID As Variant, strFilename As String, _
                                         Optional strAttachment As String = "*") As Boolean
        Dim rstDAO As DAO.Recordset
        Dim rstACCDB As DAO.Recordset2
        Dim myDB As Database
        On Error GoTo ErrHandler
        Set myDB = OpenDatabase(strACCDB)
    
        Set rstACCDB = myDB.OpenRecordset("SELECT [" & strFieldAttach & _
    "].FileData FROM "
    & strTable & " WHERE [" & strIDField & "]=" _
    & varID & " AND [" & strFieldAttach & "].FileName LIKE '" & strAttachment & "'", _
    dbOpenSnapshot) If rstACCDB.EOF Then Err.Raise vbObjectError + 3, "RestoreBLOB", "Das Anlagefeld ist leer" End If If Dir(strFilename) <> "" Then Kill strFilename DoEvents End If On Error Resume Next 'Fehlerbehandlung ausschalten, da nachfolgende Zeile 'Fehler bei blockierten Dateiendungen erzeugt rstACCDB(0).SaveToFile strFilename If Err.Number = (-2146697202) Then 'Spezialbehandlung: 'Datei wird mit Endung .dat versehen, was erlaubte Endung ist 'Anschließend wird wiederhergestellte Datei wieder korrekt umbenannt rstACCDB(0).SaveToFile strFilename & ".dat" DoEvents Name strFilename & ".dat" As strFilename End If RestoreBLOB = True Finally: On Error Resume Next Set rstACCDB = Nothing rstDAO.Close Set rstDAO = Nothing Exit Function ErrHandler: MsgBox Err.Number & "/" & Err.Description, vbCritical Resume Finally End Function Function DeleteBLOB(strACCDB As String, strTable As String, _ strFieldAttach As String, Optional strIDField As String, Optional varID As Variant, _ Optional strAttachment As String) As Boolean 'Dim fld2 As DAO.Field2 Dim rstDAO As DAO.Recordset2 Dim rstACCDB As DAO.Recordset2 Dim myDB As Database On Error GoTo ErrHandler Set myDB = OpenDatabase(strACCDB) Set rstDAO = myDB.OpenRecordset("SELECT * FROM [" & strTable & "]", _ dbOpenDynaset) If IsNull(varID) Then Err.Raise vbObjectError + 1, , _ "Keine Datensatz-ID angegeben!" rstDAO.FindFirst "CStr([" & strIDField & "])='" & CStr(varID) & "'" If rstDAO.NoMatch Then Err.Raise vbObjectError + 2, , "Datensatz mit ID " & varID & " nicht gefunden!" GoTo Finally Else rstDAO.Edit End If Set rstACCDB = rstDAO(strFieldAttach).Value Do While Not rstACCDB.EOF Debug.Print rstACCDB.FileName rstACCDB.MoveNext Loop rstACCDB.FindFirst "[FileName]='" & strAttachment & "'" If rstACCDB.NoMatch Then MsgBox "Die Datei-Anlage konnte nicht gefunden werden." Else rstACCDB.Delete End If rstDAO.Update DeleteBLOB = True 'Rückgabe True = Alles ok. Finally: On Error Resume Next rstACCDB.Close rstDAO.Close Set rstACCDB = Nothing Set rstDAO = Nothing 'Set fld2 = Nothing Exit Function ErrHandler: MsgBox Err.Description, vbCritical Resume Finally End Function

     


    Der Aufruf ist dann wie folgt:

     

    Private Sub cmdDelete_Click()               'löschen Attachment
        Call DeleteBLOB("C:\Users\66\Documents\Test_DB_Anlagen.accdb", _
            "tblDemoAnlage", "fldAnlage", "ID", 6, "test_anlage1.xlsx")
    End Sub
    
    Private Sub cmdExport_Attachment_Click()    'Export Attachment (ohne Löschung)
        Call RestoreBLOB("C:\Users\66\Documents\Test_DB_Anlagen.accdb", _
            "tblDemoAnlage", "fldAnlage", "ID", 3, CurDir & "\Test.xlsx", "te*")
    End Sub
    
    Private Sub cmdImport_Attachment_Click()    'Neuer Datensatz
        Call StoreBLOB(txtImportfile.Text, _
            "C:\Users\66\Documents\Test_DB_Anlagen.accdb", "tblDemoAnlage", "fldAnlage")
    End Sub
    
    Private Sub cmdAdd_Attachment_Click()       'Zu einem Datensatz hinzufügen
        Call StoreBLOB(txtImportfile.Text, _
            "C:\Users\66\Documents\Test_DB_Anlagen.accdb", "tblDemoAnlage", "fldAnlage", _
            True, "ID", 6)
    End Sub
    
    Private Sub cmdOverwrite_Attachment_Click() 'altes Attachment durch neuen ersetzen
        Call StoreBLOB(txtImportfile.Text, _
            "C:\Users\66\Documents\Test_DB_Anlagen.accdb", "tblDemoAnlage", "fldAnlage", _
            True, "ID", 6, "test_anlage.xlsx")
    End Sub
    
    

    Die Hauptprozeduren haben ich aus einem Handbuch (bis auf DeleteBlob()). Diese wurden im wesentlich unverändert übernommen und wurden von mir getestet.

     

    Ich wünsche allen ein paar frohe und festliche Feiertage.

    Gruß Ahmed


    Donnerstag, 22. Dezember 2011 12:26