Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

einzelne daten aus access in excel einlesen





Frage

Hallo, hab´s schonmal probiert, hat aber nicht funktioniert. Hier nochmal mein Problem: Habe in Excel in den Feldern A1..A500 (könnte auch mehr werden) Bestellnummern (in Access "BestellNr") hinterlegt. Nun möchte ich aus der Access-Datei c:\datenbank\Artikel.mdb aus der Tabelle "Artikel" (es befinden sich mehrere Tabellen in der Datenbank) die dazugehörigen Daten "RabattGr" (in Spalte B), "Brutto" (in Spalte C), "EKMulti" (in Spalte D) und "Netto" (in Spalte E) ausgeben und möglichst bei jedem Aufruf der Excel Datei aktualisieren. Für Eure Mühe danke ich schon mal im Voraus Micico

Antwort 1 von heizeisen

Hi,

erst mal die Gegenfragen:
- welche Access und welche Excelversion?
-Access oder Excel im Netzwerk?
-Datenzugriff via ODBC?

Grundsätzlich wirst Du nicht über die Verknüpfung/Import einer/mehrerer Tabellen sondern einer Abfrage zum Ziel kommen.

Grüße
He

Antwort 2 von micico

- Access und Excel 2002
- kein Netzwerk
- ???? keine Ahnung

ich muß zugeben, dass ich keine richtige Ahnung von VBA habe. Daher die wie ich glaube genaue Beschreibung in der Hoffnung, dass mir jemand ne Lösung für mein Problem schreibt. Ich hab´s vorher mit einer eigenen Lösung probiert. Ich habe die benötigten Bestellnummern in Access mit einem "x" in einer unbedeutenden Spalte markiert und in Excel unter Externe Daten importieren selektiert. Das Problem ist nur das ca. 8 Großhändler monatlich ein Update vornehmen und natürlich meine Markierungen meist weg sind. Es ist sehr mühsam alle 2 Wochen die benötigten ca. 500 Bestellnummern aus insgesamt ca. 500.000 Artikeln wieder neu zu markieren.

Antwort 3 von heizeisen

also mal grundsätzlich, Du bekommst viele Auswertungen, die Du ggf. in Ecxel machen würdest auch in Access hin! Ohne lang auszulesen.

Hast Du die DB geschrieben? Ich denke mal nein.
Der einfachste Weg ist, den Programmierer zu Fragen ob er die DB erweitert. ( Auch wenn das nicht das ist was Du hören willst).
Weg 2 Du erstellst eine Abfrage in der alle relevanten Daten "abgefragt" werden und bezeihst Dich in Deiner Verknüpfung in Excel auf diese Abfrage und nicht auch die Tabellen.

mehr kann ich erst helfen, wenn cih mehr über die Strukur der DB weiss.

Grüße
He

Antwort 4 von micico

Okay, die DB wird aus Datanormdateien erstellt und ist ein Teil meiner Software zur Erstellung von Angeboten, Rechnungen etc. speziell für Handwerkerbetriebe erstellt.

Ich habe mir in Excel eine eigene Preisliste erstellt. Heirfür habe ich mir unter Anderem Pakete geschnürt, die aus mehreren Bestellnummern bestehen.

Die Access-Datenbank beinhaltet mehrere Tabellen. Eine Tabelle davon nennt sich Artikel. Hier sind Spalten mit den Artikeldaten hinterlegt. BestellNr in Spalte 2 nur mit Zahlen oder auch Zahlen und Buchstaben kombiniert oder nur Buchstaben in unterschiedlichen Längen, Brutto in Spalte 11 als Währung, Netto in Spalte 12 als Währung, EKMulti in Spalte 15 und RabattGr in Spalte 19 alphanumerisch kombiniert.

Es wäre mir auch egal wenn die ganze Zeile aus Access ausgelesen würde. Dann hätte ich halt auch die Artikelbezeichnung, Mengeneinheiten etc. Damit kann ich auch leben... ;-)

Antwort 5 von micico

Apropo.... noch zwei Fragen....

1. Was würdest Du empfehlen um VBA zu lernen. Da gibt es diverse Bücher oder auch Videoschulungen wie z.B. video2brain "jetzt lerne ich excel vba" etc.

2. Gibt es hier einen Chat um sich etwas schneller zu unterhalten???

Antwort 6 von heizeisen

so viele Fragen!

Antwort 1: ja, es gibt viele Bücher und viele sind für den Anfang zu gebrauchen. deshjalb keinen Tip ich habe nur ein altes (6 Jahre alt) und somit nicht mehr zu empfehlen.
Antwort 2: ja es gibt einen Chat, das geht auch schneller immer vorausgesetzt es ist ein kundiger Chater da. Ich werde erst morgen, gegen Abend wieder dort anzutreffen sein.

Antwort 3: mach nicht mit VB rum sondern mach Dir eine Access-DB in der Du 1zu1 auf die Tabellen der OriginalDB zugreifst, dann mach Dir ne Abfrage und dann hast Du das Problem gelöst, das ist viel einfacher.

Grüße
He

Antwort 7 von micico

Hallo und Danke für Deine Auskunft. Wenn ich Dich richtig verstanden habe soll ich in Access eine eigene db erstellen in der ich die benötigten Artikel verwalte. Gleicht diese dann auch bei Bedarf die Artikel aus der original db ab???
Naja und das größere Problem..... Wie wird´s gemacht???

Antwort 8 von Roadrunner90

Hallo,

du kannst das auch mit Excel lösen. Dürfte bei deinen Access-Kenntnissen scheller gehen.

Unter "Daten" "externe Daten" kannst du eine Abfrage auf die entsprechende Access-Tabelle einrichten und mit deinen Excel-Daten verknüpfen.


Gruß Rudolf

Antwort 9 von micico

Hi Roadrunner, soweit bin ich schon. Das Problem jedoch ist, dass es sich bei Access um mehr als 500.000 Artikel handelt von denen ich nur ca. 500 benötige... Ich habe in einem unbenutzten Feld eine Markierung mit x gemacht und dann die Daten abgefragt. Jetzt das grosse Problem. Jeden Monat nach einem Datenupdate meiner Grosshändler sind die Markierungen verschwunden und ich muss so im Schnitt 200-300 Datensätze neu markieren und das wollte ich vermeiden...

Antwort 10 von micico

Ich versuch es nochmal zu erklären:
- Ich gebe in Excel in die Zeile A1 eine Bestellnummer (z.B. GCVSTRT900W) ein.
- Nun soll nach dieser Bestellnummer in einer Access Datenbank gesucht werden.
- Ist die Bestellnummer in Access gefunden sollen bestimmte Daten zu dieser Bestellnummer (z.B. Bruttopreis, Nettopreis oder wegen mir auch alle Daten) zu dieser Bestellnummer ab Zeile B1 in Excel angezeigt werden.
- Gebe ich nun in die Zeile A2 wiedere eine Bestellnummer ein soll sich das Ganze wiederholen, nur dann eben ab Zeile B2 usw. usw.

Antwort 11 von Roadrunner90

Hi micico,

jetzt sehe ich das Problem. Ich lass mir mal was einfallen und melde mich wieder, bin heute den ganzen Tag anderweitig im Einsatz.

Gruß Rudolf

Antwort 12 von micico

Hallo Rudolf,
suuuper dass du dich meinem Problem annimmst.... Hab Heute ein bisschen mit Access gespielt aber auch keine richtige Lösung gefunden..... :-((((