jbronkhorst
Nieuwe gebruiker
- Lid geworden
- 31 mrt 2009
- Berichten
- 2
Ik heb een excelsheet waarin een pivottabel staat. Deze tabel bestaat nu uit ruim 305.000 regels en groeit door tot over een miljoen aan het einde van het jaar. In deze tabel is de kolom met het bedrag gedefinieerd als decimaal getal:
Als ik echter een draaitabel maakt vanuit die pivottabel, en ik dubbelklik op een bedrag uit die draaitabel om de detailregels op te halen, dan komen getallen van die kolom (bedrag) er als volgt uit te zien (lijkt op tekstopmaak):
Mijn eerste vraag is of dit probleem is op te lossen. Ik vermoed bepaalde instellingen (nationaal/internationaal) en als het windows instellingen zijn dan kan ik daar niet bij. Ik heb andere veldinstellingen geprobeerd (zoals valuta en geheel getal) maar geen effect.
Mijn noodoplossing is een macro die getallen omzet. Deze macro wordt uitgevoerd als ik detailregels opvraag.
In een module:
Sub blahh(sht As Worksheet)
MsgBox "formatting nieuw tabblad: " & sht.Name
End Sub
In thisWorkBook:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
ans = MsgBox("Getallen omzetten naar numeriek?", vbYesNo)
If ans = vbNo Then Exit Sub
LastRow = ActiveSheet.Range("a1048000:a1048000").End(xlUp).Row
If ans = vbYes Then sq = Range("u4:u" & LastRow)
ReDim Temparray(1 To UBound(sq))
For i = 1 To UBound(sq)
Temparray(i) = sq(i, 1) * 1
Next
Range("u4:u" & LastRow) = Application.Transpose(Temparray)
End Sub
Resultaat in het sheet met meer dan 100.000 regels is dat na een bepaald aantal regels deze macro ermee stopt. Dan zet hij bedrag niet meer om, maar maakt een #N/B. Meestal rondom de 50.000 regels. Deze keer rond de 35.000:
Het vermoeden is dat de beperking zit in het gebruik van de ReDim functie. Echter ik heb geen oplossing kunnen vinden hoe dit te omzeilen of een vervanger voor deze functie die het wel goed doet met heel veel regels.
Mijn tweede vraag is dus of deze macro is te maken zodat hij altijd alle regels omzet. Dat kunnen dus bijna een miljoen regels zijn uiteindelijk.
Ik hoop dat iemand dit antwoord kan geven.
Alvast dank.
Jaap.
Als ik echter een draaitabel maakt vanuit die pivottabel, en ik dubbelklik op een bedrag uit die draaitabel om de detailregels op te halen, dan komen getallen van die kolom (bedrag) er als volgt uit te zien (lijkt op tekstopmaak):
Mijn eerste vraag is of dit probleem is op te lossen. Ik vermoed bepaalde instellingen (nationaal/internationaal) en als het windows instellingen zijn dan kan ik daar niet bij. Ik heb andere veldinstellingen geprobeerd (zoals valuta en geheel getal) maar geen effect.
Mijn noodoplossing is een macro die getallen omzet. Deze macro wordt uitgevoerd als ik detailregels opvraag.
In een module:
Sub blahh(sht As Worksheet)
MsgBox "formatting nieuw tabblad: " & sht.Name
End Sub
In thisWorkBook:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
ans = MsgBox("Getallen omzetten naar numeriek?", vbYesNo)
If ans = vbNo Then Exit Sub
LastRow = ActiveSheet.Range("a1048000:a1048000").End(xlUp).Row
If ans = vbYes Then sq = Range("u4:u" & LastRow)
ReDim Temparray(1 To UBound(sq))
For i = 1 To UBound(sq)
Temparray(i) = sq(i, 1) * 1
Next
Range("u4:u" & LastRow) = Application.Transpose(Temparray)
End Sub
Resultaat in het sheet met meer dan 100.000 regels is dat na een bepaald aantal regels deze macro ermee stopt. Dan zet hij bedrag niet meer om, maar maakt een #N/B. Meestal rondom de 50.000 regels. Deze keer rond de 35.000:
Het vermoeden is dat de beperking zit in het gebruik van de ReDim functie. Echter ik heb geen oplossing kunnen vinden hoe dit te omzeilen of een vervanger voor deze functie die het wel goed doet met heel veel regels.
Mijn tweede vraag is dus of deze macro is te maken zodat hij altijd alle regels omzet. Dat kunnen dus bijna een miljoen regels zijn uiteindelijk.
Ik hoop dat iemand dit antwoord kan geven.
Alvast dank.
Jaap.