Ginger
Terugkerende gebruiker
- Lid geworden
- 29 dec 2006
- Berichten
- 2.972
Wie geeft mij raad? Naar mijn idee heb ik vaker gewerkt met de combinatie van een Application.Index en daarbinnen een Array om de kolommen aan te geven die ik wil. Maar of ik NU iets fout doe? Het wil in elk geval niet werken. In het hele simpele voorbeeld vul ik 3 array's. De eerste aan de hand van een bereik uit de sheet, de 2e en de 3e als poging om een array te vullen met een kleiner bereik.
De array q1 geeft een 2 dimensionaal bereik 1 to 11, 1 to 10
De array q2 geeft een 1 dimensionaal bereik 1 to 7 (verwacht: 2 dimensies 1 to 11, 1 to 7)
De array q3 geeft een 2 dimensionaal bereik 1 to 7, 1 to 1 (verwacht: 2 dimensies 1 to 11, 1 to 7)
Waarom ziet VBA het kolombereik 3, 4, 5, 6, 7, 8, 9 als regels en dus niet als kolommen? En waarom gaat het nou fout?
Code:
Sub MaakTabel()
q1 = ActiveSheet.Cells(1).CurrentRegion
q2 = Application.Index(q1, 0, Array(3, 4, 5, 6, 7, 8, 9))
q3 = Application.Index(q1, 0, Application.Transpose(Array(3, 4, 5, 6, 7, 8, 9)))
End Sub
De array q1 geeft een 2 dimensionaal bereik 1 to 11, 1 to 10
De array q2 geeft een 1 dimensionaal bereik 1 to 7 (verwacht: 2 dimensies 1 to 11, 1 to 7)
De array q3 geeft een 2 dimensionaal bereik 1 to 7, 1 to 1 (verwacht: 2 dimensies 1 to 11, 1 to 7)
Waarom ziet VBA het kolombereik 3, 4, 5, 6, 7, 8, 9 als regels en dus niet als kolommen? En waarom gaat het nou fout?
Bijlagen
Laatst bewerkt: