vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Ziemlich komplexes Problem - Fortsetzung 
Autor: vman
Datum: 25.01.05 15:46

Die Daten sollen nur importiert werden, wenn der Wert des Feldes b_import_process = True, also das Häkchen gesetzt ist, was an sich kein Problem darstellt (glaube ich).
Jetzt stellt sich mir die Frage, wie ich die Dateien ohne manuelle Pfadeingabe importieren kann. Möglicherweise indem sie in einer Stringvariablen abspeichere, aber wie weise ich sie dann dem Befehl "DoCmd.Transfer..." zu?
DoCmd.Transfer ... ist ja der Befehl, mit dem ich Dateien in Access importieren kann, zumindest kenne ich keinen anderen. Kann man eine Funktion schreiben, mit der ich die Dateien, deren Pfade in der Datenbank abgelegt sind, importieren kann und
zwar so, daß der Dateiname aus der Datenbank ausgelesen und in den Importbefehl als Variable übertragen wird, so daß der Import automatisch
erfolgt? Dann soll es so sein, daß die Daten mittels SQL ausgewertet werden, wenn sie in die Datenbank eingefügt wurden. Wurden sie nicht eingefügt, sollen
sie auch nicht ausgewertet werden. Sehe ich das richtig, daß ich dann unterschiedliche SQL-Statements für jeden Fall schreiben muß?
Ansonsten würden die doch keine richtigen Ergebnisse liefern und daß sie sich dynamisch anpassen lassen, ist - soweit ich weiß - nicht möglich.
Wenn z.B. x mit y und z verglichen werden soll, dann aber z nicht verfügbar ist, entsteht ja ein Fehler. Kann man das programmtechnisch umgehen? Das Problem
ist nämlich auch, daß x auch mal c heißen könnte und umbenannt werden muß es kann sich auch der Datentyp ändern, also daß z. B. vorher eine Excel-Datei importiert werden mußte und dann eine Access-Datenbank und es sollen keine Pfade
im Code manuell abgeändert werden. Daß das möglich ist, denke ich schon (bin mir aber nicht sicher), aber ist das auch in VBA möglich? Möglicherweise
überschätzt mein Betreuer da die Möglichkeiten, aber vielleicht unterschätze ich sie auch.
Dann muß ich noch einen String um ein paar Zeichen bereinigen. Wie ich das in Excel realisieren kann, weiß ich durch einen Tip aus dem Forum, wofür ich mich nochmal bedanken möchte, aber ich weiß nicht, wie ich das in Access machen soll bzw. wie ich die Zellen ansteuern soll.
Ich poste auch mal den Code:
 
Dim dbsNorthwind As Database
Dim rstTabelle As Recordset
Set dbsNorthwind = DBEngine.OpenDatabase(CurrentDb.Name) 'Macht
Pfadeingabe unnötig bzw. Änderung derselben bei Kopieren auf ein anderes Laufwerk
Set rstTabelle =dbsNorthwind.OpenRecordset("Stringbereinigung",
dbOpenDynaset)
Set dbsNorthwind = CurrentDb
Dim variable As String
Dim i As Integer
i = 1
variable = Cells(i, 1)
Do Until variable = ""
variable = Left(variable, InStr(1, variable, "\", vbBinaryCompare))
variable = Replace(variable, "-", "", , , vbBinaryCompare)
variable = Replace(variable, "\", "", , , vbBinaryCompare)
variable = Replace(variable, " ", "", , , vbBinaryCompare)
Cells(i, 1) = variable
i = i + 1
variable = Cells(i, 1)
Loop
End Sub
 
Das Problem ist nämlich, daß Access mit der Variable Cells, wie sie in Excel heißt, logischerweise nichts anfangen kann, ich weiß aber nicht, wie ich die Variable in Access nennen muß, daß alle Felder in z. B. einer Spalte angesprochen werden.
Wenn jemand eine Idee hat, die mir weiterhelfen könnte, freue ich mich über jede Antwort.

Besten Dank im voraus und viele Grüße,

Alex.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Ziemlich komplexes Problem1.171vman25.01.05 15:45
Ziemlich komplexes Problem - Fortsetzung944vman25.01.05 15:46

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel