Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Export einer Abfrage in Excel-Vorlage
zurück: Zeit addieren in einem Berichtsfuß weiter: Aktuellen Preis ermitteln Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Greco
Excel-Kenner (ohne VBA)


Verfasst am:
25. Feb 2012, 15:50
Rufname:
Wohnort: Bern

Export einer Abfrage in Excel-Vorlage - Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo zusammen

Ich weiss, das Thema ist abgegriffen, aber leider habe ich noch keine Lösung gefunden. Ich möchte eine Abfrage (MU_Matrix Abfrage) in eine bestimmte Excel-Datei exportieren (Auswertungen.xlsx). Ich habe aus einer früheren Datenbank den Code (damals dank Google gefunden) kopiert, leider funktioniert er bei meiner neuen DB nicht mehr (Excel-Vorlage öffnet sich, es kommt aber der Laufzeitfehler 3061: "31 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben").
Da meine VBA-Kenntnisse nahe bei Null sind, habe ich keine Ahnung, was ich ändern muss. Kann mir jemand helfen?
Hier mein Code:

Code:
Private Sub Export_Excel_Click()

    ExcelExportFromRecordset "C:\Users\Stephan\Documents\PF\MU-Matrix\Auswertung.xlsx", "A5"
End Sub

Sub ExcelExportFromRecordset(FullExcelDatName As String, ExcelStartZelle As String)

    Dim xlApp As Object, xlBook As Object, xlSheet As Object
    Dim AktDb As DAO.Database
   
    On Error Resume Next
    Set xlApp = GetObject(, "Excel.Application")
    If xlApp Is Nothing Then
        Set xlApp = CreateObject("Excel.Application")
    End If
    On Error GoTo 0
    Set xlBook = xlApp.Workbooks.Open(FullExcelDatName)
       
    xlApp.Visible = True

    ExportFromRecordset xlBook, "MU_MATRIX Abfrage", "Daten", ExcelStartZelle
       
    xlBook.Save
    Set xlBook = Nothing
    Set xlApp = Nothing
End Sub

Private Sub ExportFromRecordset(xlBook As Object, AcTabAbfrSQL As String, ExcelTabName As String, ExcelStartZelle As String)
    Dim rs As DAO.Recordset
    Dim xlSheet As Object
   
    Set xlSheet = xlBook.Sheets(ExcelTabName)
        Set rs = CurrentDb.OpenRecordset(AcTabAbfrSQL, dbOpenSnapshot)
    xlSheet.Range(ExcelStartZelle, Mid(xlSheet.UsedRange.Address, _
                     InStr(xlSheet.UsedRange.Address, ":") + 1)).ClearContents
 
    xlSheet.Range(ExcelStartZelle).CopyFromRecordset rs
    rs.Close
    Set rs = Nothing
    Set xlSheet = Nothing
                     
End Sub


Beim Debuggen wird folgende Zeile markiert:

Code:
 Set rs = CurrentDb.OpenRecordset(AcTabAbfrSQL, dbOpenSnapshot)




Danke im Voraus!
Sonneschein
AC97-Entwicklung, AC2003-2010 nur Test


Verfasst am:
25. Feb 2012, 17:26
Rufname: Mike


AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo,
die OpenRecordset-Methode unterstützt keine Parameterabfragen.

Deine Exportabfrage enthält vermutlich entsprechende Parameter z.B. Formularverweise.
31 Parameter scheint aber etwas unrealistisch Confused .

_________________
Grüße
Mike
Greco
Excel-Kenner (ohne VBA)


Verfasst am:
26. Feb 2012, 22:07
Rufname:
Wohnort: Bern

AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo Sonnenschein

Danke für deine Antwort, jetzt weiss ich, wo das Problem liegt. Ich habe tatsächlich ein Formular erstellt, bei dem Kriterien mittels Kontrollkästchen ausgewählt werden. Die Abfrage wird entsprechend der Kriterien gefiltert und insgesamt gibt es wirklich 31 davon...

Kleiner Tipp, mit welcher Methode ich arbeiten muss bzw. nach was ich im Google suchen muss?
Sonneschein
AC97-Entwicklung, AC2003-2010 nur Test


Verfasst am:
26. Feb 2012, 22:15
Rufname: Mike

AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo,
wenn du in eine bestehende Tabelle exportieren willst, wirst du bei dieser Methode bleiben müssen und die Parameter auflösen:
V1: Eval() in die Abfrage einbauen
V2: SQL-Code im VBA zusammensetzen
V3: Parameter an QueryDefs übergeben

_________________
Grüße
Mike
Greco
Excel-Kenner (ohne VBA)


Verfasst am:
26. Feb 2012, 23:05
Rufname:
Wohnort: Bern


AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo Mike

Danke nochmals. Mir gefällt die Variante 2 am besten (da noch am ehesten verständlich für mich Wink ).
Den SQL-Code meiner Abfrage habe ich (SQL-Ansicht der Abfrage). Die Abfrage basiert auf der Tabelle "MU_Matrix_Export".
Kann ich diesen Code nun so irgendwie einbauen? Sorry für die wahrscheinlich dumme Frage...

Code:
SELECT MU_MATRIX_EXPORT.KUNDENNUMMER, MU_MATRIX_EXPORT.VERKAUFSKUNDE_NR, MU_MATRIX_EXPORT.Bezeichnung, MU_MATRIX_EXPORT.RECHTSFORM_TEXT, MU_MATRIX_EXPORT.REGION_TEXT, MU_MATRIX_EXPORT.Marktgebiet, MU_MATRIX_EXPORT.Kundensegment, MU_MATRIX_EXPORT.Segment, MU_MATRIX_EXPORT.NOGA_BEZ, MU_MATRIX_EXPORT.NOGA_Code, MU_MATRIX_EXPORT.Berater_Name, MU_MATRIX_EXPORT.Berater_Vorname, MU_MATRIX_EXPORT.Berater_OE, MU_MATRIX_EXPORT.AUFNAHMEDATUM, MU_MATRIX_EXPORT.MITARBEITER_ANZAHL, MU_MATRIX_EXPORT.DB3, MU_MATRIX_EXPORT.DB4, MU_MATRIX_EXPORT.DB5, MU_MATRIX_EXPORT.VERMOEGEN, MU_MATRIX_EXPORT.Vermoegen_Deposito, MU_MATRIX_EXPORT.Vermoegen_GMG, MU_MATRIX_EXPORT.Vertrag_SWIFT, MU_MATRIX_EXPORT.ANZ_KONTAKTE, MU_MATRIX_EXPORT.ANZ_STATTGEF_KONTAKTE, MU_MATRIX_EXPORT.TRX_ANZ_EZ, MU_MATRIX_EXPORT.TRX_SUM_EZ, MU_MATRIX_EXPORT.TRX_ANZ_Z, MU_MATRIX_EXPORT.TRX_SUM_Z, MU_MATRIX_EXPORT.TRX_ANZ_E, MU_MATRIX_EXPORT.TRX_SUM_E, MU_MATRIX_EXPORT.TRX_ANZ_AS, MU_MATRIX_EXPORT.TRX_SUM_AS, MU_MATRIX_EXPORT.TRX_ANZ_EF, MU_MATRIX_EXPORT.TRX_SUM_EF, MU_MATRIX_EXPORT.TRX_ANZ_ER, MU_MATRIX_EXPORT.TRX_SUM_ER, MU_MATRIX_EXPORT.TRX_ANZ_EF1, MU_MATRIX_EXPORT.TRX_SUM_EF1, MU_MATRIX_EXPORT.TRX_ANZ_DD, MU_MATRIX_EXPORT.TRX_SUM_DD, MU_MATRIX_EXPORT.IZ, MU_MATRIX_EXPORT.IZ, MU_MATRIX_EXPORT.IZV_A_A_C, MU_MATRIX_EXPORT.IZV_S_A_C, MU_MATRIX_EXPORT.Vertrag_EFin, MU_MATRIX_EXPORT.L, MU_MATRIX_EXPORT.Anzahl_eRe, MU_MATRIX_EXPORT.Anzahl_eP, MU_MATRIX_EXPORT.PSP, MU_MATRIX_EXPORT.AC, MU_MATRIX_EXPORT.Tage_im_SOLL, MU_MATRIX_EXPORT.Max_Minusbetrag, MU_MATRIX_EXPORT.K, MU_MATRIX_EXPORT.Zl, MU_MATRIX_EXPORT.PORTEFEUILLE, MU_MATRIX_EXPORT.Deb, MU_MATRIX_EXPORT.Kred, MU_MATRIX_EXPORT.BB, MU_MATRIX_EXPORT.ZUTEILUNG
FROM MU_MATRIX_EXPORT
GROUP BY MU_MATRIX_EXPORT.KUNDENNUMMER, MU_MATRIX_EXPORT.VERKAUFSKUNDE_NR, MU_MATRIX_EXPORT.Bezeichnung, MU_MATRIX_EXPORT.RECHTSFORM_TEXT, MU_MATRIX_EXPORT.REGION_TEXT, MU_MATRIX_EXPORT.Marktgebiet, MU_MATRIX_EXPORT.Kundensegment, MU_MATRIX_EXPORT.Segment, MU_MATRIX_EXPORT.NOGA_BEZ, MU_MATRIX_EXPORT.NOGA_Code, MU_MATRIX_EXPORT.Berater_Name, MU_MATRIX_EXPORT.Berater_Vorname, MU_MATRIX_EXPORT.Berater_OE, MU_MATRIX_EXPORT.AUFNAHMEDATUM, MU_MATRIX_EXPORT.MITARBEITER_ANZAHL, MU_MATRIX_EXPORT.DB3, MU_MATRIX_EXPORT.DB4, MU_MATRIX_EXPORT.DB5, MU_MATRIX_EXPORT.VERMOEGEN, MU_MATRIX_EXPORT.Vermoegen_D, MU_MATRIX_EXPORT.Vermoegen_G, MU_MATRIX_EXPORT.Vertrag_S, MU_MATRIX_EXPORT.ANZ_KONTAKTE, MU_MATRIX_EXPORT.ANZ_STATTGEF_KONTAKTE, MU_MATRIX_EXPORT.TRX_ANZ_E, MU_MATRIX_EXPORT.TRX_SUM_E, MU_MATRIX_EXPORT.TRX_ANZ_Z, MU_MATRIX_EXPORT.TRX_SUM_Z, MU_MATRIX_EXPORT.TRX_ANZ_ES, MU_MATRIX_EXPORT.TRX_SUM_ES, MU_MATRIX_EXPORT.TRX_ANZ_AS, MU_MATRIX_EXPORT.TRX_SUM_AS, MU_MATRIX_EXPORT.TRX_ANZ_EF, MU_MATRIX_EXPORT.TRX_SUM_EF, MU_MATRIX_EXPORT.TRX_ANZ_ER, MU_MATRIX_EXPORT.TRX_SUM_ER, MU_MATRIX_EXPORT.TRX_ANZ_EF2, MU_MATRIX_EXPORT.TRX_SUM_EF2, MU_MATRIX_EXPORT.TRX_ANZ_DD, MU_MATRIX_EXPORT.TRX_SUM_DD, MU_MATRIX_EXPORT.IZ, MU_MATRIX_EXPORT.IZ, MU_MATRIX_EXPORT.IZV_A_C, MU_MATRIX_EXPORT.IZV_S_A_C, MU_MATRIX_EXPORT.Vertrag_EFin, MU_MATRIX_EXPORT.L, MU_MATRIX_EXPORT.Anzahl_eRe, MU_MATRIX_EXPORT.Anzahl_eP, MU_MATRIX_EXPORT.PSP, MU_MATRIX_EXPORT.AC, MU_MATRIX_EXPORT.Tage_im_SOLL, MU_MATRIX_EXPORT.Max_Minusbetrag, MU_MATRIX_EXPORT.K, MU_MATRIX_EXPORT.Zl, MU_MATRIX_EXPORT.PORTEFEUILLE, MU_MATRIX_EXPORT.Deb, MU_MATRIX_EXPORT.Kred, MU_MATRIX_EXPORT.BB, MU_MATRIX_EXPORT.ZUTEILUNG, MU_MATRIX_EXPORT.Kundengruppe
HAVING (((MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_1]=True,"Region 1") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_2]=True,"Region 2") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_3]=True,"Region 3") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_4]=True,"Region 4") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_5]=True,"Region 5") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_6]=True,"Region 6") Or (MU_MATRIX_EXPORT.REGION_TEXT)=IIf([Formulare]![Daten]![Region_7]=True,"Region 7")) AND ((MU_MATRIX_EXPORT.Kundensegment)=IIf([Formulare]![Daten]![Kundensegment_aktiv]=True,"Aktiv") Or (MU_MATRIX_EXPORT.Kundensegment)=IIf([Formulare]![Daten]![Kundensegment_passiv]=True,"Passiv")) AND ((MU_MATRIX_EXPORT.Deb)=IIf([Formulare]![Daten]![Deb_0]=True,0) Or (MU_MATRIX_EXPORT.Deb)=IIf([Formulare]![Daten]![Deb_1]=True,1)) AND ((MU_MATRIX_EXPORT.Kred)=IIf([Formulare]![Daten]![Kre_0]=True,0) Or (MU_MATRIX_EXPORT.Kred)=IIf([Formulare]![Daten]![Kre_1]=True,1)) AND ((MU_MATRIX_EXPORT.BB)=IIf([Formulare]![Daten]![Bez_schwache]=True,"Schwache“) Or (MU_MATRIX_EXPORT.BB)=IIf([Formulare]![Daten]![Bez_Neben]=True,"Neben") Or (MU_MATRIX_EXPORT.BB)=IIf([Formulare]![Daten]![Bez_Haupt]=True,"Haupt")) AND ((MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_a1]=True,"A1") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_a2]=True,"A2") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_a3]=True,"A3") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_b1]=True,"B1") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_b2]=True,"B2") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_b3]=True,"B3") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_c1]=True,"C1") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_c2]=True,"C2") Or (MU_MATRIX_EXPORT.ZUTEILUNG)=IIf([Formulare]![Daten]![Feld_c3]=True,"C3")) AND ((MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_DL]=True,"DL") Or (MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_V]=True,"V") Or (MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_Handel]=True,"Handel") Or (MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_Industrie]=True,"Industrie") Or (MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_Vers]=True,"Versicherungen") Or (MU_MATRIX_EXPORT.Kundengruppe)=IIf([Formulare]![Daten]![Gruppe_G]=True,"G")))
ORDER BY MU_MATRIX_EXPORT.VERMOEGEN DESC;
Sonneschein
AC97-Entwicklung, AC2003-2010 nur Test


Verfasst am:
26. Feb 2012, 23:16
Rufname: Mike

AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo,
also mir gefällt Variante1 besser Wink.

aus
Code:
IIf([Formulare]![Daten]![Feld_b1]=True,"B1")
wird
Code:
IIf(eval("[Forms]![Daten]![Feld_b1]")=True,"B1")

_________________
Grüße
Mike
Greco
Excel-Kenner (ohne VBA)


Verfasst am:
26. Feb 2012, 23:30
Rufname:
Wohnort: Bern

AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Schreibe ich das jetzt einfach bei der Abfrage in jede iif-formel? Muss ich anschliessend bei meinem ursprünglichen Code nichts mehr ändern?

Tausend Dank für deine Hilfe!
Sonneschein
AC97-Entwicklung, AC2003-2010 nur Test


Verfasst am:
26. Feb 2012, 23:34
Rufname: Mike

AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Hallo,
ja. Aber mach es am besten etappenweise.
Die Abfrage muss weiterhin 1:1 funktionieren und die Parameteranzahl in der Fehlermeldung entsprechend geringer werden.

_________________
Grüße
Mike
Greco
Excel-Kenner (ohne VBA)


Verfasst am:
26. Feb 2012, 23:50
Rufname:
Wohnort: Bern


AW: Export einer Abfrage in Excel-Vorlage - AW: Export einer Abfrage in Excel-Vorlage

Nach oben
       Version: Office 2010

Du bist mein Held, es funktioniert!!!
Die Änderung von "Formulare" in "Forms" ist wichtiger, als ich zuerst gedacht habe Wink
Ganz herzlichen Dank, macht unglaublich Spass, nach stundenlanger (eigener) Suche auf so hilfsbereite Menschen wie dich zu stossen!!
Schönen Abend und eine gute Woche
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage Rechnet simple addieren formel nicht 3 Seppi 1597 04. März 2004, 13:39
Willi Wipp Abfrage Rechnet simple addieren formel nicht
Keine neuen Beiträge Access Tabellen & Abfragen: Filter bei Abfrage 3 tivi 701 03. März 2004, 15:06
tivi Filter bei Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Kombinationsfeld im Formular als Kriterium für eine Abfrage 1 gunderma 2621 03. März 2004, 10:05
tania63 Kombinationsfeld im Formular als Kriterium für eine Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: [DANKE-ERLEDIGT] Join in einer Abfrage 2 Gast 803 01. März 2004, 08:36
ppc [DANKE-ERLEDIGT] Join in einer Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage aus Formular erstellen 2 frkrone 3248 12. Feb 2004, 14:22
frkrone Abfrage aus Formular erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: Wie kann ich mehr als 255Felder in eine Abfrage legen? 1 D.R. 2235 12. Feb 2004, 09:05
faßnacht(IT); Wie kann ich mehr als 255Felder in eine Abfrage legen?
Keine neuen Beiträge Access Tabellen & Abfragen: Suche Hilfe zu SQL (DAO 351 MS) - Abfrage 3 Berny_H 1005 04. Feb 2004, 11:41
borstel Suche Hilfe zu SQL (DAO 351 MS) - Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage, die sich auf 2 Abfragen + 1 Tabelle bezieht 1 caro456 1832 27. Jan 2004, 20:03
Willi Wipp Abfrage, die sich auf 2 Abfragen + 1 Tabelle bezieht
Keine neuen Beiträge Access Tabellen & Abfragen: Bestimmte Abfrage erstellen ... nur wie ? 1 studi 2219 22. Dez 2003, 20:51
reke Bestimmte Abfrage erstellen ... nur wie ?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage, ob eine Abfrage ein Ergebnis hat 3 Esdo 3934 09. Dez 2003, 15:53
Fedaykin Abfrage, ob eine Abfrage ein Ergebnis hat
Keine neuen Beiträge Access Tabellen & Abfragen: Access 97 Abfrage Duplikate 9 gast 2419 02. Dez 2003, 14:39
Kay Access 97 Abfrage Duplikate
Keine neuen Beiträge Access Tabellen & Abfragen: SQL Abfrage mit VBA 3 daMike 1729 26. Nov 2003, 17:58
daMike SQL Abfrage mit VBA
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Word Serienbriefe