Discussion:
VBA Zugriff auf eine Access Datenbank im Intranet/Internet
(zu alt für eine Antwort)
Thomas Kr?gis
2004-12-02 09:50:42 UTC
Permalink
Hallo Bernd,

wenn ich die folgende Intranet-Adresse als Hyperlink in einem Excel
Datenblatt ablege, kann ich die Access Datenbank oeffnen.
http://us-apps02.us.bayer.cnb/apps/cc/isccd/globalusbase.nsf/a2359e1209b11a18c1256982003b7e87/028853bca2b6247685256e6e0072fabe/$FILE/SCV_3.0.mdb

Ich möchte aber nicht die Datenbank mit jedem Zugriff oeffnen, sondern
lediglich nur auslesen.

wenn ich das in meinem Source Code probiere, kommt folgende
fehlermeldung:
Laufzeitfehler '3055':
Kein zulässiger Dateiname

Die Excel Hilfe kann hier leider auch keine ausreichende Erlaeuterung
geben.

Anbei habe ich mal meinen Source Code eingefuegt falls das helfen
könnte. Wenn Dir etwas bekannt vorkommen sollte, liegt das daran, das
dein Excel Kompendium mich hier tatkräftig unterstuetzt hat. Ich suche
allerdings immer noch erfolglos nach Fachliteratur, wo Excel und sein
Umfeld (Access, Mail(Lotus Notes), Internet...) ausführlicher
beschrieben ist.

viele Gruesse
Thomas



Source Code:
============
Option Explicit

Public Tab2 As Worksheet
Public Tab3 As Worksheet
Public Tab7 As Worksheet
Public Tab10 As Worksheet
Public DBS As Database
Public RST As Recordset
Public His As Integer
Public N As Integer
Public Z As Integer
Public Zeile As Integer
Public Key1 As String
Public Key4 As String
Public Key4_C As String
Public YM_1 As String
Public YM_2 As String

Sub Selection_Data_Forecast()
Set Tab2 = Worksheets("HandingOver")
Set Tab3 = Worksheets("MasterData")
Set Tab7 = Worksheets("Forecast")
Set Tab10 = Worksheets("ForecastGroup")
Set DBS = OpenDatabase("http://us-apps02.us.bayer.cnb/apps/cc/isccd/globalusbase.nsf/a2359e1209b11a18c1256982003b7e87/028853bca2b6247685256e6e0072fabe/$FILE/SCV_3.0.mdb")
Zeile = 50

With Tab2
If IsEmpty(.Cells(26, 2)) = True Then
His = .Cells(26, 3)
Else
His = .Cells(26, 2)
End If
Key1 = .Cells(2, 2)
YM_1 = .Cells(WorksheetFunction.Sum(Zeile, -His), 8)
YM_2 = .Cells(WorksheetFunction.Sum(Zeile, 1), 8)
Region = "'" & .Cells(17, 2) & "'"
End With

Key4 = "'" & Tab2.Cells(5, 2) & "'"

With Tab10
.Activate
.Range("A1").Select
End With

Delete_Table

Select Case Key1
Case Is = 1
With Tab7
.Activate
.Range("A1").Select
End With
Key4 = "'" & Tab3.Cells(1, 1) & "'"
Key4_C = Key4
Delete_Table
Z = 0
N = 1
Do Until IsEmpty(Tab3.Cells(N, 1)) = True
Set RST = DBS.OpenRecordset _
("SELECT Forecast.Date, " + Key4_C + ",
sum(Menge1), sum(Menge2), sum(Menge3), " _
& "sum(Menge4), sum(Menge5), sum(Menge6),
sum(Menge7), " _
& "sum(Menge8), sum(Menge9), sum(Menge10),
sum(Menge11), " _
& "sum(Menge12), sum(Menge13), sum(Menge14),
sum(Menge15), " _
& "sum(Menge16), sum(Menge17), sum(Menge18),
sum(Menge19) " _
& "FROM MasterData INNER JOIN Forecast " _
& "ON MasterData.Material = Forecast.Material
" _
& "Where Forecast.Material = " + Key4 + " " _
& "and Region = " + Region + " and Scope =
'Scope' " _
& "and Date > " + YM_1 + " and Date <= " +
YM_2 + " " _
& "GROUP BY Forecast.Date, " + Key4_C + ";")

ActiveCell.CopyFromRecordset RST
Tab7.Range("A65536").End(xlUp).Select
Z = ActiveCell.Row
Z = Z + 1
Tab7.Cells(Z, 1).Select
N = WorksheetFunction.Sum(N, 1)
Key4 = "'" & Tab3.Cells(N, 1) & "'"
Loop
End Select
DBS.Close
End Sub
Susanne Wenzel
2004-12-04 08:59:40 UTC
Permalink
Hallo Thomas,
mal so vorweg: Dein Beitrag klingt wie eine Antwort. Es wäre besser, wenn
Du im Originial-Thread bleiben würdest...
Am 2 Dec 2004 01:50:42 -0800 schrieb Thomas Kr?gis:

[viel Beschreibung und Source-Code gesnipt]
Post by Thomas Kr?gis
Ich möchte aber nicht die Datenbank mit jedem Zugriff oeffnen, sondern
lediglich nur auslesen.
wenn ich das in meinem Source Code probiere, kommt folgende
Kein zulässiger Dateiname
Die Excel Hilfe kann hier leider auch keine ausreichende Erlaeuterung
geben.
Was Du möchtest, hat sehr wenig mit Excel zu tun (das ist letzten Endes nur
die Oberfläche, nichts weiter), aber viel mit Zugriffen/Verbindungen auf
eine mdb im Internet/Intranet, wie Du ja auch in Deinem Betreff schreibst.
Du schlägst da ein relativ weites Feld auf, dazu gibt es ein paar Infos,
z.B.:

Access-FAQ 8.6 bei http://www.donkarl.com/

Ein bisschen was findest Du hier:
http://groups.google.de/groups?hl=de&lr=&selm=3D96C578.A481B183%40Luechau.com
(Link in eine Zeile)

Es gibt sicherlich noch etliches mehr, Tante Google weiß da näheres;-)

HTH
Viele Grüße aus dem hohen Norden Deutschlands
Susanne

Loading...