Anzeige
Archiv - Navigation
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
292to296
292to296
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Exel Textfelder in Access importieren

Exel Textfelder in Access importieren
08.08.2003 19:15:34
Harald
Bitte um dringende Hilfe, da es sich um ein Diplomprojekt handelt!
Habe folgendes Problem: Habe in einer Tabelle einen Gesamtstand den ich mittels
Makro in ein Formular einlese. Dort werden Berechnugen durchgeführt und wiederum mittels Makro in eine andere Tabelle übertragen.
Das Problem dabei ist, daß ich Daten, die über das Makro in die andere Tabelle
geschoben werden, sich in Access nicht importieren lassen, obwohl alles Textfelder sind. Schreibe ich den Datensatz direkt in die Tabelle, so ist es kein Problem mit Access. In Access bekomme ich bei den kopierten Datensätzen, beim importieren, immer die Fehlermeldung "Datentypen in Kriterienausdruck unverträglich".
Mein Makro zum kopieren der Datensätze schaut folgendermaßen aus:
Dim a As String, b As String, c As String, d As String, e As String
Dim f As String, g As String, h As String, i As String, j As String, k As String
Dim l As String, m As String, n As String, o As String, p As String, q As String
Dim r As String, s As String, t As String, u As String, v As String, w As String
Dim x As String, y As String, z As String, aa As String
Range("K2").Select
a = ActiveCell.Value
ActiveCell.Next.Select
b = ActiveCell.Value
ActiveCell.Next.Select
c = ActiveCell.Value
ActiveCell.Next.Select
d = ActiveCell.Value
ActiveCell.Next.Select
e = ActiveCell.Value
ActiveCell.Next.Select
f = ActiveCell.Value
ActiveCell.Next.Select
g = ActiveCell.Value
ActiveCell.Next.Select
h = ActiveCell.Value
ActiveCell.Next.Select
i = ActiveCell.Value
ActiveCell.Next.Select
j = ActiveCell.Value
ActiveCell.Next.Select
k = ActiveCell.Value
ActiveCell.Next.Select
l = ActiveCell.Value
ActiveCell.Next.Select
m = ActiveCell.Value
ActiveCell.Next.Select
n = ActiveCell.Value
ActiveCell.Next.Select
o = ActiveCell.Value
ActiveCell.Next.Select
p = ActiveCell.Value
ActiveCell.Next.Select
q = ActiveCell.Value
ActiveCell.Next.Select
r = ActiveCell.Value
ActiveCell.Next.Select
s = ActiveCell.Value
ActiveCell.Next.Select
t = ActiveCell.Value
ActiveCell.Next.Select
u = ActiveCell.Value
ActiveCell.Next.Select
v = ActiveCell.Value
ActiveCell.Next.Select
w = ActiveCell.Value
ActiveCell.Next.Select
x = ActiveCell.Value
ActiveCell.Next.Select
y = ActiveCell.Value
ActiveCell.Next.Select
z = ActiveCell.Value
ActiveCell.Next.Select
aa = ActiveCell.Value
Sheets("Neu-File").Select
Rows("2:2").Select
Range("A2").Select
Selection.Value = a
Range("B2").Select
Selection.Value = b
Range("C2").Select
Selection.Value = c
Range("D2").Select
Selection.Value = d
Range("E2").Select
Selection.Value = e
Range("f2").Select
Selection.Value = r
Range("g2").Select
Selection.Value = g
Range("h2").Select
Selection.Value = h
Range("i2").Select
Selection.Value = i
Range("j2").Select
Selection.Value = j
Range("k2").Select
Selection.Value = k
Range("l2").Select
Selection.Value = l
Range("m2").Select
Selection.Value = m
Range("n2").Select
Selection.Value = n
Range("o2").Select
Selection.Value = o
Range("p2").Select
Selection.Value = p
Range("q2").Select
Selection.Value = q
Range("r2").Select
Selection.Value = r
Range("s2").Select
Selection.Value = s
Range("t2").Select
Selection.Value = t
Range("u2").Select
Selection.Value = u
Range("v2").Select
Selection.Value = v
Range("w2").Select
Selection.Value = w
Range("x2").Select
Selection.Value = x
Range("y2").Select
Selection.Value = y
Range("z2").Select
Selection.Value = z
Range("aa2").Select
Selection.Value = aa
Range("A2").Select
Sheets("Gesamttabelle").Select
Rows("2:2").Select
Selection.Insert shift:=xlDown
Range("A2").Select
Selection.Value = a
Range("B2").Select
Selection.Value = b
Range("C2").Select
Selection.Value = c
Range("D2").Select
Selection.Value = d
Range("E2").Select
Selection.Value = e
Range("f2").Select
Selection.Value = r
Range("g2").Select
Selection.Value = g
Range("h2").Select
Selection.Value = h
Range("i2").Select
Selection.Value = i
Range("j2").Select
Selection.Value = j
Range("k2").Select
Selection.Value = k
Range("l2").Select
Selection.Value = l
Range("m2").Select
Selection.Value = m
Range("n2").Select
Selection.Value = n
Range("o2").Select
Selection.Value = o
Range("p2").Select
Selection.Value = p
Range("q2").Select
Selection.Value = q
Range("r2").Select
Selection.Value = r
Range("s2").Select
Selection.Value = s
Range("t2").Select
Selection.Value = t
Range("u2").Select
Selection.Value = u
Range("v2").Select
Selection.Value = v
Range("w2").Select
Selection.Value = w
Range("x2").Select
Selection.Value = x
Range("y2").Select
Selection.Value = y
Range("z2").Select
Selection.Value = z
Range("aa2").Select
Selection.Value = aa
Range("A2").Select
Sheets("Eingabeformular").Select
ActiveWindow.ScrollColumn = 1
Range("B8").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("C8").Select
Selection.ClearContents
Range("D8").Select
Selection.ClearContents
Range("E8").Select
Selection.ClearContents
Range("F8").Select
Selection.ClearContents
Range("G8").Select
Selection.ClearContents
Range("C16").Select
Selection.ClearContents
Range("F15").Select
Selection.ClearContents
Range("H16").Select
Selection.ClearContents
Range("F28").Select
Selection.ClearContents
Range("F35").Select
Selection.ClearContents
Range("B8").Select
End Sub
Ich weiß sehr kompliziert und nicht übersichtlich, aber diese geht.
Bitte um dringende Hilfe, ist wirklich wichtig!!!!!!!!!!!!!!
Danke Harry

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 20:21:24
ivan
das kann per macro nicht funken!
Access ist eine RELATIONALE DATENBANK!
das heißt,wenn du einmal in eine zeile ewas eingefügt hast wird ja automatisch ein sogenannter id oder zeilenschlüssel erstellt!
diese id ist nicht mehr zu ändern,sie wird ja auch eindeutig als laufende
nummer dargestellt.
jetzt kommst du mit mit deinm vba code und möchtest die id ändern!
das lässt eben eine Relationale datenbank mit sich nicht machen!
stell dir vor du fügst in excel eine zeile ein(mit vba);
und dann möchtest du nach access aktualisieren.
glaubst du das access das zulassen kann wenn es feste vergebene
zeilen hat ?
Hallo    Harry                                                                    Gesund Bleiben & Gesund Werden      http://www.Tepperwein-Collection.at  Gruss  Ivan


Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 21:29:23
Harald
Sag kann man das nicht irgendwie umgehen?
Vielleicht, wenn man dei Zeile irgendwo am Ende des Dokumentes einfügt?
Es muß doch eine Möglichkeit geben, Werte irgendwie in diese Felder zu bekommen
und diese dann in Access einlesen zu können?
Gruß Harry

AW: Exel Textfelder in Access importieren
08.08.2003 22:30:24
ivan
in access wird eine neue zeile erst erzeugt wenn du
etwas eingibst.also wo bitte möchtest du eine zeile am ende einfügen.
wenn es keine id gibt die von access erstellt wurde gibt es auch
keine neue zeile!
dass programm lässt es aus sicherheitsgründen nicht zu!
der boss ist accass und nicht excel!
wenn du accass beim estellen der *.mdb so gespeichert hast das
id nummern vergeben werden sollen,dann gilt das für immer und ewig!
diese entscheidung beim speichern kann nicht mehr rückgängig gemacht
werden!Daher mußt du die daten aus access importiern aus deiner *.xls!
im menü datei importieren !
oder die richtige methode:
erstelle in htm ein eingabe-formular und weise diesem
unter form action eine von dir erstellte php datei zu.
die php datei ist sehr wohl im stande eine neue zeile zu erstellen,
und die eingegebenen daten aus dem htm formular auszulesen
und in accass einzufügen!was aber excel nicht kann.
Hallo    Nic                                                                                 Gesund Bleiben & Gesund Werden      http://www.Tepperwein-Collection.at  Gruss  Ivan


Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 22:39:21
Harald
Ich glaube wir reden aneinander vorbei, ich will in Excel eine neue Zeile einfügen und diese neue erstellte Zeile auch wieder in Access per import importieren. Nur bei diesem Import entsteht dann diese Fehlermeldung "Datentypen unverträglich"!!!
Das VBA-Script hatte nur die Funktion in Excel die Daten von einer Tabelle in eine neue zu transportieren.
Vielleicht weißt jetzt noch einen Rat!
Danke Harry

AW: Exel Textfelder in Access importieren
08.08.2003 22:57:07
ivan
HI HARRY
ICH VERSTEHE DICH ABER DU MICH NICHT!
die neue zeile in excel hat keine id
und wenn du sie dann rüberkopierst lässt
excel es nicht zu weil accass eigentlich nicht die zeile
erstellt hat und keine id vergeben ist!
daher die fehlermeldung!
ich kann dir einen beweis antreten:
erstelle eine neue access datenbank ohne id
ohne relationalität.dann wirst du sehen das der
fehler nicht mehr kommt.
gruss
ivan

Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 23:05:37
Ramses
Hallo Ivan,
wenn in ACCESS eine Anfügeabfrage ausgeführt wird, oder auch ein einfacher Import, wird der Schlüssel automatisch erstellt.
Gruss Rainer

AW: Exel Textfelder in Access importieren
08.08.2003 22:24:07
Ramses
Hallo,
Grundsätzlich:
Sheets("Gesamttabelle")Range("A2") = Sheets("Eingabeformular").Range("K2")
geht wesentlich einfacher und läuft wesentlich schneller.
ActiveCell.Next.Select
mag auf deinem Rechner funktionieren, wenn aber einer die Standardvorgabe verändert hat ( Extras - Optionen - Register "Bearbeiten" > Option "Markierung nach drücken der Eingabetaste verschieben" ) dann läuft dein Makro ins Leere.
Prinzipielle ist es kein Problem einen Datensatz zu einer Tabelle hinzuzufügen, auch wenn die Tabelle relational verknüpft ist, aber die Feldtypen müssen stimmen.
Datentypen in Kriterienausdruck unverträglich
weist darauf hin, dass du Daten übergeben willst, die nicht den Felddefinitionen deiner Tabelle entsprechen.
Du hast alle Variablen als String deklariert, vermutlich brauchst du aber auch ein paar Zahlen,.. oder ?
Mit einer Stringdeklaration werden die Werte als Text in die zelle geschrieben und nicht als Zahl. Was auch dem entspricht, wenn du die Werte direkt in die Tabelle eingibst und es dann funktioniert.
Gruss Rainer

Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 22:33:56
Harald
Das Problem ist, ich habe in Access auch schon alle Felder auf 255 Textzeichen vergrößert, aber kann sie einfach nicht importieren, irdenwie setzt Excel die Werte in ein anderes Format oder so um, habe wirklich schon alles versucht, aber bin einfach total am verzweifeln. Habe mir auch die Variablen angesehen, aber auch diese stimmen, vielleicht hat es wirklich was mit dem Index zu tun, sprich mit der id, aber ich muß das doch irgendwie mit kopieren oder so übergehen können.
Vorallem soll das ein Diplomprojekt werden und dann hänge ich bei solchen Dingen.
Hast du vielleicht eine Mail oder Tel?
Vielleicht kannst mich da bei der Sache ein wenig unterstützen??
harald.krumpak@chello.at
Gruß Harry

Anzeige
AW: Exel Textfelder in Access importieren
08.08.2003 22:46:52
ivan
hallo rainer
Datentypen in Kriterienausdruck unverträglich
kommt daher weil die mdb eben relational gespeichert wurde!
Felddefinitionen können nur angepasst werden
wenn die datenbank nicht als relationale datenbank gespeichert
gespeichert wurde !
dann kanst du sie ja nicht anpassen rainer!
und du kanst nur auf felder zugreifen die schon eine id
besitzen.daher kann er ja mit der hand die daten eingeben!
aber eine neue zeile kann er nicht per hand eingeben!oder per vba!
gruss
ivan

Relational ist nicht wichtig....
08.08.2003 23:04:37
Ramses
Hallo Ivan,
... um Datensätze zu erzeugen.
Das Problem ist nur, wenn du eine Abfrage auf deine verknüpften Tabellen machst und der Schlüssel nicht eingetragen wurde oder nicht vorhanden ist,... dann können die abhängigen Daten auch nicht gefunden werden.
Datensätze in 1:N Tabellen sind grundsätzlich kein Problem, da hier nur die Abhängigkeiten nicht zugeordnet wurden
Datensätze die in N:1 verknüpften Tabellen erzeugt werden, sind auch kein Problem, weil sie ja noch zu keinem anderen Datensatz zugeordnet wurden.
Hier ein Beispiel wie so was gemacht wird:

Sub Create_New_Data_in_Access_DB()
Dim ADOC As New ADODB.Connection
Dim DBS As New ADODB.Recordset
ADOC.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test\Verein.mdb;"
DBS.Open "MitgliederDaten", ADOC, adOpenKeyset, adLockOptimistic
Sheets("Formular").Activate
Range("A2").Select
On Error GoTo Fehler
Do Until ActiveCell.Value = ""
    DBS.AddNew
    DBS!GebDatum = ActiveCell.Value
    DBS!GebOrt = ActiveCell.Offset(0, 1).Value
    DBS!FamName = ActiveCell.Offset(0, 2).Value
    DBS!Vorname = ActiveCell.Offset(0, 3).Value
    DBS!Strasse = ActiveCell.Offset(0, 4).Value
    DBS!Ort = ActiveCell.Offset(0, 5).Value
    DBS!PLZ = ActiveCell.Offset(0, 6).Value
    DBS!TelefonNummer = ActiveCell.Offset(0, 7).Value
    DBS!MobilNummer = ActiveCell.Offset(0, 8).Value
    If ActiveCell.Offset(0, 9).Value = "Ja" Then
        DBS!Aktivmitglied = 1 'Leerer Schlüssel für abhängige Tabellen
        DBS!Sportart = 1 'Leerer Schlüssel für abhängige Tabellen
        DBS!Schiedsrichter = 1 'Leerer Schlüssel für abhängige Tabellen
    Else:
        DBS!Aktivmitglied = False
    End If
    DBS.Update
    ActiveCell.Offset(1, 0).Select
Loop
DBS.Close
ADOC.Close
Set ADOC = Nothing
Set DBS = Nothing
Exit Sub
Fehler:
MsgBox "Undefinierter Datenbankfehler aufgetreten", vbCritical + vbOKOnly, "Fehler"
DBS.Close
ADOC.Close
Set ADOC = Nothing
Set DBS = Nothing
End Sub 
     Code eingefügt mit Syntaxhighlighter 1.16


Ein guter ACCESS-Programmierer legt immer den ersten Eintrag als Leeres Datenfeld an, sonst kann ich in einer 1:N oder 1:M abhängigen Tabelle gar keine Datensätze anlegen ohne aus einer N Tabelle einen Datensatz zuzuordnen.
Daher die Anweisung 1 = Leeres Key Feld ohne eigentliche Datenzuweisung, nur um die Abhängigkeiten vollständig einzugeben damit eine Abfrage dann auch funktioniert.
Gruss Rainer

Anzeige
AW: Relational ist nicht wichtig....
08.08.2003 23:13:23
ivan
hi Rainer
und kann man die datenbank dann auch im netz verwenden?:-)
eine sql abfrage durchführen??
ich gehe davon aus das er sie ja im netz auch verwenden möchte??
gruss
ivan

AW: Relational ist nicht wichtig....
08.08.2003 23:19:58
Ramses
Hallo Ivan,
kein Problem,.... wenn die Datenbank richtig konstruiert wurde, Arbeitsgruppendefinition und Datensatzsperrung wenn der Datensatz geöffnet ist.
Du erzeugst ja einen neuen Datensatz, also kann den keiner geöffnet haben.
Eine SQL Abfrage ist ebenfalls kein Problem auf eine ACCESS-DB.
Nur um das klarzustellen,.... den obigen Code habe ich nicht aus dem Handgelenk gemacht ;-)). Da waren etliche Stunden und Literatur Studium nötig um das zusammenzupfriemeln :-).
Das mache ich auch nicht jeden Tag. Frag mich also nicht, ob ich dir schnell eine SQL Abfrage zeigen kann.
Obwohl,... prinzipiell ist die Abfrage gleich aufgebaut. Und die SQL - Definition mache ich vorher immer mit einer Abfrage in der ACCESS-DB, gehe dann in die SQL-Ansicht, kopiere den Code und setze in VBA ein ;-))
Tut eigentlich immer *lol*
Gruss Rainer

Anzeige
AW: Relational ist nicht wichtig....
08.08.2003 23:50:41
ivan
ok ich gehe davon so funktioniert!
bei kleinen datenmengen.
was aber ist wenn du einen verlässlichen versand
oder eine mdb mit 2 milionen einträgen hast ???
WO ES UM DEIN GELD GEHT!
kanst du dich auf dieser leichtsinnige methode einlassen!
was ist wenn du einem kunden dem du so eine zusammen geflickte
variante als programmierung verkaufst,und er erleidet einen schaden??
da fragt sich jeder gute acess programmier(um deine worte zu verwenden)
was denn sicherer ist!
zu guter letzt es gibt php fans und excel fans!
ich liebe excel ,aber es ist leider
nicht so verlässlich wie php!
gruss
ivan

Anzeige
Ich verstehe es zwar nicht.....
08.08.2003 23:59:49
Ramses
Hallo,
... aber ich denke die Hitze muss mal wieder herhalten ;-(
"kanst du dich auf dieser leichtsinnige methode einlassen!"
Die Methode ist nicht leichtsinnig sondern sehr real.
DB-Programmierung - Relationale Verknüpfungen - 1. Stunde
"was ist wenn du einem kunden dem du so eine zusammen geflickte
variante als programmierung verkaufst,und er erleidet einen schaden??"
Da ich schon etwas Programmiererfahrung auch in ACCESS und SQL-Server, beruflich, auf dem Buckel habe, denke ich nicht, dass dies eine zusammengeflickte Variante ist sondern klar strukturiert ist,... und vor allem auch zu 100% funktioniert.
Prinzipiell ist eine komplette Datenbankprogrammierung natürlich schon etwas aufwändiger und kann auch nicht im Forum gelöst werden.
Wenn ich einem Kunden so was geben würde müsste es in dessen Umgebung, unter Berücksichtigung von Netzwerkstruktur und Datenbankdesign usw., genauso getestet werden wie deine PHP Programmierung,... oder bist du unfehlbar.
So,... nun mache ich auch Schluss.
Gruss Rainer

Anzeige
AW: Ich verstehe es zwar nicht.....
09.08.2003 00:15:08
ivan
hi Rainer
ich bin nicht unfehlbar,es gibt niemand der
so durch das leben geht und keine fehler macht.
nur bei der php variante
bin ich mit der programmierung 50 mal schneller
der code ist wesentlich geringer
in einer kurzen php zeile kann man 100 und mehr zeilen vba code einfügen
mit 30-50 überschaubaren zeichen.
daher ist das finde ich die sichere variante.
und heut-zutage fresen nicht die reichen die armen,
sondern schnellen die langsamen!:--))
gruss
ivan

Ich verstehe nur Bahnhof
09.08.2003 08:44:43
Harald
Ich verstehe einfach nicht, daß ich Datensätze in der Excel Tabelle händisch eingeben kann und dann funktioniert auch der Import in Access, aber werden diese Daten per Makro eingegeben, dann gehts nicht mehr, wo genau liegt da der Unterschied?
Es muß doch irgendwie möglich sein, diese Zellen so zu formatieren, daß sie auch eingelesen werden können?
Am liebsten wäre mir, mit könnte das jemand am Tel erklären!
Gruß Harry

AW: Ich verstehe nur Bahnhof
09.08.2003 09:29:50
ivan
hi harry


Mit VBA kann man zwar auf
Access-Datenbanken zugreifen.
Dies geschieht mittels Verweis auf die DAO-Bibliothek.
Aber  Verlassen würde ich Persönlich mich nicht darauf!


Desshalb wollte ich es dir ausreden deine
Zeit mit soetwas


zu verschwenden,Um die neuersten Methoden
kennen zu lernen


mit PHP 4.0.


Außerdem bist dann auch beschränkt mit der
Anzahl der Daten!


Aber ok du möchtest es so haben !




  • Erstellen einer
    Datenbank

  • Erstellen einer Tabelle
    mit Feldern

  • Füllen der Tabelle

  • Löschen der Tabelle

  • Löschen der Datenbank







Zunächst muss festgelegt werden, um welche Version es sich handelt.
Im VBA-Editor unter "Extras" - "Verweise" aktivieren Sie nun einen
der folgenden Verweise (es ist nur einer erlaubt !)






  • Microsoft DAO 3.51
    Object Library [für Access 97 Datenbanken]

  • Microsoft DAO 3.6 Object
    Library [für Access 2000 Datenbanken]











 



Der nachfolgende Code
demonstriert u.a. das Schreiben in die Datenbank
eines bestimmten Bereiches:



 


 




'Dateiname der Datenbank
Public Const Dateiname = "C:\Datenbank.mdb"
'Tabellenname in der Datenbank
Public Const Tabellenname = "Meine_Tabelle"


Dim Datenbank As Database
Dim Datensatz As Recordset
Dim Tabelle As TableDef


'Erzeugen der Datenbank und Tabelle
Public Sub Datenbank_und_Tabelle_erzeugen()
Dim Feld1 As Field
Dim Feld2 As Field
Dim Feld3 As Field
Dim Feld4 As Field
On Error Resume Next
    'Prüfen, ob Datenbank bereits vorhanden
    If Dir(Dateiname) = "" Then
        'falls nicht, neu erzeugen
        Set Datenbank = CreateDatabase(Dateiname, dbLangGeneral, dbEncrypt)
Else
        'ansonsten öffnen
        Set Datenbank = OpenDatabase(Dateiname)
End If


    'Prüfen, ob Tabelle bereits vorhanden
If Not TableExists(Dateiname, Tabellenname) Then
'Tabelle erzeugen
Set Datenbank = OpenDatabase(Dateiname)
Set Tabelle = Datenbank.CreateTableDef(Tabellenname)
        'Felder erzeugen
'Die Namen der Felder werden aus den
'entsprechenden Zellen geholt
        With Tabelle
Set Feld1 = .CreateField(Range("B2"), dbText, 20)
Set Feld2 = .CreateField(Range("C2"), dbText, 20)
Set Feld3 = .CreateField(Range("D2"), dbDate)
Set Feld4 = .CreateField(Range("E2"), dbMemo)
.Fields.Append Feld1
.Fields.Append Feld2
.Fields.Append Feld3
.Fields.Append Feld4
End With
        'Tabelle hinzufügen
Datenbank.TableDefs.Append Tabelle
End If
    'Datenbank schließen
    Datenbank.Close
If Err.Number <> 0 Then MsgBox Err.Description
End Sub


'Daten aus einem Bereich in die Datenbank schreiben
Public Sub Daten_schreiben()
'Prüfen, Tabelle existiert
If Not TableExists(Dateiname, Tabellenname) Then
MsgBox "Datenbank oder Tabelle ist nicht vorhanden !", vbExclamation
Exit Sub
End If
'Datenbank und Tabelle öffnen
Set Datenbank = OpenDatabase(Dateiname)
Set Datensatz = Datenbank.OpenRecordset(Tabellenname)
With Datensatz
'Bereich B3:E22
For x = 3 To 22
.AddNew
For y = 2 To 5 'Spalte 2 bis 5
.Fields(Cells(2, y)).Value = Cells(x, y).Text
Next y
'Datensatz updaten
.Update
.Bookmark = .LastModified
Next x
End With
Datenbank.Close
End Sub


'Tabelle löschen
Public Sub Tabelle_löschen()
'Datenbank zum Löschen öffnen
Set Datenbank = OpenDatabase(Dateiname)
'Tabelle löschen
Datenbank.TableDefs.Delete Tabellenname
'Datenbank schließen
Datenbank.Close
End Sub


'Prüft, ob eine Tabelle in einer
'Datenbank bereits vorhanden ist
Public Function TableExists(Dateiname, MyTableName)
Dim i
 'Prüfen, ob die Datenbank existiert
If Dir(Dateiname) = "" Then
TableExists = False
Exit Function
End If
'Datenbank öffnen
Set Datenbank = OpenDatabase(Dateiname)
TableExists = False
'alle Tabellen durchlaufen
For i = 0 To Datenbank.TableDefs.Count - 1
If Datenbank.TableDefs(i).Name = MyTableName Then
TableExists = True
Exit Function
End If
Next i
'Datenbank schließen
Datenbank.Close
End Function


gruss

ivan

AW: Ich verstehe nur Bahnhof
09.08.2003 09:39:30
Bitte erklär mir das!
Bitte erklär mir das, ich habe eh eine gratis-tel-Nummer!
08002050254
Bitte ich kenn mich jetzt wirklich nicht mehr aus!
Gruß Harry

Ich verstehe nur Bahnhof
09.08.2003 08:45:05
Harald
Ich verstehe einfach nicht, daß ich Datensätze in der Excel Tabelle händisch eingeben kann und dann funktioniert auch der Import in Access, aber werden diese Daten per Makro eingegeben, dann gehts nicht mehr, wo genau liegt da der Unterschied?
Es muß doch irgendwie möglich sein, diese Zellen so zu formatieren, daß sie auch eingelesen werden können?
Am liebsten wäre mir, mit könnte das jemand am Tel erklären!
Gruß Harry

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige