Beste allen,
Ik probeer het volgende te doen:
Ik heb een excel bestand met zo'n 50 variabelen. Deze variabelen staan allemaal in een eigen tabblad, één rij per bank, voor elk jaar een kolom.
Nu wil ik dit omzetten naar een ander formaat, waarbij alle 50 variabelen in de kolommen worden weergegeven, en dan per bank 15 rijen ontstaan (voor 15 jaren)
Dus van:
Bank 2014 2013 2012
1 1 2 3
2 4 5 6
3 7 8 9
Naar:
Bank Jaar Variabele
1 2014 1
1 2013 2
1 2012 3
2 2014 4
2 2013 5
2 2012 6
Etc.
Hiervoor heb ik in VBA de volgende functie geschreven:
Function uitlezen_tabjes(indexnumber As Integer, year As Integer, wholerange As Variant) As Double
Dim i As Integer
Dim j As Integer
Dim temp As Double
Dim colcount As Integer, rowcount As Integer
colcount = wholerange.Columns.Count
rowcount = wholerange.Rows.Count
For i = 1 To rowcount
If wholerange("B" & i) = indexnumber Then For j = 1 To colcount * in kolom B staan de index nummers*
If wholerange(j, 1) = year Then temp = wholerange(j & i)
Else
Next j
Next i
uitlezen_tabjes = temp
End Function
Vervolgens voer ik in excel de functie in, met indexnummer, jaar, en range gespecificeerd.
De code blijft mij echter de #getal fout teruggeven, en ik krijg maar niet gevonden waar hem dat in zit.
Wie weet wat ik hier fout doe?
Bij voorbaat dank!
Kirsten
Ik probeer het volgende te doen:
Ik heb een excel bestand met zo'n 50 variabelen. Deze variabelen staan allemaal in een eigen tabblad, één rij per bank, voor elk jaar een kolom.
Nu wil ik dit omzetten naar een ander formaat, waarbij alle 50 variabelen in de kolommen worden weergegeven, en dan per bank 15 rijen ontstaan (voor 15 jaren)
Dus van:
Bank 2014 2013 2012
1 1 2 3
2 4 5 6
3 7 8 9
Naar:
Bank Jaar Variabele
1 2014 1
1 2013 2
1 2012 3
2 2014 4
2 2013 5
2 2012 6
Etc.
Hiervoor heb ik in VBA de volgende functie geschreven:
Function uitlezen_tabjes(indexnumber As Integer, year As Integer, wholerange As Variant) As Double
Dim i As Integer
Dim j As Integer
Dim temp As Double
Dim colcount As Integer, rowcount As Integer
colcount = wholerange.Columns.Count
rowcount = wholerange.Rows.Count
For i = 1 To rowcount
If wholerange("B" & i) = indexnumber Then For j = 1 To colcount * in kolom B staan de index nummers*
If wholerange(j, 1) = year Then temp = wholerange(j & i)
Else
Next j
Next i
uitlezen_tabjes = temp
End Function
Vervolgens voer ik in excel de functie in, met indexnummer, jaar, en range gespecificeerd.
De code blijft mij echter de #getal fout teruggeven, en ik krijg maar niet gevonden waar hem dat in zit.
Wie weet wat ik hier fout doe?
Bij voorbaat dank!
Kirsten