Ik heb de mazzel (
) dat ik in Excel een raport moet bouwen, gebaseerd op een aantal selectiecriteria. Dat is niet zo spannend, alleen wil ik graag wat standaard Excel functies (formules) gebruiken, aangezien ik liever lui ben dan moe, en waarom zou ik zelf tellertjes bij houden als Excel dat zelf al heel goed kan.
Code om een formule in een cell te zetten is niet zo spannend:
En dat werkt ook uitstekend als de functie "SUM" is
Echter, zodra ik de reuze handige functie "SUBTOTAL" wil gebruiken, gaat het mis. Terwijl de subtotal zelf goed is, als ik nl. de formule, zoals ik die wil zetten vanuit code, rechtstreeks in de cell type, werkt het. Alleen, vanuit code dus niet
En dat geeft een mooie nuttige error "Application-defined or object-defined error". Waar je dus geen fluit aan hebt
Via de help en google is er wel een hoop te vinden over subtotal, maar niet over hoe je die vanuit VBA code kunt zetten.
De reden waarom ik subtotal wil gebruiken, is dat ik per blok in het raport, een totaal wil zien, en onderaan het raport ook. Subtotal is zo handig, omdat als je een range opgeeft waarbinnen subtotals staan, die worden genegeerd. Met sum worden die wel meegenomen, en klopt het totaal natuurlijk niet. En met wat creatief stoeien kan ik dan wel ranges gaan onthouden welke onderaan het raport gesumt moeten worden, maar dan kan ik weer net zo goed zelf een tellertje bijhouden en dat wilde ik nou juist liever niet (want liever lui dan moe
).
Heeft iemand een idee waarom subtotal niet vanuit code gezet mag worden? Nogmaals, als ik de string waarin de subtotal-formule staat, in de debug window print, en die copy-paste naar de cell waar ie moet komen, werkt ie prima, dus de formule zelf is ok. En het werkt dus ook met bv de SUM functie.... maar dus niet met subtotal
Oh ja, ik wist dat ik wat vergat... tis Excell (Office) 2000
Code om een formule in een cell te zetten is niet zo spannend:
code:
1
| Cells(lRegel, sKolom).Formula = "=functie(params)" |
En dat werkt ook uitstekend als de functie "SUM" is
code:
1
| Cells(lRegel, sKolom).Formula = "=SUM(A1:A5)" |
Echter, zodra ik de reuze handige functie "SUBTOTAL" wil gebruiken, gaat het mis. Terwijl de subtotal zelf goed is, als ik nl. de formule, zoals ik die wil zetten vanuit code, rechtstreeks in de cell type, werkt het. Alleen, vanuit code dus niet
code:
1
| Cells(lRegel, sKolom).Formula = "=SUBTOTAL(9;A1:A5)" |
En dat geeft een mooie nuttige error "Application-defined or object-defined error". Waar je dus geen fluit aan hebt
Via de help en google is er wel een hoop te vinden over subtotal, maar niet over hoe je die vanuit VBA code kunt zetten.
De reden waarom ik subtotal wil gebruiken, is dat ik per blok in het raport, een totaal wil zien, en onderaan het raport ook. Subtotal is zo handig, omdat als je een range opgeeft waarbinnen subtotals staan, die worden genegeerd. Met sum worden die wel meegenomen, en klopt het totaal natuurlijk niet. En met wat creatief stoeien kan ik dan wel ranges gaan onthouden welke onderaan het raport gesumt moeten worden, maar dan kan ik weer net zo goed zelf een tellertje bijhouden en dat wilde ik nou juist liever niet (want liever lui dan moe
Heeft iemand een idee waarom subtotal niet vanuit code gezet mag worden? Nogmaals, als ik de string waarin de subtotal-formule staat, in de debug window print, en die copy-paste naar de cell waar ie moet komen, werkt ie prima, dus de formule zelf is ok. En het werkt dus ook met bv de SUM functie.... maar dus niet met subtotal
Oh ja, ik wist dat ik wat vergat... tis Excell (Office) 2000
[ Voor 4% gewijzigd door Crazy D op 27-03-2003 11:20 ]
Exact expert nodig?