Hej jag har ett problem med en vektor som jag försöker anropa. Problemet ligger i att vektorn finns i en annan modul än vad jag gör anropet från. Normalt strävar man efter att kapsla koden. Eftersom detta gör koden lätt att underhålla och förändra. tack för inlägget. tack för inlägget. tack för inlägget. anropa vektor från annan modul (formulär)
Jag antar att jag därmed måste ha någon form av global vektor. När jag deklarerar min vektor med public får jag dock ett "Compile error", "arrays not allowed as Public members of object modules".
Så är det någon som har en lösning hur jag kan nå min vektor (som alltså just nu felaktigt är dim-deklarerad) från en annan modul är formulär som det egentligen i mitt fall handlar om.
Mvh MagnusSv: anropa vektor från annan modul (formulär)
Det du söker strider just mot detta. Att använda "globala" variabler kan nästan betraktas som en dödssynd. Istället kan du skicka med den som parametrar/argument vid anrop.
Om du bifogar lite av din kod så kan det var lättaare att ge dig mer konkreta exempel.Sv: anropa vektor från annan modul (formulär)
Min vektor kallad resultat utgörs av en beräkning som ligger i en for-slinga. Varje beräkning, dvs varje varv i slingan bildar ett element i resultat-vektorn. Vektorn ligger i modulen kostnader_indata.
Varje beräkning eller element i vektorn vill jag sen visuellt presentera i en kontrollvektor (textruta) i ett formulär (kallat presenteraresultat). Kontrollvektorn/textrutan som kallas lblvinst(i) laddas dynamiskt.
Följande text ligger i formuläret presenteraresultat
'Här byggs textrutorna i kontrollvektorn samt hämtar data från vektorn resultat i formuläret kostnader_indata.
For i =0 to 5
Load lblvinst(i)
lblvinst(i).Caption = kostnader_indata.resultat(i)
lblvinst(i).Top = lblvinst(i - 1).Top + lblvinst(i - 1).Height
lblvinst(i).Visible = True
next i
Jag vill således i varje textruta i formuläret "presenteraresultat" visa det vektorelement som gäller för samma index i vektorn "resultat" i modulen kostnader_indata.
En idé skulle kanske kunna vara att spara vektorn som finns i modulen kostnader_indata som en fil. Denna fil kan kanske öppnas i formuläret presenteraresultat och därefter läsas av och visas i vektorn lblvinst.Sv: anropa vektor från annan modul (formulär)
Min vektor kallad resultat utgörs av en beräkning som ligger i en for-slinga. Varje beräkning, dvs varje varv i slingan bildar ett element i resultat-vektorn. Vektorn ligger i modulen kostnader_indata.
Varje beräkning eller element i vektorn vill jag sen visuellt presentera i en kontrollvektor (textruta) i ett formulär (kallat presenteraresultat). Kontrollvektorn/textrutan som kallas lblvinst(i) laddas dynamiskt.
Följande text ligger i formuläret presenteraresultat
'Här byggs textrutorna i kontrollvektorn samt hämtar data från vektorn resultat i formuläret kostnader_indata.
For i =0 to 5
Load lblvinst(i)
lblvinst(i).Caption = kostnader_indata.resultat(i)
lblvinst(i).Top = lblvinst(i - 1).Top + lblvinst(i - 1).Height
lblvinst(i).Visible = True
next i
Jag vill således i varje textruta i formuläret "presenteraresultat" visa det vektorelement som gäller för samma index i vektorn "resultat" i modulen kostnader_indata.
En idé skulle kanske kunna vara att spara vektorn som finns i modulen kostnader_indata som en fil. Denna fil kan kanske öppnas i formuläret presenteraresultat och därefter läsas av och visas i vektorn lblvinst.Sv: anropa vektor från annan modul (formulär)
Min vektor kallad resultat utgörs av en beräkning som ligger i en for-slinga. Varje beräkning, dvs varje varv i slingan bildar ett element i resultat-vektorn. Vektorn ligger i modulen kostnader_indata.
Varje beräkning eller element i vektorn vill jag sen visuellt presentera i en kontrollvektor (textruta) i ett formulär (kallat presenteraresultat). Kontrollvektorn/textrutan som kallas lblvinst(i) laddas dynamiskt.
Följande text ligger i formuläret presenteraresultat
'Här byggs textrutorna i kontrollvektorn samt hämtar data från vektorn resultat i formuläret kostnader_indata.
For i =0 to 5
Load lblvinst(i)
lblvinst(i).Caption = kostnader_indata.resultat(i)
lblvinst(i).Top = lblvinst(i - 1).Top + lblvinst(i - 1).Height
lblvinst(i).Visible = True
next i
Jag vill således i varje textruta i formuläret "presenteraresultat" visa det vektorelement som gäller för samma index i vektorn "resultat" i modulen kostnader_indata.
En idé skulle kanske kunna vara att spara vektorn som finns i modulen kostnader_indata som en fil. Denna fil kan kanske öppnas i formuläret presenteraresultat och därefter läsas av och visas i vektorn lblvinst.