Excel/CSV bug

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Database Developer

Functie omschrijving Voor een logistieke dienstverlener in omgeving Zuid Beijerland zijn wij op zoek naar versterking. Weet jij als geen ander systemen aan elkaar te koppelen en heb jij goede kennis van SQL en UML, lees dan snel verder! Jouw taken zien er als volgt uit: Je bent in deze rol voornamelijk verantwoordelijk voor het bouwen, implementeren en beheren van koppelingen tussen de bestaande systemen (zowel business 2 business als application 2 application). Daarnaast inventariseer je de wensen van in- en externe klanten, die je vervolgens samen met je collega's, vertaalt naar technische specificaties, die jullie zelf ontwikkelen en implementeren.

Bekijk vacature »

Ervaren Software Developer

Functie omschrijving Ben jij een ervaren Software Developer, en heb je ervaring met technieken zoals C#, MS Access & SQL? Vind jij het leuk om maatwerk software te ontwikkelen voor klanten in een specifieke branche? Dan is dit de baan voor jou! Als ontwikkelaar ben jij samen met een team van 12 collega’s verantwoordelijk voor het bouwen van nieuwe functionaliteiten en het uitbreiden van de core applicatie. Belangrijk is dat je ervaring hebt met C# en MS Access. Je bent flexibel en klantvriendelijk ingesteld, omdat het belangrijk is om de klanten zo goed mogelijk van dienst te kunnen zijn. Thuiswerken

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Fullstack developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

C# developer

Functie omschrijving We are looking for a dutch native speaker Ik ben op zoek naar een back-end developer, die met name kennis & ervaring heeft van de programmeertaal C#. Jij gaat aan de slag bij een topspeler in de logistieke sector, die zich behalve met logistiek, ook bezig houdt met softwareontwikkeling. Welke taken komen hierbij kijken? Je gaat desktop- en webapplicaties onderhouden en optimaliseren, waarin je werkt met o.a. C#, ASP.NET, SQL Server en T-SQL. Je hebt regelmatig klantcontact om de wensen in kaart te brengen en te evalueren over de huidige draaiende applicaties. Je implementeert nieuwe functionaliteiten toe aan

Bekijk vacature »

Back-end developer

Dit ga je doen Development d.m.v. XQuery, JSON/XML en REST API's; Ontwikkelen aan een tof en complex zorgplatform; Koppelingen maken met de NoSQL database; Testen en documenteren van de ontwikkelde functionaliteiten; Samenwerking met andere front- en back-end ontwikkelaars. Hier ga je werken Voor een vooruitstrevende organisatie binnen de zorg in Den Haag zijn wij opzoek naar een Back-end Developer die ervaring heeft met o.a.XQuery en Vue.JS of daarin graag zou willen ontwikkelen. Je zal ontwikkelen aan een tof en complex zorgplatform en koppelingen maken met de NoSQL database. Ook het testen en documenteren van de ontwikkelde functionaliteiten behoort tot jouw

Bekijk vacature »

Fullstack JavaScript Developer Webapplicaties

Bedrijfsomschrijving Voor deze organisatie ben ik op zoek naar een getalenteerde Fullstack JavaScript Developer. Ze is een snelgroeiend software development agency dat zich richt op het ontwikkelen van moderne webapplicaties en complexe systemen voor haar klanten. Ze is gevestigd onder de rook van Utrecht en heeft als doel om tot de top van de Nederlandse agencies te behoren. Deze organisatie maakt softwareoplossingen voor verschillende soorten bedrijven. Innovatie staat hoog in het vaandel en je zult dus met nieuwe technieken aan de slag gaan. Ze hebben klanten in vele branches zitten, zoals retail, finance, gezondheid en onderwijs. De diverse klanten zorgen

Bekijk vacature »

PHP Developer

Functieomschrijving Wij zijn op zoek naar een PHP Developer met Laravel ervaring! Voor een groeiende werkgever in regio Breda zijn wij op zoek naar een medior PHP developer met Laravel ervaring. Je gaat aan de slag met het ontwikkelen van maatwerk software voor klanten in een specifieke markt. Als PHP developer ben je samen met een gemotiveerd team van 6 collega’s verantwoordelijk voor de ontwikkeling, beheer en het innoveren van informatiesystemen voor klanten in een specifieke branche. Als software developer ondersteun je complexe uitdagingen van klanten. Je brengt hun wensen in kaart en vertaalt deze door naar maatwerk software. Om

Bekijk vacature »

Ervaren PHP Developer

Functie omschrijving Jelling IT zoekt ervaren PHP developer! Voor een organisatie in de regio Rhenen zijn wij op zoek naar een ervaren PHP developer die gaat functioneren als een verlengstuk van de klant. Jij bent iemand die technisch complexe zaken met enthousiasme aanvliegt. Je bent in staat om aan meerdere projecten te werken en werkt graag met de nieuwste technieken. In deze functie werk je veel samen met front-end developers en stel je alles in het werk om grote verschillen voor de klanten teweeg te brengen. Verder ben jij iemand die graag zichzelf uitdaagt en die altijd de beste wilt

Bekijk vacature »

.NET developer

Functie Als .NET ontwikkelaar ga jij aan de slag bij een van onze klanten actief in de High Tech Industrie. Onze klanten zijn voornamelijk gelokaliseerd in de omgeving van Eindhoven. Wij zijn erg selectief als het gaat om de projecten die wij accepteren en richten ons dan ook alleen op innovatieve en complexe projecten. Omdat onze klanten voornamelijk gespecialiseerd zijn in de machinebouw, werk jij ook vaak dicht tegen de machines aan. Ons team bestaat momenteel uit Embedded engineers, IOT developers en Cloud engineers. Wij werken voornamelijk aan Microsoft projecten waar er gebruik wordt gemaakt van WPF, UWP, .NET Core

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

Junior Front end developer Onderwijssoftware

Functie Als Junior front end developer kom jij terecht in een klein, maar hecht team bestaande uit 5 andere developers (waarvan 2 senioren, 2 medior en 1 junior). Met de gezamenlijke missie om “ieder kind te helpen met onze software” wordt er dagelijks gepassioneerd en hard gewerkt aan ons in-house ontwikkeld platform. Deze software is gebaseerd is op AI, machine Learning en wetenschappelijke inzichten. Dagelijks zul jij werken met onze high traffic webapplicatie. We hebben ruim 300.00 gebruikers en meer dan 2 miljard records waar je te maken mee krijgt! Verder zul jij je bezighouden met: – Het ontwikkelen van

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »
Bas Matthee

Bas Matthee

08/04/2008 16:11:00
Quote Anchor link
Je raadt het al, ik zeg hallo!

Ik ben vandaag op een probleemPJE gestuit met betrekking tot het genereren van CSV bestanden. Ik haal data uit twee tabellen en..... ach, allemaal onbelangrijk.

Het feit:

Als ik de eerste kolom van het csv bestand ID noem, geeft exel een error bij het inlezen. Verder werkt alles. Ook staat er gewoon netjes ID in de eerste kolom. Gebruik ik Id, id of iD, is er niks aan de hand. Kan het zijn dat ik een bug heb ondekt? Of wordt ID door exel gereserveerd als functie o.i.d.????
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
PHP hulp

PHP hulp

27/05/2026 12:59:34
 
Jesper Diovo

Jesper Diovo

08/04/2008 16:13:00
Quote Anchor link
Heb je het over het microsoft office programma excel of over een programma wat ik totaal niet ken?
 
Bas Matthee

Bas Matthee

08/04/2008 16:13:00
Quote Anchor link
Microsoft Office exel (logisch?)
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jacco Engel

Jacco Engel

08/04/2008 16:39:00
Quote Anchor link
Nee niet logisch want je kan het bijv ook over openoffice calc hebben
 
Bas Matthee

Bas Matthee

08/04/2008 16:41:00
Quote Anchor link
maar ik had het toch over exel in m'n eerste post, of heet openoffice calc ook exel?

Edit: (bron: Wikipedia) Calc is een digitaal rekenblad dat sterk lijkt op Excel en ongeveer dezelfde functies bezit.

EN HEET DUS GEEN EXEL! ;)
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jacco Engel

Jacco Engel

08/04/2008 16:43:00
Quote Anchor link
exel != excel
 
Jelmer -

Jelmer -

08/04/2008 16:43:00
Quote Anchor link
Nee, beiden heten niet exel. Microsoft heeft een product dat excel heet.

Bas:
... een error ...
Laat eens zien?
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
 
Bas Matthee

Bas Matthee

08/04/2008 16:45:00
Quote Anchor link
whoops exel != excel, je hebt gelijk. Taalfoutje.

Mij oprechte excuses (mag ook gezegd worden).

PS: Error komt eraan (wordt printscreen) (2 errors btw.)

EDIT!!!!! : http://congrez.difmedia.nl/errors.gif
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Luc Zontrop

Luc Zontrop

08/04/2008 17:06:00
Quote Anchor link
Verder zoeken helpt echt hoor!
http://support.microsoft.com/kb/323626/nl
 
Jan Koehoorn

Jan Koehoorn

08/04/2008 17:27:00
Quote Anchor link
Als ik fputcsv gebruik voor een array en ik geef ; op als scheidingsteken, slikt Excel het wel als CSV:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    while (fetch fetch fetch) {
        fputcsv ($fp, $row, ';');
    }

?>
 
Arend a

Arend a

08/04/2008 19:01:00
Quote Anchor link
http://support.microsoft.com/kb/215591
Quote:
WORKAROUND
To open your file in Microsoft Excel, first open the file in a text editor and insert an apostrophe at the beginning of the first line of text.
 
Bas Matthee

Bas Matthee

09/04/2008 08:50:00
Quote Anchor link
'Jan:
Als ik fputcsv gebruik voor een array en ik geef ; op als scheidingsteken, slikt Excel het wel als CSV:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
    while (fetch fetch fetch) {
        fputcsv ($fp, $row, ';');
    }

?>


Het is bij mij het geval dat ik van de ene tabel NAW gegevens moet halen, netjes met bijvoorbeeld voornaam, achternaam, etc... als velden. Maar van de andere tabel moet ik ook gegevens hebben, en die zijn niet op deze manier in de tabel te vinden. Ik heb namelijk een tabel met als kolommen: id, veldnaam, veldtype, opties etc... en in een andere tabel de gegevens die bij die velden horen, bijvoorbeeld: veld_id, waarde, etc... Dus deze gegevens moet ik combineren en vervolgens achter de rij met NAW gegevens in het csv bestand zetten. Dit is in mijn geval de beste oplossing om klanten dynamisch een formulier te laten samenstellen.

Veelt tekst en uitleg en misschien nieteens duidelijk. maar ik zal de voorlopige code even plaatsen. (haal dus data uit de deelnemers tabel en data uit de deelnemers_extra tabel).

ExportCSV.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<?php
class ExportCSV {

    var
$FirstCollumn = 1;
    var
$FirstRow = 0;
    var
$CSVFile = NULL;
    var
$CollumnCount = 0;
    var
$RowPosition = 1;
    
    function
AddCollumns($CollumnName) {
        
        if ($this->FirstCollumn == 1) {
            // Dit is dus de eerste kolom, wanneer deze in hoofdletters is, gaf hij de fout.
            $this->CSVFile .= 'id';
            $this->CSVFile .= ';'.$CollumnName;
            $this->FirstCollumn++;
            $this->CollumnCount++;
        }
else {
            $this->CSVFile .= ';'.$CollumnName;
            $this->CollumnCount++;
        }
                
    }
    
    function
CloseCollumns() {
        
        
        $this->CSVFile .= "\r\n";
        $this->FirstCollumn = 1;
        
    }
    
    function
WriteRowExtra($Query) {
        
        $result_set = mysql_query($Query);
        
        $test = array();
        
        if (mysql_num_rows($result_set) > 1) {

            $aantal = 0;
            $start = 0;
            
            while ($result = mysql_fetch_object($result_set)) {
                
                if (array_key_exists($result->veld_id, $test)) {
                    $test[$result->veld_id] .= ' // '.$result->value;
                }
else {
                    $test[$result->veld_id] = $result->value;
                }
                
            }

            
            foreach ($test as $waarde) {
                    $this->AddData($waarde);
                }

        
            return true;
            
        }
elseif (mysql_num_rows($result_set) == 1) {

            $this->AddData($value);

        }
elseif (mysql_num_rows($result_set) == 0)     {

            return false;
    
        }
            
    }
    
    function
WriteRow($Query) {
        
        $result_set = mysql_query($Query);
        
        if (mysql_num_rows($result_set) == 1) {
            $result = mysql_fetch_array($result_set);
            foreach ($result as $key => $value) {
                if (!is_int($key)) {
                    $this->AddData($value);
                }
            }
        
        }
elseif (mysql_num_rows($result_set) == 0)     {
            return false;
        
        }
            
    }
    
    function
AddData($Data) {
        if ($this->RowPosition <= $this->CollumnCount) {
            if ($this->FirstRow == 0) {
                $this->CSVFile .= $Data;
                $this->FirstRow++;
                $this->RowPosition++;
            }
else {
                $this->CSVFile .= ';'.$Data;
                $this->RowPosition++;
            }
        }
else {
            $this->CSVFile .= ';'.$Data;
            $this->NewLine();
        }
    
    }
    
    function
NewLine() {
        
        $this->CSVFile .= "\r\n";
        $this->FirstRow = 0;
        $this->RowPosition = 1;
        
    }
    
    function
WriteFile($FileName) {
        
        
        
        $file = fopen($FileName,'w');
        fwrite($file,$this->CSVFile);
        fclose($file);
        chmod($FileName,0777);
        
    }


}

?>


gedeelte van deelnemers_export_csv.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
$File
= new ExportCSV;

$query = "SELECT label FROM formulier WHERE congres_id = ".$congres_id." ORDER BY positie ASC";
$label_set = mysql_query($query);
while ($label = mysql_fetch_object($label_set)) {
    $File->AddCollumns($label->label);
}


$File->CloseCollumns();

$query = 'SELECT naw_id FROM congres_deelnemers WHERE congres_id = ' . $congres_id;
$result_set = mysql_query($query);

if (mysql_num_rows($result_set) == 1) {

    $result = mysql_fetch_object($result_set);
    $File->WriteRow('SELECT * FROM deelnemers_naw WHERE id = '.$result->naw_id);
    $File->WriteRowExtra('SELECT value, veld_id FROM deelnemers_extra WHERE deelnemer_id = '.$result->naw_id .' ORDER BY veld_id ASC');
    
}
else {
    
    while ($result = mysql_fetch_object($result_set)) {
        $File->WriteRow('SELECT * FROM deelnemers_naw WHERE id = '.$result->naw_id);
        $File->WriteRowExtra('SELECT value, veld_id FROM deelnemers_extra WHERE deelnemer_id = '.$result->naw_id .' ORDER BY veld_id ASC');
    }

}


$File->WriteFile('custom/csv_export/'.$congres_id.'_'.$con_result->congresnaam.'.csv');
// Alle gegevens van $con_result worden al eerder uit de database gehaald (buiten deze code)
?>
Gewijzigd op 01/01/1970 01:00:00 door Bas Matthee
 
Jan Koehoorn

Jan Koehoorn

09/04/2008 08:59:00
Quote Anchor link
Je gegevens komen uit meer dan 1 tabel, maar het moet toch mogelijk zijn om alle velden die je op 1 Excel rij wilt hebben in een array te krijgen? Zodra dat je lukt kun je namelijk met die fputcsv aan de gang en dan neemt die je al het werk uit handen.
 
Bas Matthee

Bas Matthee

09/04/2008 09:02:00
Quote Anchor link
Maar het volgende nadeel: Ik heb in de velden met de door deelnemers ingevulde data ook de gegevens van checkboxen staan, en wanneer er 2 waarden zijn aangevinkt, worden er dus 2 rijen weggeschreven met dezelfde veld_id. Als ik dus de data in een array ga zetten, dan krijgen die dezelfde key waarde en overschrijft de laatste de vorige.

Vooralsnog is de huidige code mijn enige werkende. En zal eerst mijn andere te verrichten taken aan dit project voltooïen. Alles af? dan is het tijd voor refacturing...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.