anoniem Geplaatst: 28 november 2003 Delen Geplaatst: 28 november 2003 In Excel maak ik een rapportage op basis van een stapel gegevens die uit een externe tool komen. In deze rapportage worden gemiddelde's berekend. Nou is het geen probleem als deze gemiddelde's standaard zouden zijn want dan zegt Excel gewoon =GEMIDDELDE(data!A2:A24) maar nu moet het in dit rapport beetje anders. Soms moet het gewicht op een andere plaats gelegd worden. Standaard is 12345 (dan is het midden de 3) maar ik soms moet een vraag met de gewichten 54321 (dan maakt het voor het midden niet uit maar links en rechts wel) en soms is het gewicht 210-1-2 het midden is dan 0. In SPSS kan je zeggen RECODE en verander de waarden maar, ik ben bezig geweest met iets in VB: [code:1:d5abdd0943] ... Select Case intWeging Case "54321": If (intAnswer = 1) Then strTemp = strTemp & "5" ElseIf (intAnswer = 2) Then strTemp = strTemp & ";4" ElseIf (intAnswer = 3) Then strTemp = strTemp & ";3" ElseIf (intAnswer = 4) Then strTemp = strTemp & ";2" ElseIf (intAnswer = 5) Then strTemp = strTemp & ";1" End If Case "210-1-2": If (intAnswer = 1) Then strTemp = strTemp & ";2" ElseIf (intAnswer = 2) Then strTemp = strTemp & ";1" ElseIf (intAnswer = 3) Then strTemp = strTemp & ";0" ElseIf (intAnswer = 4) Then strTemp = strTemp & ";-1" ElseIf (intAnswer = 5) Then strTemp = strTemp & ";-2" End If End Select ... [/code:1:d5abdd0943] Maar het lukt me niet. Wie heeft een geniaal idee? Quote Link naar reactie
anoniem Geplaatst: 2 december 2003 Auteur Delen Geplaatst: 2 december 2003 Ik heb het zelf opgelost. Voor een ieder die het boeiend vindt: [code:1:7766615022] Public Function fnNewGemiddelde(intWeging, intGemiddelde) Dim strTemp As String Select Case intWeging Case "12345": strTemp = intGemiddelde Case "54321": strTemp = 6 - intGemiddelde Case "210-1-2": strTemp = -3 + intGemiddelde End Select fnNewGemiddelde = FormatNumber(strTemp, 1) End Function [/code:1:7766615022] Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen