Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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
GELÖST

Excel in MySQL

Frage Microsoft Microsoft Office

Mitglied: beckslevel91

beckslevel91 (Level 1) - Jetzt verbinden

15.12.2009 um 15:24 Uhr, 6383 Aufrufe, 8 Kommentare

Hallo ich habe eine für mich scheinbar unlösbare aufgabe bekommen..^^

Das Hauptproblem ist, dass ich noch nicht mal weiß, wie ich meine Frage stellen soll^^

Nun gut, fang ich mal an, also ich habe eine Excel Tabelle mit Daten. Eine Zeile enthält Namen, eine Spalte enthält Daten(Datum) und jede Spalte unter jedem Namen enthält einen Firmennamen. Es geht also um Kurzpraktika die eingetragen wurden.
So nun habe ich in PHP eine Seite gemacht, die Praktikumsdaten erfasst und in eine MySQL Datenbank schreibt. Das ganze ist tabellarisch untereinander aufgebaut, also eine Spalte für Namen, Betrieb, Datum, etc.
Nun brauche ich eine Art Automatismus der mir die Daten der Excel Tabelle nimmt, so anordnet wie ich sie brauche (also Reihenfolge & Anordnung der MySQL Tabelle), mir das ganze als *.csv speichert und dann in die MySQL Datenbank rüberzieht.
Ich beherrsche VB 6 und VB.NET. Gibts da ne Möglichkeit??? Das sind nämlich imens viele Daten, bei denen täglich neue dazukommen...

MfG,

J.R.
Mitglied: Yogiwan
15.12.2009 um 16:10 Uhr
Hi,

nur mal so als Idee, weil ich mit der eigentlichen DV nicht so viel zu tun habe: Excel kann VBA, also VB für Applications, Du kannst Makros bauen und alles. Also kannst Du auch so eine Datei automatsich starten (per batch), mit Autostartmakro versehen, was das alles sortiert und exportiert und dann eine SQL-Anweisung (in der batch), die die Daten dann an mySQL übergibt.
Falls das Ganze auf zwei Rechnern läuft, beides zeitgesteuert, auf dem mySQL-Server fragst Du dann jede Minute oder wie oft Du das brauchst, ab, ob es schon neue Daten gibt und wenn ja, dann hopp, importieren.
Bitte warten ..
Mitglied: thaefliger
15.12.2009 um 17:50 Uhr
Verstehe ich dich richtig, dass du eine Excel-Datei in mysql importieren willst?
Wenn ja: als CSV exportieren, über phpmyadmin importieren.
Bitte warten ..
Mitglied: beckslevel91
16.12.2009 um 07:33 Uhr
Hey,

erstmal danke für die Antworten. Das ich eine CSV brauche weiß ich bereits und dass ich es mit Makros regeln kann auch.. Nur gibts ein Problem und zwar die Anordnung der Spalten:
Excel-Tabelle:

Name -- Name - Name - Name - Name
Datum -- Betrieb -Betrieb-Betrieb-Betrieb-Betrieb
Datum -- Betrieb -Betrieb-Betrieb-Betrieb-Betrieb
Datum -- Betrieb -Betrieb-Betrieb-Betrieb-Betrieb
Datum -- Betrieb -Betrieb-Betrieb-Betrieb-Betrieb
...

Und die MySQL Tabelle ist in Spalten angeordnet:

Spalte 1: Name
Spalte 2: Betrieb
Spalte 3: Datum
...

Das ist das Hauptproblem welches mir Kopfzerbrechen bereitet, denn wie schaffe ich es eine nach unten offene Tabelle richtig anzuordnen??

Gruß,

J.R.
Bitte warten ..
Mitglied: thaefliger
16.12.2009 um 08:18 Uhr
zu Hause habe ich Beispiele, musst dich noch bis heute Abend gedulden
Bitte warten ..
Mitglied: beckslevel91
16.12.2009 um 08:24 Uhr
hey das wäre echt super vielen Dank..


J.R.
Bitte warten ..
Mitglied: SteinBeiser
16.12.2009 um 09:15 Uhr
Also in PhP würde das so aussehen.
01.
#!/usr/bin/php 
02.
<?php 
03.
$DieDaten = File( "Daten.txt" ); // Die Daten aus Excel mit ";" als trennzeichen 
04.
 
05.
$namen = trim( $DieDaten[0] ); // hier sind die namen 
06.
$namen = explode( ";", $namen ); // trennzeichen semikolion 
07.
 
08.
$fP = fOpen( "4MySQL.csv", "w" ); 
09.
// Ab hier daten 
10.
for( $x=1; $x<count( $DieDaten ); $x++ ) 
11.
12.
 $betrieb = trim( $DieDaten[$x] ); 
13.
 print "."
14.
 if( strlen( $betrieb ) <= 1 ) continue
15.
 $betrieb = explode( ";", $betrieb ); 
16.
 // Datum wie MySQL es gerne mag. 
17.
 $datum = substr( $betrieb[0], 6, 4 ) ."-". substr( $betrieb[0], 3, 2 ) ."-". substr( $betrieb[0], 0, 2 ); 
18.
 for( $y=1; $y<count($betrieb); $y++ ) 
19.
 { fWrite( $fP, $namen[$y] .";". $betrieb[$y] .";". $datum ."\r\n" ); } 
20.
21.
fClose( $fP ); 
22.
?>
Bitte warten ..
Mitglied: beckslevel91
16.12.2009 um 10:44 Uhr
Okay Hey vielen Dank nochmal,

ich habe jetzt einen Algorithmus mit VB6 als Makro entworfen welcher die Tabelle durchläuft und die Daten sortiert in eine Neue Tabelle schreibt, ist noch nicht ganz fertig, scheint aber soweit zu funktionieren..

Gruß,

J.R.
Bitte warten ..
Mitglied: thaefliger
16.12.2009 um 20:41 Uhr
Hi

habe mal zu Hause nachgeschaut, wie ich das einmal gemacht habe:
wenn du ein Excel (.xls) hast und eine mySQL-DB, müssen die Spaltennamen in der Excel-Datei genau gleich heissen wie in der DB.
Dann würde ich dir empfehlen, die .xls-Datei mit Calc von OpenOffice zu öffnen und von OO als CSV zu exportieren. Dies, weil OO die Datensätze besser abtrennt (wähle den Strichpunkt als Trennzeichen).
Danach kannst du die exportierte CSV-Datei über phpMyAdmin in die Datenbank importieren.
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst DB-Abfrage in Excel mit Kriterien aus Excel (11)

Frage von JensDND zum Thema VB for Applications ...

Datenbanken
MySQL Liste simulieren (2)

Frage von Yanmai zum Thema Datenbanken ...

Datenbanken
MySQL bearbeiten - Rechte auf User ändern (6)

Frage von istike2 zum Thema Datenbanken ...

Datenbanken
MySQL - Mehrere Instanzen

Frage von ForgottenRealm zum Thema Datenbanken ...

Neue Wissensbeiträge
Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(25)

Information von SeaStorm zum Thema Utilities ...

Windows Server

Exchange Server 2016 Probleme auf Server 2016 mit iOS 11 Mailapp

Information von Oneplus zum Thema Windows Server ...

Internet

Pirate Bay lässt heimlich Krypto-Miner auf Nutzer-PCs laufen

(5)

Information von BassFishFox zum Thema Internet ...

Heiß diskutierte Inhalte
Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

Utilities
CCleaner 5.33 mit Malware infiziert (24)

Information von SeaStorm zum Thema Utilities ...

JavaScript
gelöst Kopierschutz auf Webseite (13)

Frage von honeybee zum Thema JavaScript ...

Windows Server
Änderung Subnetz an AD Standort (13)

Frage von hansdampf zum Thema Windows Server ...