Ik importeer data via Oracle Discoverer in Excel. Als de data geimporteerd is (als tussenstap doe ik een copy and paste van een tussensheet naar de uiteindelijke sheet) staan de getallen er als tekst in met als gevolg dat mijn draaitabel niet helemaal doet wat ik wil. Ik doe dit alles in VBA, hoe copieer ik nu de data van de ene sheet naar de andere zonder dat het als text overkomt, moet ik eerst een conversie doen? Als ik een conversie moet doen, hoe doe ik dat dan? of is er nog een andere manier om dit probleem op te lossen.
Staan de velden wel gedefineerd als zijnde number velden in je sheet?Verwijderd schreef op 16 februari 2004 @ 10:29:
Ik importeer data via Oracle Discoverer in Excel. Als de data geimporteerd is (als tussenstap doe ik een copy and paste van een tussensheet naar de uiteindelijke sheet) staan de getallen er als tekst in met als gevolg dat mijn draaitabel niet helemaal doet wat ik wil. Ik doe dit alles in VBA, hoe copieer ik nu de data van de ene sheet naar de andere zonder dat het als text overkomt, moet ik eerst een conversie doen? Als ik een conversie moet doen, hoe doe ik dat dan? of is er nog een andere manier om dit probleem op te lossen.
Weet je zeker dat het eerst wel 'getallen' waren?
Je kan met VBA overigens de gepaste-uriseerde cellen omvormen naar getallen met:
Je kan met VBA overigens de gepaste-uriseerde cellen omvormen naar getallen met:
code:
1
| Selection.NumberFormat = "0" |
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Is de celopmaak wel ingesteld op getallen?
a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]
Dit is mijn code nu:
Workbooks("testp.xls").Worksheets("marap2003").Range("a3:k80").Copy Destination:=Workbooks("marap 2004 januari.xls").Worksheets("bestuur_input_t").Range("a5")
Workbooks("marap 2004 januari.xls").Worksheets("bestuur_input_t").Range("a5").NumberFormat = "0"
Ik heb de numberformat toegevoegd maar het resultaat blijft hetzelfde.
Uit Oracle komt het waarschijnlijk als tekst binnen, helaas kan ik daar niets aan doen, ik moet met deze data werken.
De celopmaak staat op standaard maar als er wel een getal in staat, staat ie ook op standaard dus dat schijnt niet altijd nodig te zijn
Workbooks("testp.xls").Worksheets("marap2003").Range("a3:k80").Copy Destination:=Workbooks("marap 2004 januari.xls").Worksheets("bestuur_input_t").Range("a5")
Workbooks("marap 2004 januari.xls").Worksheets("bestuur_input_t").Range("a5").NumberFormat = "0"
Ik heb de numberformat toegevoegd maar het resultaat blijft hetzelfde.
Uit Oracle komt het waarschijnlijk als tekst binnen, helaas kan ik daar niets aan doen, ik moet met deze data werken.
De celopmaak staat op standaard maar als er wel een getal in staat, staat ie ook op standaard dus dat schijnt niet altijd nodig te zijn
[ Voor 24% gewijzigd door Verwijderd op 16-02-2004 10:47 ]
Staan er punten i.p.v. komma's als decimaalteken in je getallen?
De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland
Ik hoop dat je doorhebt dat je nu het format van slechts één cel ("a5") hebt veranderd. Het lijkt me trouwens een beter idee om eerst de celopmaak te veranderen en dan de boel te kopieëren met:
Visual Basic:
1
2
3
| Workbooks("testp.xls").Worksheets("marap2003").Range("a3:k80").Copy Workbooks("marap 2004 januari.xls").Worksheets("bestuur_input_t"). _ Range("a5").PasteSpecial xlPasteValues |
[ Voor 13% gewijzigd door KingRichard op 16-02-2004 11:47 . Reden: opmaak... ]
a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]
Klopt, ik wist dat ik maar 1 cel aan het wijzigen was. Is voor de test even voldoende. Ik ga nu de VB code even uitproberen, thanks
Ik kom er toch nog niet helemaal uit. Ik heb nog eens goed gekeken wat het probleem veroorzaakt maar het lijkt te maken te hebben met het formaat van de bestaande excel sheet.
1. Ik heb een bestaande Excel sheet (niet van mijzelf)
2. Hier staat de nodige data in, in kolom "D" staat een datum in de vorm van (01012004). De celeigenschappen van deze kolom staat gewoon op standaard meer op een of andere manier ziet Excel dit toch als een getal wat op zich prima is maar ik vraag me alleen af hoe dit kan.
3. Nu importeer ik data vanuit discoverer via een tussensheet (kan niet rechtreeks) naar mijn originele sheet.
4. In de tussensheet staat kolom D als tekst.
5. Vervolgens copieer ik de data van het tussensheet naar de originele en ik heb in de originele kolom "D" als text maar de celeigenschappen staan gewoon op standaard
Als ik bij stap 4 een conversie doe naar getal is het resultaat ook niet goed want dan staan de celeigenschappen in de originele sheet ook op "getal"terwijl die in de oorspronkelijke (goede) situatie gewoon op "Standaard" stond.
Ik begrijp er niets meer van.......................
1. Ik heb een bestaande Excel sheet (niet van mijzelf)
2. Hier staat de nodige data in, in kolom "D" staat een datum in de vorm van (01012004). De celeigenschappen van deze kolom staat gewoon op standaard meer op een of andere manier ziet Excel dit toch als een getal wat op zich prima is maar ik vraag me alleen af hoe dit kan.
3. Nu importeer ik data vanuit discoverer via een tussensheet (kan niet rechtreeks) naar mijn originele sheet.
4. In de tussensheet staat kolom D als tekst.
5. Vervolgens copieer ik de data van het tussensheet naar de originele en ik heb in de originele kolom "D" als text maar de celeigenschappen staan gewoon op standaard
Als ik bij stap 4 een conversie doe naar getal is het resultaat ook niet goed want dan staan de celeigenschappen in de originele sheet ook op "getal"terwijl die in de oorspronkelijke (goede) situatie gewoon op "Standaard" stond.
Ik begrijp er niets meer van.......................
Nu raak ik ook de draad kwijt.Verwijderd schreef op 16 februari 2004 @ 13:29:
Ik begrijp er niets meer van.......................
Ik zou sowieso aanraden om te stoppen met VBA zolang je niet weet wat het probleem precies is. Probeer het eerst met de hand goed te doen, dan kun je daarna je de correcte handelingen omzetten in code.
Ik heb de draad nog even doorgelezen en ik geloof dat ik niet helemaal duidelijk was. Ik bedoelde dat je vóór het plakken eerst de opmaak van de doelsheet zou kunnen veranderen. Dus niet die van de tussensheet.
a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]
Ik weet, het is een vaag verhaal aan het worden.
Ik was inderdaad bezig om eea met het handje te doen. Ik heb de data in discoverer gecopieerd en in Excel gepast en wat bleek? Toen was het wel goed.
Om de data van discoverer in Excel te krijgen gaf ik de parameter "XLS" mee (logisch lijkt me). Nu heb ik de parameter "TEXT" meegegeven en nu gaat het wel goed, Excel ziet het nu wel als een getal, ik begrijp er niets van maar het werkt nu wel.
Blijft eigenlijk wel de vraag open waarom er twee verschillende soorten data in een cel kunnen staan terwijl de celeigenschappen wel hetzelfde zijn?
Op die vraag zou ik wel graag eens een antwoord hebben.
Mijn probleem is echter wel opgelost, bedankt voor jullie tips allemaal
Ik was inderdaad bezig om eea met het handje te doen. Ik heb de data in discoverer gecopieerd en in Excel gepast en wat bleek? Toen was het wel goed.
Om de data van discoverer in Excel te krijgen gaf ik de parameter "XLS" mee (logisch lijkt me). Nu heb ik de parameter "TEXT" meegegeven en nu gaat het wel goed, Excel ziet het nu wel als een getal, ik begrijp er niets van maar het werkt nu wel.
Blijft eigenlijk wel de vraag open waarom er twee verschillende soorten data in een cel kunnen staan terwijl de celeigenschappen wel hetzelfde zijn?
Op die vraag zou ik wel graag eens een antwoord hebben.
Mijn probleem is echter wel opgelost, bedankt voor jullie tips allemaal
Verwijderd schreef op 16 februari 2004 @ 14:08:
Blijft eigenlijk wel de vraag open waarom er twee verschillende soorten data in een cel kunnen staan terwijl de celeigenschappen wel hetzelfde zijn?
Misschien haal je nu databases en spreadsheets door elkaar. In een database heeft één kolom één type en meerdere waarden (rijen).
a horse! a horse! my kingdom for a horse! (exeunt)
[got.profile] | [t.net.profile] | [specs]
had zojuist hetzelfde probleem maar kopieren naar kladblok en weer terug verricht wonderen...
Pagina: 1