Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Exceltabelle in Access importieren

Frage Entwicklung VB for Applications

Mitglied: wydy

wydy (Level 1) - Jetzt verbinden

25.08.2009, aktualisiert 11:34 Uhr, 9191 Aufrufe, 3 Kommentare

Exceltabelle in Access importieren klappt nur teilweise

Moin Leute,
ich habe ein Funktion erstellt, mit welcher ich alle Daten aus einer Exceltabelle in eine neue Accesstabelle importiere. Der Import funktioniert auch. Es wird mir jedoch jedesmal eine Fehlertabelle erstellt mit dem Name Gesamt$_Importfehler und in dieser Tabelle steht dann:
Fehler Feld Zeile
Fehler bei Typumwandlung F2 123
Fehler bei Typumwandlung F2 124
Fehler bei Typumwandlung F2 125
Fehler bei Typumwandlung F2 126
Fehler bei Typumwandlung F2 127
Fehler bei Typumwandlung F2 128
Fehler bei Typumwandlung F2 129
...
In der importierten Tabelle wird die Spalte F2 jedesmal als Typ Datum/Uhrzeit angegeben, obwohl dort kein einziges Datum eingetragen ist. Deshalb wird ja dann auch die Tabelle Gesamt$_Importfehler erstellt. Wie kann ich den Fehler beheben? Die Spalte F2 ist zwar unwichtig, jedoch soll es nicht jedesmal eine neue Fehlertabelle erstellen. Beim nächsten aufruf wird ja dann die Tabelle Gesamt$_1Importfehler erstellt...
Hier noch der Quellcode
01.
Public Sub updatePlannung() 
02.
    Dim db As Database 
03.
 
04.
    Set db = CurrentDb 
05.
    CurrentDb.Execute "DROP TABLE tbl_importPlannung" 
06.
    'Set db = Nothing 
07.
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tbl_importPlannung", "Plannung.xls", True, strRangeToImport 
08.
End Sub
Existiert die Tabelle tbl_importPlannung nicht, kommt eine Fehlermeldung, ist mir klar. Ich werde auch später kontrollieren ob die Tabelle vorhanden ist, bevor ich sie lösche. Aber ein Schritt nach dem anderen
Mitglied: Biber
26.08.2009 um 09:16 Uhr
Moin wydy,

In der importierten Tabelle wird die Spalte F2 jedesmal als Typ Datum/Uhrzeit angegeben, obwohl dort kein einziges Datum eingetragen ist.
....
Die Spalte F2 ist zwar unwichtig,

Da hätte ich aber noch ein oder zwei Rückfragen...

  • wiesó Spalte "F2"? Hat Deine tabelle doch keine Header= oder heißt die Spalte in der Importdatei wirklich "F2"?
  • was bedeutet "obwohl dort kein einziges Datum eingetragen ist"? Was ist denn eingetragen?
  • Wie ist denn die Spalte, die als "F2" ankommt, in Excel formatiert
  • Wenn gilt "Die Spalte F2 ist zwar unwichtig", warum übernimmst Du die denn überhaupt?
  • und letztendlich: Ist strRangeToImport denn undefiniert oder kommt da durh unsaubere Programmierung irgendwowo anders der Wert her (wenn ja: was)?
  • Haben Dein "Excel" und Dein "Access" denn auch einen Nachnamen bzw. eine Versionsnummer und falls Du unter XP agierst mit welchem SP?

Grüße
Biber
Bitte warten ..
Mitglied: wydy
26.08.2009 um 10:02 Uhr
Die Exceltabelle wurde leider nicht von mir erstellt. Die wurde in einem anderen Bereich erstellt und ich brauche einige Daten aus dieser Exceltabelle für meine Arbeit. Ich kann also an der Exceltabelle gar nichts verändern und da liegt leider auch das Problem.

Die Exceltabelle hat keinen Header und Access benennt deshalb die Spalten mit F1, F2.... Fx. Ich habe dies auch bereits in der Importfunktion geändert.
01.
acSpreadsheetTypeExcel9, "tbl_importPlannung", "Plannung.xls", False, strRangeToImport
In der Spalte ist eine Formel eingetragen, mit welcher kontrolliert wird ob das aktuelle Datum ein Feiertag ist oder nicht. Ist es kein Feiertag bleibt die Spalte leer, ist es ein Feiertag wird dieser dort eingetragen. Hier die Funktion in Excel: =WENN(ISTFEHLER(SVERWEIS(A14;Feiertage!$A$4:$C$54;1;FALSCH));"";SVERWEIS(A14;Feiertage!$A$4:$D$54;4;FALSCH))
Die Spalte ist in der Exceltabelle als Kategorie Standart markiert, falls du das meinst. Also Kontextmenu -> Zellen formatieren -> Zahlen -> Standart
Ich habe versucht die Spalte F2 nicht zu übernehmen und habe in der Funktion den Teil mit strRangeToImport geändert in A1:AF255;C1:AF255. Jedoch wurde die Eingabe so nicht akzeptiert. Ich konnte nur einen Bereich zum importieren angeben und nicht 2.
strRangeToImport ist undefiniert. Ich habe die Funktion "gegoogelt" und da hiess es, wenn alle Daten importiert werden sollen, werde dort eben strRangeToImport eingefügt.
Bitte warten ..
Mitglied: Biber
26.08.2009 um 11:31 Uhr
Moin wydy,

geändert in A1:AF255;C1:AF255. Jedoch wurde die Eingabe so nicht akzeptiert.
Wenn es Dich tröstet: Selbst die "richtige" Angabe A1:B255;C1:AF255 wäre abgelehnt worden.
Der Bereich muss (jedenfalls nach meinen Test) zusammenhängend sein.

Dennoch muss ja diese Information "Spalte F2 ist vom Typ Datum/Uhrzeit" irgendwo herkommen.
Wenn ich Dein Szenario nachstelle und eine Spalte mit per "=Wenn(Bedingung,""; andererWert)" füllen lasse, dann kommt diese Spalte bei Access als TEXT an.
Es sei denn, dummerweise sind ausgerechnet in den ersten 8 Zeilen mindestens 4 Werte, die ungleich "" (Leerstring) sind UND als Datum interpretiert werden.

Das kann aber nur sein, wenn die per SVerweis kopierten Felder
  • entweder im Sheet "Feiertage" als Datum formatiert sind
  • oder dort nicht, wie ich vermutet hätte, der Text "Tag der Arbeit" steht, sondern "1.Mai". Was wiederum Excel darum bringt, diesen String wieder als Datum aufzufassen.

--> Anyhow, die Ursache ist eigentlich nur sinnvoll in der Quell-Exceldatei abzustellen.
Ich würde mich mit den Kaspern Kollegen zusammensetzen und um etwas mehr Sorgfalt bzw. Datenstriktheit bitten.

Denn Du kannst diese Import-Unsauberkeiten nur mit Mehraufwand ausräumen.

Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Datenbanken
Access Checkbox mit Kombifeld und dann filtern

Frage von atomas42 zum Thema Datenbanken ...

Batch & Shell
CMD cURL Access Token parsen (2)

Frage von maddig zum Thema Batch & Shell ...

Exchange Server
gelöst Kontaktliste in Userpostfach importieren via PS (21)

Frage von atk691 zum Thema Exchange Server ...

LAN, WAN, Wireless
Access Point: Ubiquiti UAP AC PRO Einschätzung Reichweite (4)

Frage von TimMayer zum Thema LAN, WAN, Wireless ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...