Discussion:
Access-Abfragen als einzelne Arbeitsblätter einer Excel-Mappe
(zu alt für eine Antwort)
Stefan Schnell
2004-03-02 12:22:31 UTC
Permalink
Hallo Newsgroup,
ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert. Jetzt möchte ich jedoch diese Abfragen alle
in einer Excel-Mappe, jeweils als ein Tabellenblatt,
ablegen. Hat jemand von Euch eine Idee oder ein
CodeSnippet.
Danke für Hinweise.
Tschüss
Stefan
Susanne Wenzel
2004-03-06 07:47:18 UTC
Permalink
Hallo Stefan,
Post by Stefan Schnell
ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert. Jetzt möchte ich jedoch diese Abfragen alle
in einer Excel-Mappe, jeweils als ein Tabellenblatt,
ablegen. Hat jemand von Euch eine Idee oder ein
CodeSnippet.
ich habe gerade festgestellt, dass OutputTo (damit arbeite ich schon lange
nicht mehr) die Exceldatei (oder das Tabellenblatt?) mit der neuen Abfrage
überschreibt, wenn man jedesmal die gleiche Exceldatei als Ziel angibt. Da
die Output-Methode IMHO diesbezüglich keine brauchbaren Parameter
bereitstellt, fällt mir nur ein Würgaround in der Art ein, dass jeweils nach
einem Export das frisch erstellte Tabellenblatt in eine Sammel-Exceldatei
kopiert wird. Auf die Art und Weise müsstest Du eigentlich alle Deine
Abfragen in einer Exceldatei zusammenfassen können.

Vielleicht hilfts ja

Viele Grüße aus dem hohen Norden Deutschlands
Susanne
Josef Poetzl
2004-03-06 08:39:26 UTC
Permalink
Hallo!
Post by Susanne Wenzel
Post by Stefan Schnell
ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert. Jetzt möchte ich jedoch diese Abfragen alle
in einer Excel-Mappe, jeweils als ein Tabellenblatt,
ablegen. Hat jemand von Euch eine Idee oder ein
CodeSnippet.
ich habe gerade festgestellt, dass OutputTo (damit arbeite ich schon lange
nicht mehr) die Exceldatei (oder das Tabellenblatt?) mit der neuen Abfrage
überschreibt, wenn man jedesmal die gleiche Exceldatei als Ziel angibt. Da
die Output-Methode IMHO diesbezüglich keine brauchbaren Parameter
bereitstellt, fällt mir nur ein Würgaround in der Art ein, dass jeweils nach
einem Export das frisch erstellte Tabellenblatt in eine Sammel-Exceldatei
kopiert wird. Auf die Art und Weise müsstest Du eigentlich alle Deine
Abfragen in einer Exceldatei zusammenfassen können.
Wie wäre es mit CopyFromRecordset

Beispiel-Code:
Dim xlApp As Object ' Excel.Application
Dim xlBook As Object ' Excel.Workbook
Dim xlSheet As Object ' Excel.Worksheet

Dim rst As DAO.Recordset

'Excel-Objekt
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True
Set xlBook = xlApp.Workbooks.Add()

'Abfrage 1 exportieren
Set xlSheet = xlBook.Worksheets(1)
Set rst = CurrentDb.OpenRecordset("Abfrage1")
xlSheet.Range("A1").CopyFromRecordset rst
rst.Close

'Abfrage 2 exportieren
Set xlSheet = xlBook.Worksheets(2)
Set rst = CurrentDb.OpenRecordset("Abfrage2")
xlSheet.Range("A1").CopyFromRecordset rst
rst.Close

Set rst = Nothing
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing

Im obigen Code werden aber die Feldnamen nicht übergeben.
Das könntet Du aber mittels einer Schleife über die Feldnamen machen
rst.

z.B.:
Dim i As Long
Dim lngAnzahlFelder As Long
Dim strFeldNamen() As String
'rst = ...
lngAnzahlFelder = rst.Fields.count
ReDim strFeldNamen(lngAnzahlFelder - 1)
With rst
For i = 0 To (lngAnzahlFelder - 1)
strFeldNamen(i) = .Fields(i).Name
Next i
End With
With xlSheet
'Überschrift - Feldnamen exportieren
.range(.Cells(1, 1), _
.Cells(1, lngAnzahlFelder)).Value = strFeldNamen
'Daten
.range("A2").CopyFromRecordset rst
End With

Eine kleine Hilfsfunktion, der Du das Recordsetobjekt und das
gewünschte Worksheetobjekt übergibst, kann Dir bestimmt auch später
gute Dienste erweisen.

mfg
Josef
--
EPT: (Access Error Prevention Table) http://access.joposol.com/
FAQ: (Access-FAQ von Karl Donaubauer) http://www.donkarl.com/
Susanne Wenzel
2004-03-06 10:23:53 UTC
Permalink
Hallo Josef,
ich vermute zwar, Du hast auf Stefan geantwortet, nicht auf mich (die
Thread-Anzeige von meinem OjE verwirrt mich etwas, wäre es bloß nicht so
ätzend aufwendig, andere Newsreader zu installieren und zu nutzen...), aber
Post by Josef Poetzl
Hallo!
Post by Susanne Wenzel
Post by Stefan Schnell
ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert. Jetzt möchte ich jedoch diese Abfragen alle
in einer Excel-Mappe, jeweils als ein Tabellenblatt,
ablegen. Hat jemand von Euch eine Idee oder ein
CodeSnippet.
ich habe gerade festgestellt, dass OutputTo (damit arbeite ich schon
lange nicht mehr) die Exceldatei (oder das Tabellenblatt?) mit der
neuen Abfrage überschreibt, wenn man jedesmal die gleiche Exceldatei
als Ziel angibt. Da die Output-Methode IMHO diesbezüglich keine
brauchbaren Parameter bereitstellt, fällt mir nur ein Würgaround in
der Art ein, dass jeweils nach einem Export das frisch erstellte
Tabellenblatt in eine Sammel-Exceldatei kopiert wird. Auf die Art
und Weise müsstest Du eigentlich alle Deine Abfragen in einer
Exceldatei zusammenfassen können.
Wie wäre es mit CopyFromRecordset
Genau das ist meine persönliche Methode :-)...

[Rest vom guten Code-Beispiel gesnipt]

Ich wollte aber Stefan nicht einfach etwas völlig anderes aufdrängen,
sondern ihm bei seinem Weg versuchen, behilflich zu sein (mir persönlich
hilft es auch mehr, wenn ich die Fehler in meinem selbst gefundenen Weg
finde und danach vielleicht auf eine andere Lösung zugehe, weil ich jetzt
erkennen kann, dass mein ursprünglicher Ansatz nicht optimal war).

Das ist allerdings eine ganz grundsätzliche Frage, über die ich schon mit
diversen Leuten sehr intensiv diskutiert habe: wenn ich Hilfe suche, welche
Sorte von Antwort möchte ich eigentlich haben?

Na ja, leicht OT...

Viele Grüße aus dem hohen Norden Deutschlands
Susanne
Josef Poetzl
2004-03-06 11:26:52 UTC
Permalink
Hallo!
Post by Susanne Wenzel
ich vermute zwar, Du hast auf Stefan geantwortet, nicht auf mich (die
Thread-Anzeige von meinem OjE verwirrt mich etwas, wäre es bloß nicht so
ätzend aufwendig, andere Newsreader zu installieren und zu nutzen...), aber
Dann geb ich auch nochmal meinen Senf dazu, denn 'ein bisschen' ist
mir zu wenig. ;-)

Ich habe zwar auf Dein Posting geantwortet, es war aber nicht direkt
an Dich gerichtet. Naja ein wenig doch, denn ich dachte, dass auch Du
CopyFromRecordset nicht kennst, da Du diese Funktion nicht erwähnt
hast.
Post by Susanne Wenzel
Post by Josef Poetzl
Wie wäre es mit CopyFromRecordset
Genau das ist meine persönliche Methode :-)...
Wenn Du das gepostet hättest, dann hätte ich mir meine Antwort sparen
können. ;-)
Post by Susanne Wenzel
Ich wollte aber Stefan nicht einfach etwas völlig anderes aufdrängen,
Aufdrängen wollte ich es ihm auch nicht. Hoffe nicht, dass dieser
Eindruck entstanden ist. Ich wollte Stefan und Dir ;-) nur eine andere
Variante aufzeigen.
Post by Susanne Wenzel
sondern ihm bei seinem Weg versuchen, behilflich zu sein (mir persönlich
hilft es auch mehr, wenn ich die Fehler in meinem selbst gefundenen Weg
finde und danach vielleicht auf eine andere Lösung zugehe, weil ich jetzt
erkennen kann, dass mein ursprünglicher Ansatz nicht optimal war).
Dafür ist aber ein Hinweis, dass es auch einen andere Weg gibt, ganz
nützlich, oder was meinst Du?
Post by Susanne Wenzel
Das ist allerdings eine ganz grundsätzliche Frage, über die ich schon mit
diversen Leuten sehr intensiv diskutiert habe: wenn ich Hilfe suche, welche
Sorte von Antwort möchte ich eigentlich haben?
Möglicher Weg, damit Du keine Lösung gepostet bekommst:
In die Signatur schreibst Du:
"Bitte keine von meinem angesprochenen Lösungsweg abweichende
Möglichkeiten aufzeigen."

;-))
Post by Susanne Wenzel
Post by Josef Poetzl
Da die Output-Methode IMHO diesbezüglich keine brauchbaren Parameter
bereitstellt, fällt mir nur ein Würgaround in der Art ein, dass ...
Das war der Grund, warum ich auf auf Dein Schreiben geantwortet habe.

Ich persönlich vermeide Antworten wie: "Mit Deiner derzeitigen Methode
wird das vermutlich nicht gehen. Und wenn, dann musst Du folgenden
Umweg machen. ...".
(Besonders dann wenn ich einen anderen Lösungsweg kenne.)

IMO sollte man den Fragesteller nicht in die Irre führen, nur damit er
später selbst drauf kommt, dass sein Weg nicht ans Ziel führt, und
dann trotzdem wieder Nachfragen muss, ob es denn keinen anderen
Lösungsweg gibt. So ein Vorgehen ist imo für den Fragesteller unnötige
Zeitverschwendung. Da beschreibe ich lieber gleich einen für mich
'sinnvolleren' Lösungs*ansatz*, den der Fragesteller ausprobieren
kann.
Das obige Vorgehen beschreibt natürlich nur meine persönliche Meinung,
ich will damit nicht /Dein/ Beantwortungsverhalten in Frage stellen
oder Dich davon abbringen.

Generell versuche ich vollständigen Code zu vermeiden. In einigen
Fällen sind aber Bruchstücke einfach nicht verständlich genug.
Für mich ist Code eine einfache und imo auch leicht nachvollziehbare
Art eine Vorgehensschema zu beschreiben.

Ok, in meiner vorigen Antwort hätte ich nur auf CopyFromRecordset
hinweisen können, doch was wäre die Folge gewesen? - Vermutlich die
Folgefrage von Stefan: Wie funktioniert....

mfg
Josef
--
EPT: (Access Error Prevention Table) http://access.joposol.com/
FAQ: (Access-FAQ von Karl Donaubauer) http://www.donkarl.com/
Susanne Wenzel
2004-03-07 09:32:18 UTC
Permalink
Hallo Josef,
Post by Josef Poetzl
Dann geb ich auch nochmal meinen Senf dazu, denn 'ein bisschen' ist
mir zu wenig. ;-)
Ich habe zwar auf Dein Posting geantwortet, es war aber nicht direkt
an Dich gerichtet....
das hatte ich mir schon so gedacht :-)
Post by Josef Poetzl
CopyFromRecordset nicht kennst, da Du diese Funktion nicht erwähnt
hast.
die hatte ich zum einen nicht erwähnt, weil Stefan schrieb:
[Zitat]
"ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert."
[Zitat Ende]

aus diesen Zeilen hatte ich interpretiert, dass er prinzipiell eine Lösung
hat, mit der er zufrieden ist, es fehlt ihm halt nur noch das I-Pünktchen,
dass er die Abfragen gerne alle in einer einzigen Mappe haben möchte. Mit
CopyFromRecordset müsste er (meine Einschätzung) im Prinzip seine Routinen
komplett neu programmieren und ich hatte bei ihm nicht herausgelesen, dass
er nach einem neuen Ansatz sucht.
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Wie wäre es mit CopyFromRecordset
Genau das ist meine persönliche Methode :-)...
Wenn Du das gepostet hättest, dann hätte ich mir meine Antwort sparen
können. ;-)
:-)
Post by Josef Poetzl
Post by Susanne Wenzel
Ich wollte aber Stefan nicht einfach etwas völlig anderes aufdrängen,
Aufdrängen wollte ich es ihm auch nicht. Hoffe nicht, dass dieser
Eindruck entstanden ist. Ich wollte Stefan und Dir ;-) nur eine andere
Variante aufzeigen.
Post by Susanne Wenzel
sondern ihm bei seinem Weg versuchen, behilflich zu sein (mir
persönlich hilft es auch mehr, wenn ich die Fehler in meinem selbst
gefundenen Weg finde und danach vielleicht auf eine andere Lösung
zugehe, weil ich jetzt erkennen kann, dass mein ursprünglicher
Ansatz nicht optimal war).
Dafür ist aber ein Hinweis, dass es auch einen andere Weg gibt, ganz
nützlich, oder was meinst Du?
jetzt wird es schwierig für mich, klarzumachen, was ich damit meinte (und ob
das für die NG wirklich wichtig ist, wage ich mal zu bezweifeln :-), aber wo
ich schon mal dabei bin...
... springe ich gleich noch mal ein paar Absätze weiter
Post by Josef Poetzl
Post by Susanne Wenzel
Das ist allerdings eine ganz grundsätzliche Frage, über die ich
schon mit diversen Leuten sehr intensiv diskutiert habe: wenn ich
Hilfe suche, welche Sorte von Antwort möchte ich eigentlich haben?
"Bitte keine von meinem angesprochenen Lösungsweg abweichende
Möglichkeiten aufzeigen."
;-))
(kleiner Einschub: wenn ich mal eine Frage haben sollte, werde ich darüber
nachdenken :-))
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Da die Output-Methode IMHO diesbezüglich keine brauchbaren
Parameter bereitstellt, fällt mir nur ein Würgaround in der Art
ein, dass ...
Das war der Grund, warum ich auf auf Dein Schreiben geantwortet habe.
Ich persönlich vermeide Antworten wie: "Mit Deiner derzeitigen Methode
wird das vermutlich nicht gehen. Und wenn, dann musst Du folgenden
Umweg machen. ...".
(Besonders dann wenn ich einen anderen Lösungsweg kenne.)
IMO sollte man den Fragesteller nicht in die Irre führen, nur damit er
später selbst drauf kommt, dass sein Weg nicht ans Ziel führt, und
dann trotzdem wieder Nachfragen muss, ob es denn keinen anderen
Lösungsweg gibt. So ein Vorgehen ist imo für den Fragesteller unnötige
Zeitverschwendung. Da beschreibe ich lieber gleich einen für mich
'sinnvolleren' Lösungs*ansatz*, den der Fragesteller ausprobieren
kann.
Das obige Vorgehen beschreibt natürlich nur meine persönliche Meinung,
ich will damit nicht /Dein/ Beantwortungsverhalten in Frage stellen
oder Dich davon abbringen.
so, hier geht es weiter :-)
In einer NG ist es so gut wie unmöglich, festzustellen, mit welcher "Sorte"
Fragesteller man es zu tun hat. Wenn das jemand ist, der einfach nur
möglichst schnell und einfach eine Lösung haben will, die er dann in seine
Anwendung überträgt und gut ist (vermutlich ist das bei der Mehrzahl so),
dann ist es natürlich am besten, wenn die Antworten so sind wie Deine. Es
könnte aber auch die Sorte geben, die sich auf das Programm/in die
Programmierung stürzt und tüftelt und bastelt und sich selbst die Routinen
erarbeitet und an dem ganzen Vorgehen auch noch Spaß hat (eben halt meine
Sorte :-)), kommt dann zu der Stelle, wo das I-Tüpfelchen noch fehlt, fragt
danach und muss dann lesen, dass alles, was er gemacht hat, eigentlich
nichts taugt (das ist jetzt überspitzt dargestellt, bitte nicht
mißverstehen)...
Post by Josef Poetzl
Generell versuche ich vollständigen Code zu vermeiden. In einigen
Fällen sind aber Bruchstücke einfach nicht verständlich genug.
Für mich ist Code eine einfache und imo auch leicht nachvollziehbare
Art eine Vorgehensschema zu beschreiben.
Ok, in meiner vorigen Antwort hätte ich nur auf CopyFromRecordset
hinweisen können, doch was wäre die Folge gewesen? - Vermutlich die
Folgefrage von Stefan: Wie funktioniert....
Bestimmt, wenn er zur von mir oben definierten ersten Sorte Fragesteller
gehört.

Wäre Stefan von meiner zweiten Sorte, könnte die Antwort sein: "Danke für
das Stichwort, ich werde mich gleich mal daran machen" (und begibt sich auf
Entdeckungsreise ;-))

Wie ich schon weiter oben sagte:
ich vermute mal, dass es hier viele viele Fragesteller der ersten und sehr
sehr wenige Fragesteller der zweiten Sorte gibt, insofern ist meine Art hier
sicher nicht so gefragt. Das ist auch ein Grund für mich, weswegen ich
selten antworte und in der Regel auch nur auf Postings, die seit mindestens
2 Tagen nicht eine einzige Antwort bekommen haben (damit sie wenigstens
überhaupt eine Antwort haben).

Noch eine kleine Ergänzung: wenn ich mir sicher bin, dass einfach nur eine
Lösung (auch mit komplettem Code) gefragt ist, liefere ich auch das, wenn
ich kann. Und in die Irre führen will ich bestimmt niemanden, ich hoffe, Du
glaubst mir das :-)

So, das solls jetzt gewesen sein...seufz... ich habe wahrscheinlich wieder
nicht vernünftig ausdrücken können, worauf es mir ankommt, aber seis drum.

Ich hoffe, Du redest trotzdem noch mit mir :-)

Viele Grüße von schätzungsweise 1300 km weiter nördlich...
Susanne
Susanne Wenzel
2004-03-07 09:33:27 UTC
Permalink
Hallo Josef,
Post by Josef Poetzl
Dann geb ich auch nochmal meinen Senf dazu, denn 'ein bisschen' ist
mir zu wenig. ;-)
Ich habe zwar auf Dein Posting geantwortet, es war aber nicht direkt
an Dich gerichtet....
das hatte ich mir schon so gedacht :-)
Post by Josef Poetzl
CopyFromRecordset nicht kennst, da Du diese Funktion nicht erwähnt
hast.
die hatte ich zum einen nicht erwähnt, weil Stefan schrieb:
[Zitat]
"ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert."
[Zitat Ende]

aus diesen Zeilen hatte ich interpretiert, dass er prinzipiell eine Lösung
hat, mit der er zufrieden ist, es fehlt ihm halt nur noch das I-Pünktchen,
dass er die Abfragen gerne alle in einer einzigen Mappe haben möchte. Mit
CopyFromRecordset müsste er (meine Einschätzung) im Prinzip seine Routinen
komplett neu programmieren und ich hatte bei ihm nicht herausgelesen, dass
er nach einem neuen Ansatz sucht.
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Wie wäre es mit CopyFromRecordset
Genau das ist meine persönliche Methode :-)...
Wenn Du das gepostet hättest, dann hätte ich mir meine Antwort sparen
können. ;-)
:-)
Post by Josef Poetzl
Post by Susanne Wenzel
Ich wollte aber Stefan nicht einfach etwas völlig anderes aufdrängen,
Aufdrängen wollte ich es ihm auch nicht. Hoffe nicht, dass dieser
Eindruck entstanden ist. Ich wollte Stefan und Dir ;-) nur eine andere
Variante aufzeigen.
Post by Susanne Wenzel
sondern ihm bei seinem Weg versuchen, behilflich zu sein (mir
persönlich hilft es auch mehr, wenn ich die Fehler in meinem selbst
gefundenen Weg finde und danach vielleicht auf eine andere Lösung
zugehe, weil ich jetzt erkennen kann, dass mein ursprünglicher
Ansatz nicht optimal war).
Dafür ist aber ein Hinweis, dass es auch einen andere Weg gibt, ganz
nützlich, oder was meinst Du?
jetzt wird es schwierig für mich, klarzumachen, was ich damit meinte (und ob
das für die NG wirklich wichtig ist, wage ich mal zu bezweifeln :-), aber wo
ich schon mal dabei bin...
... springe ich gleich noch mal ein paar Absätze weiter
Post by Josef Poetzl
Post by Susanne Wenzel
Das ist allerdings eine ganz grundsätzliche Frage, über die ich
schon mit diversen Leuten sehr intensiv diskutiert habe: wenn ich
Hilfe suche, welche Sorte von Antwort möchte ich eigentlich haben?
"Bitte keine von meinem angesprochenen Lösungsweg abweichende
Möglichkeiten aufzeigen."
;-))
(kleiner Einschub: wenn ich mal eine Frage haben sollte, werde ich darüber
nachdenken :-))
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Da die Output-Methode IMHO diesbezüglich keine brauchbaren
Parameter bereitstellt, fällt mir nur ein Würgaround in der Art
ein, dass ...
Das war der Grund, warum ich auf auf Dein Schreiben geantwortet habe.
Ich persönlich vermeide Antworten wie: "Mit Deiner derzeitigen Methode
wird das vermutlich nicht gehen. Und wenn, dann musst Du folgenden
Umweg machen. ...".
(Besonders dann wenn ich einen anderen Lösungsweg kenne.)
IMO sollte man den Fragesteller nicht in die Irre führen, nur damit er
später selbst drauf kommt, dass sein Weg nicht ans Ziel führt, und
dann trotzdem wieder Nachfragen muss, ob es denn keinen anderen
Lösungsweg gibt. So ein Vorgehen ist imo für den Fragesteller unnötige
Zeitverschwendung. Da beschreibe ich lieber gleich einen für mich
'sinnvolleren' Lösungs*ansatz*, den der Fragesteller ausprobieren
kann.
Das obige Vorgehen beschreibt natürlich nur meine persönliche Meinung,
ich will damit nicht /Dein/ Beantwortungsverhalten in Frage stellen
oder Dich davon abbringen.
so, hier geht es weiter :-)
In einer NG ist es so gut wie unmöglich, festzustellen, mit welcher "Sorte"
Fragesteller man es zu tun hat. Wenn das jemand ist, der einfach nur
möglichst schnell und einfach eine Lösung haben will, die er dann in seine
Anwendung überträgt und gut ist (vermutlich ist das bei der Mehrzahl so),
dann ist es natürlich am besten, wenn die Antworten so sind wie Deine. Es
könnte aber auch die Sorte geben, die sich auf das Programm/in die
Programmierung stürzt und tüftelt und bastelt und sich selbst die Routinen
erarbeitet und an dem ganzen Vorgehen auch noch Spaß hat (eben halt meine
Sorte :-)), kommt dann zu der Stelle, wo das I-Tüpfelchen noch fehlt, fragt
danach und muss dann lesen, dass alles, was er gemacht hat, eigentlich
nichts taugt (das ist jetzt überspitzt dargestellt, bitte nicht
mißverstehen)...
Post by Josef Poetzl
Generell versuche ich vollständigen Code zu vermeiden. In einigen
Fällen sind aber Bruchstücke einfach nicht verständlich genug.
Für mich ist Code eine einfache und imo auch leicht nachvollziehbare
Art eine Vorgehensschema zu beschreiben.
Ok, in meiner vorigen Antwort hätte ich nur auf CopyFromRecordset
hinweisen können, doch was wäre die Folge gewesen? - Vermutlich die
Folgefrage von Stefan: Wie funktioniert....
Bestimmt, wenn er zur von mir oben definierten ersten Sorte Fragesteller
gehört.

Wäre Stefan von meiner zweiten Sorte, könnte die Antwort sein: "Danke für
das Stichwort, ich werde mich gleich mal daran machen" (und begibt sich auf
Entdeckungsreise ;-))

Wie ich schon weiter oben sagte:
ich vermute mal, dass es hier viele viele Fragesteller der ersten und sehr
sehr wenige Fragesteller der zweiten Sorte gibt, insofern ist meine Art hier
sicher nicht so gefragt. Das ist auch ein Grund für mich, weswegen ich
selten antworte und in der Regel auch nur auf Postings, die seit mindestens
2 Tagen nicht eine einzige Antwort bekommen haben (damit sie wenigstens
überhaupt eine Antwort haben).

Noch eine kleine Ergänzung: wenn ich mir sicher bin, dass einfach nur eine
Lösung (auch mit komplettem Code) gefragt ist, liefere ich auch das, wenn
ich kann. Und in die Irre führen will ich bestimmt niemanden, ich hoffe, Du
glaubst mir das :-)

So, das solls jetzt gewesen sein...seufz... ich habe wahrscheinlich wieder
nicht vernünftig ausdrücken können, worauf es mir ankommt, aber seis drum.

Ich hoffe, Du redest trotzdem noch mit mir :-)

Viele Grüße von schätzungsweise 1300 km weiter nördlich...
Susanne
Susanne Wenzel
2004-03-07 09:33:45 UTC
Permalink
Hallo Josef,
Post by Josef Poetzl
Dann geb ich auch nochmal meinen Senf dazu, denn 'ein bisschen' ist
mir zu wenig. ;-)
Ich habe zwar auf Dein Posting geantwortet, es war aber nicht direkt
an Dich gerichtet....
das hatte ich mir schon so gedacht :-)
Post by Josef Poetzl
CopyFromRecordset nicht kennst, da Du diese Funktion nicht erwähnt
hast.
die hatte ich zum einen nicht erwähnt, weil Stefan schrieb:
[Zitat]
"ich habe mehrere Abfragen die ich mit DoCmd.OutputTo
acOutputQuery als Excel-Tabelle exportiere, was auch gut
funktioniert."
[Zitat Ende]

aus diesen Zeilen hatte ich interpretiert, dass er prinzipiell eine Lösung
hat, mit der er zufrieden ist, es fehlt ihm halt nur noch das I-Pünktchen,
dass er die Abfragen gerne alle in einer einzigen Mappe haben möchte. Mit
CopyFromRecordset müsste er (meine Einschätzung) im Prinzip seine Routinen
komplett neu programmieren und ich hatte bei ihm nicht herausgelesen, dass
er nach einem neuen Ansatz sucht.
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Wie wäre es mit CopyFromRecordset
Genau das ist meine persönliche Methode :-)...
Wenn Du das gepostet hättest, dann hätte ich mir meine Antwort sparen
können. ;-)
:-)
Post by Josef Poetzl
Post by Susanne Wenzel
Ich wollte aber Stefan nicht einfach etwas völlig anderes aufdrängen,
Aufdrängen wollte ich es ihm auch nicht. Hoffe nicht, dass dieser
Eindruck entstanden ist. Ich wollte Stefan und Dir ;-) nur eine andere
Variante aufzeigen.
Post by Susanne Wenzel
sondern ihm bei seinem Weg versuchen, behilflich zu sein (mir
persönlich hilft es auch mehr, wenn ich die Fehler in meinem selbst
gefundenen Weg finde und danach vielleicht auf eine andere Lösung
zugehe, weil ich jetzt erkennen kann, dass mein ursprünglicher
Ansatz nicht optimal war).
Dafür ist aber ein Hinweis, dass es auch einen andere Weg gibt, ganz
nützlich, oder was meinst Du?
jetzt wird es schwierig für mich, klarzumachen, was ich damit meinte (und ob
das für die NG wirklich wichtig ist, wage ich mal zu bezweifeln :-), aber wo
ich schon mal dabei bin...
... springe ich gleich noch mal ein paar Absätze weiter
Post by Josef Poetzl
Post by Susanne Wenzel
Das ist allerdings eine ganz grundsätzliche Frage, über die ich
schon mit diversen Leuten sehr intensiv diskutiert habe: wenn ich
Hilfe suche, welche Sorte von Antwort möchte ich eigentlich haben?
"Bitte keine von meinem angesprochenen Lösungsweg abweichende
Möglichkeiten aufzeigen."
;-))
(kleiner Einschub: wenn ich mal eine Frage haben sollte, werde ich darüber
nachdenken :-))
Post by Josef Poetzl
Post by Susanne Wenzel
Post by Josef Poetzl
Da die Output-Methode IMHO diesbezüglich keine brauchbaren
Parameter bereitstellt, fällt mir nur ein Würgaround in der Art
ein, dass ...
Das war der Grund, warum ich auf auf Dein Schreiben geantwortet habe.
Ich persönlich vermeide Antworten wie: "Mit Deiner derzeitigen Methode
wird das vermutlich nicht gehen. Und wenn, dann musst Du folgenden
Umweg machen. ...".
(Besonders dann wenn ich einen anderen Lösungsweg kenne.)
IMO sollte man den Fragesteller nicht in die Irre führen, nur damit er
später selbst drauf kommt, dass sein Weg nicht ans Ziel führt, und
dann trotzdem wieder Nachfragen muss, ob es denn keinen anderen
Lösungsweg gibt. So ein Vorgehen ist imo für den Fragesteller unnötige
Zeitverschwendung. Da beschreibe ich lieber gleich einen für mich
'sinnvolleren' Lösungs*ansatz*, den der Fragesteller ausprobieren
kann.
Das obige Vorgehen beschreibt natürlich nur meine persönliche Meinung,
ich will damit nicht /Dein/ Beantwortungsverhalten in Frage stellen
oder Dich davon abbringen.
so, hier geht es weiter :-)
In einer NG ist es so gut wie unmöglich, festzustellen, mit welcher "Sorte"
Fragesteller man es zu tun hat. Wenn das jemand ist, der einfach nur
möglichst schnell und einfach eine Lösung haben will, die er dann in seine
Anwendung überträgt und gut ist (vermutlich ist das bei der Mehrzahl so),
dann ist es natürlich am besten, wenn die Antworten so sind wie Deine. Es
könnte aber auch die Sorte geben, die sich auf das Programm/in die
Programmierung stürzt und tüftelt und bastelt und sich selbst die Routinen
erarbeitet und an dem ganzen Vorgehen auch noch Spaß hat (eben halt meine
Sorte :-)), kommt dann zu der Stelle, wo das I-Tüpfelchen noch fehlt, fragt
danach und muss dann lesen, dass alles, was er gemacht hat, eigentlich
nichts taugt (das ist jetzt überspitzt dargestellt, bitte nicht
mißverstehen)...
Post by Josef Poetzl
Generell versuche ich vollständigen Code zu vermeiden. In einigen
Fällen sind aber Bruchstücke einfach nicht verständlich genug.
Für mich ist Code eine einfache und imo auch leicht nachvollziehbare
Art eine Vorgehensschema zu beschreiben.
Ok, in meiner vorigen Antwort hätte ich nur auf CopyFromRecordset
hinweisen können, doch was wäre die Folge gewesen? - Vermutlich die
Folgefrage von Stefan: Wie funktioniert....
Bestimmt, wenn er zur von mir oben definierten ersten Sorte Fragesteller
gehört.

Wäre Stefan von meiner zweiten Sorte, könnte die Antwort sein: "Danke für
das Stichwort, ich werde mich gleich mal daran machen" (und begibt sich auf
Entdeckungsreise ;-))

Wie ich schon weiter oben sagte:
ich vermute mal, dass es hier viele viele Fragesteller der ersten und sehr
sehr wenige Fragesteller der zweiten Sorte gibt, insofern ist meine Art hier
sicher nicht so gefragt. Das ist auch ein Grund für mich, weswegen ich
selten antworte und in der Regel auch nur auf Postings, die seit mindestens
2 Tagen nicht eine einzige Antwort bekommen haben (damit sie wenigstens
überhaupt eine Antwort haben).

Noch eine kleine Ergänzung: wenn ich mir sicher bin, dass einfach nur eine
Lösung (auch mit komplettem Code) gefragt ist, liefere ich auch das, wenn
ich kann. Und in die Irre führen will ich bestimmt niemanden, ich hoffe, Du
glaubst mir das :-)

So, das solls jetzt gewesen sein...seufz... ich habe wahrscheinlich wieder
nicht vernünftig ausdrücken können, worauf es mir ankommt, aber seis drum.

Ich hoffe, Du redest trotzdem noch mit mir :-)

Viele Grüße von schätzungsweise 1300 km weiter nördlich...
Susanne

Loading...