Tabelle aus Access nach Excel exportieren
Nur mit SQL-Abfrage
Hi,
ich soll für die Firma in Access eine SQL-Abfrage schreiben, die bestimmte Datensätze einer Datenbank in eine Excel-Tabelle exportiert. Dies soll alleine mit SQL geschehen und möglichst ohne VB bzw. VBA. Die Abfrage zur Auswahl der Datensätze habe ich ja schon hinbekommen aber an dem Export hänge ich zu Zeit.
Was ich jetzt schon in der angesprochenen Abfrage stehen habe ist folgendes,
SELECT Namen.Nachname, Namen.Vorname, Namen.Email
FROM Namen
WHERE Geloescht = False
Vielleicht noch zur Info diese Excel oder CSV-Datei soll anschließend in MS Outlook, als Verteilerliste eingelesen werden.
Bitte helft mir dabei weiter, ist wirklich dringend. Brauche das bis morgen. Danke
Hi,
ich soll für die Firma in Access eine SQL-Abfrage schreiben, die bestimmte Datensätze einer Datenbank in eine Excel-Tabelle exportiert. Dies soll alleine mit SQL geschehen und möglichst ohne VB bzw. VBA. Die Abfrage zur Auswahl der Datensätze habe ich ja schon hinbekommen aber an dem Export hänge ich zu Zeit.
Was ich jetzt schon in der angesprochenen Abfrage stehen habe ist folgendes,
SELECT Namen.Nachname, Namen.Vorname, Namen.Email
FROM Namen
WHERE Geloescht = False
Vielleicht noch zur Info diese Excel oder CSV-Datei soll anschließend in MS Outlook, als Verteilerliste eingelesen werden.
Bitte helft mir dabei weiter, ist wirklich dringend. Brauche das bis morgen. Danke
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 11634
Url: https://administrator.de/forum/tabelle-aus-access-nach-excel-exportieren-11634.html
Ausgedruckt am: 23.12.2024 um 16:12 Uhr
6 Kommentare
Neuester Kommentar
Hi,
vielleicht habe ich dich ja auch falsch verstanden -
aber wenn du eine fertige Abfrage hast, kannst du die doch direkt nach Excel exportieren.
Psycho
vielleicht habe ich dich ja auch falsch verstanden -
aber wenn du eine fertige Abfrage hast, kannst du die doch direkt nach Excel exportieren.
Psycho
Hallo,
bin kein VBA-Mensch, aber ich habe folgendes ausprobiert (auf Access 2002). Vielleicht ist es ja die Lösung:
1. Erstelle in Access eine Abfrage, die genau das von Dir erarbeitete SQL-Statement umsetzt.
2. Dann legst Du in deinem Formular einen Button an. Falls der Assistent dann erscheint, klicke ihn weg.
3. Mit der rechten Maustaste auf den Button und "Ereignis" auswählen
4. Die Art des Ereignis ist "Makro-Generator"
5. Nun öffnet sich der Makro-Generator
6. Im Feld "Aktion" kannst Du nun nacheinander abzuarbeitende Aktionen (stehen dann in der Reihenfolge untereinander) zum Abarbeiten auswählen. Diese werden dann abgearbeitet wenn der Button gedrückt wird.
7. Wähle als Aktion "AusgabeIn" aus. Du musst hier jetzt einige Angaben machen:
- Unter "Objekttyp" wählst Du "Abfrage" aus
- Unter "Objektname" den Namen der oben erstellten Abfrage, die das von Dir gewünschte SQL-Statement umsetzt
- "Ausgabeformat" und "Ausgabedatei" regelt, in welchem Format es ausgegeben werden soll (Excel, HTML, TXT und mehr möglich) und Du kannst Speicherpfad und Dateiname angeben.
8. Als zweite Aktion kannst Du jetzt noch "AusführenAnwendung" nehmen und als Befehlszeile "C:\Pfad\zu\Excel eben_exportierte_datei.xls"
Dann wird die Datei direkt nach dem Knopfdruck auch in Excel geöffnet.
Wenn Du etwas anderes willst, lässt es sich sicherlich auf auf ähnlichem wege zusammenschrauben. Einfach ausprobieren. Hängt in Deinem Fall schwer davon ab, ob Outlook einen Kommandozeilen-Switch für den Import von externen Daten in eine Verteilerliste hat - nur dann ließe sich auch dieser Schritt automatisieren.
Hope it helps!
Gruß,
TIM
bin kein VBA-Mensch, aber ich habe folgendes ausprobiert (auf Access 2002). Vielleicht ist es ja die Lösung:
1. Erstelle in Access eine Abfrage, die genau das von Dir erarbeitete SQL-Statement umsetzt.
2. Dann legst Du in deinem Formular einen Button an. Falls der Assistent dann erscheint, klicke ihn weg.
3. Mit der rechten Maustaste auf den Button und "Ereignis" auswählen
4. Die Art des Ereignis ist "Makro-Generator"
5. Nun öffnet sich der Makro-Generator
6. Im Feld "Aktion" kannst Du nun nacheinander abzuarbeitende Aktionen (stehen dann in der Reihenfolge untereinander) zum Abarbeiten auswählen. Diese werden dann abgearbeitet wenn der Button gedrückt wird.
7. Wähle als Aktion "AusgabeIn" aus. Du musst hier jetzt einige Angaben machen:
- Unter "Objekttyp" wählst Du "Abfrage" aus
- Unter "Objektname" den Namen der oben erstellten Abfrage, die das von Dir gewünschte SQL-Statement umsetzt
- "Ausgabeformat" und "Ausgabedatei" regelt, in welchem Format es ausgegeben werden soll (Excel, HTML, TXT und mehr möglich) und Du kannst Speicherpfad und Dateiname angeben.
8. Als zweite Aktion kannst Du jetzt noch "AusführenAnwendung" nehmen und als Befehlszeile "C:\Pfad\zu\Excel eben_exportierte_datei.xls"
Dann wird die Datei direkt nach dem Knopfdruck auch in Excel geöffnet.
Wenn Du etwas anderes willst, lässt es sich sicherlich auf auf ähnlichem wege zusammenschrauben. Einfach ausprobieren. Hängt in Deinem Fall schwer davon ab, ob Outlook einen Kommandozeilen-Switch für den Import von externen Daten in eine Verteilerliste hat - nur dann ließe sich auch dieser Schritt automatisieren.
Hope it helps!
Gruß,
TIM
Hallo,
Die Dateien müßten zu diesem Zweck allerdings vernünftig formatiert sein. Entweder in einer Textdatei und nur durch Komma getrennt
Also ich denke, wir haben hier zwei Problemkreise:
1. Formatierung der Ausgabe
Wie die Ausgabe von der reinen Anordnung formatiert ist, hängt natürlich von Deiner SQL-Abfrage ab.
ergibt von der Reihenfolge der Ausgane in Excel-Datei oder was auch immer
Aus Erfahrung: Wenn man kommaseparierte Dateien in ein Mailprogramm importiert, kommt es ganz genau darauf an, in welcher Reihenfolge die Infos kommen: Manches Programm will die Einträge so:
Ein anderes Mailprogramm will es vielleicht ganz anders. Das solltest Du schon vor der Erstellung der SQL-Abfrage klären!
2. Import nach Outlook
Ich habe Outlook eben mal installiert, habe aber nicht einmal die Möglichkeit gefunden, Verteilerlisten zu im- oder zu exportieren. Man kann anscheinend nur Verteilerlisten aus dem Adressbuch zusammenklicken. Die Möglichkeit, eine bestehende Verteilerliste in eine Excel-Datei, etc. zu exportieren wäre sehr spannend, weil man dann sofort sehen könnte, in welcher Reihenfolge Outllok die Informationen will.
Wenn Outlook nur csv-Dateien importieren kann, dann kannst Du in Excel ganz einfach ein Makro erstellen:
- Die aus Access exportierte xls-Datei öffnen
- "Extras" > "Makro" > "Aufzeichnen"
- Unter "Makro Speichern in" würde ich eher "Persönliche Makro-Arbeitsmappe" nehmen, da das Makro dann unabhängig von der xls-Datei gespeichert wird. Wenn Du es in der xls-Datei speichern würdest, wäre es weg, wenn auch die Datei gelöscht oder überschrieben wird.
- Nach dem Aufzeichnen speicherst Du die Arbeitsmappe als csv-Datei und stoppst die Aufnahme. Per makro kann diese Aktion dann auf Knopfdruck wiederholt werden.
Wie man ein Makro automatisch startet, weiß ich nicht, aber Google ist hierbei Dein Freund (oder natürlich dieses Forum).
Ich bezweifel aber insgesamt, dass man diese ganze Aktion (die sich dann über drei Programme, Outlook inklusive, verteilt) wirklich mit einem Knopfdruck automatisieren kann!
Gruß,
TIM
Also ich denke, wir haben hier zwei Problemkreise:
1. Formatierung der Ausgabe
Wie die Ausgabe von der reinen Anordnung formatiert ist, hängt natürlich von Deiner SQL-Abfrage ab.
Select KUNDEN.name, KUNDEN.email FROM KUNDEN;
ergibt von der Reihenfolge der Ausgane in Excel-Datei oder was auch immer
Herr Müller,mueller@firma1.de
Herr Maier,maier@firma2.de
Aus Erfahrung: Wenn man kommaseparierte Dateien in ein Mailprogramm importiert, kommt es ganz genau darauf an, in welcher Reihenfolge die Infos kommen: Manches Programm will die Einträge so:
// Ein Eintrag pro Zeile
Name, Adresse, Telefon, Email, Firma
Ein anderes Mailprogramm will es vielleicht ganz anders. Das solltest Du schon vor der Erstellung der SQL-Abfrage klären!
2. Import nach Outlook
Ich habe Outlook eben mal installiert, habe aber nicht einmal die Möglichkeit gefunden, Verteilerlisten zu im- oder zu exportieren. Man kann anscheinend nur Verteilerlisten aus dem Adressbuch zusammenklicken. Die Möglichkeit, eine bestehende Verteilerliste in eine Excel-Datei, etc. zu exportieren wäre sehr spannend, weil man dann sofort sehen könnte, in welcher Reihenfolge Outllok die Informationen will.
Wenn Outlook nur csv-Dateien importieren kann, dann kannst Du in Excel ganz einfach ein Makro erstellen:
- Die aus Access exportierte xls-Datei öffnen
- "Extras" > "Makro" > "Aufzeichnen"
- Unter "Makro Speichern in" würde ich eher "Persönliche Makro-Arbeitsmappe" nehmen, da das Makro dann unabhängig von der xls-Datei gespeichert wird. Wenn Du es in der xls-Datei speichern würdest, wäre es weg, wenn auch die Datei gelöscht oder überschrieben wird.
- Nach dem Aufzeichnen speicherst Du die Arbeitsmappe als csv-Datei und stoppst die Aufnahme. Per makro kann diese Aktion dann auf Knopfdruck wiederholt werden.
Wie man ein Makro automatisch startet, weiß ich nicht, aber Google ist hierbei Dein Freund (oder natürlich dieses Forum).
Ich bezweifel aber insgesamt, dass man diese ganze Aktion (die sich dann über drei Programme, Outlook inklusive, verteilt) wirklich mit einem Knopfdruck automatisieren kann!
Gruß,
TIM