URL: https://www.overclockers.at/coding-stuff/access-excel-vb_java_problem_218165/page_1 - zur Vollversion wechseln!
Servus,
ich habe folgendes Problem. Ich möchte über Java/VB auf eine access datenbank zugreifen welche datensätze enthält die mit excel files verknüpft sind.
Wunschvorstellung: Es soll über eine Maske ein Suchbegriff eingegeben werden, nach dem die access datenbank durchsucht wird und dann das zugehörige excel file geöffnet wird.
Prinzipiell bin ich ein neuling im programmieren, hab a bissel ahnung in java und in vba.
Ises prinzipiell möglich so etwas aufzuziehen, gibt es alternativen dazu die das selbe können ?
Hoffe Ihr könnt mir helfen.
mfg
Hmm, naja mit Excel hat das jetzt nicht unbedingt was zu tun - Aber prinzipiell dürfte das eher eine Aufgabe für VBA sein als Java. Es gibt zwar diverse Libraries um Access Datenbanken zu lesen aber ob die wirklich alles abdecken was sich MS so einfallen hat lassen ist wirklich nicht zu sagen...
hmm, ich werd mich mal reinhängen, selfstudy ftw 
Ich hätte ja empfohlen die Access DB in ein richtiges DBMS zu exportieren und darauf dann alles aufzusetzen, aber ich schätze das wird keine echte Option sein
Was verstehst du unter einem richtigen DMBS, SQL ? Hab mit Datenbanken eigentlich echt nix am Hut kenn mich deswegen auch gar nicht aus.
MySQL oder PostgreSQL zb.
Dann kannst normal mit Java drauf zugreifen, und ein excel-File aufrufen sollt auch nicht das Problem sein.
SQLite gibts auch noch, dann noch die schweren Brocken wie Oracle usw.Zitat von tinkerMySQLoder PostgreSQL zb.
Kenn mich mit DBMS net so aus. In der Arbeit hab ich meist mit Oracle zu tun.
Finde die Liste aber ziemlich beeindruckend, wusste nicht, dass es so viele gibt.
MySQL is halt relativ bekannt, und in der aktuellen Version glaub ich gar net mehr so schlecht. Hab mich aber vor ~2 Jahren das letzte mal damit beschäftigt. Postgre hat bei uns in der Firma Oracle ersetzt (Lizenzkosten eingespart), gearbeitet hab ich aber noch nicht damit.
Wenn du Visual Studio verwendest, solltest das ganze über ein Office Projekt lösen und wenn dir Java gut liegt C# statt VB (VB != VBA) nehmen. Java würde ich vergessen wenns um Office Programmierung geht, da du dann die ganzen .NET Funktionen nicht nutzen kannst und am Ende viel mehr Code für die gleiche Arbeit schreiben musst. Außerdem musst du für ein Java Programm erst mal die JRE extra installieren, .NET hast du auf Windows sowieso installiert (bei Windows 7 oob 3.5 und .NET 4 brauchst nur für Office 2010) und das Programm dann in der Regel problemlos auf jedem Windows Rechner ausführen.
Es geht aber net um Office-Programmierung, er will ja nur ein excel-File aufmachen...
Und ne JRE ist schnell installiert... sprich es is ziemlich egal ob man jetzt .NET oder Java verwendet.
ZitatWunschvorstellung: Es soll über eine Maske ein Suchbegriff eingegeben werden, nach dem die access datenbank durchsucht wird und dann das zugehörige excel file geöffnet wird.
Wenn man bedenkt, dass eine Access Datenbank ohnehin schon über eine .NET Schnittstelle zur Anpassung der Standardsuche verfügt, finde ich es widersinnig hier Java zu verwenden, für das es so eine Schnittstelle nicht gibt. Natürlich kannst über eine ODBC Verbindung mit Java mit der Access Datenbank sprechen, du brauchst für die gleiche Aufgabe aber wie gesagt viel mehr Code.Ich bin jetzt davon ausgegangen, dass er die Access-DB, wie watchout vorgeschlagen hat, in ein richtiges DBMS exportiert.
Wenns bei access bleibt geb ich dir recht.
Ich hab eigentlich vorgeschlagen das in VBA zu machenZitat von tinkerIch bin jetzt davon ausgegangen, dass er die Access-DB, wie watchout vorgeschlagen hat, in ein richtiges DBMS exportiert.
Wenns bei access bleibt geb ich dir recht.

Mit VBA kommt man imo nicht weit wenn man zwischen verschiedenen Office-Programmen arbeiten möchte. Sofern sich das ganze über ein Makro realisieren lässt ist VBA ok. Persönlich ziehe ich C# aber immer vor, weil das auch ein Java Entwickler lesen kann.
Der OP hat aber nur ein einziges Programm zu steuern.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026