Avatar billede mrosing Novice
10. december 2003 - 21:41 Der er 5 kommentarer

Hvorfor virker CInt ikke ved opslag i en array

Jeg har deklareret en array array(120) as integer

Så har jeg på en formular et felt der er knyttet til et tal i format Double.

I næsten alle tilfælde skal man indtaste et heltal n, når det er gjort skal jeg have slået array(n) op. Men den returnerer altid 0.

Det ser ud til at problemet opstår fordi n er et Double, så fandt jeg funktionen CInt og forsøgte array(CInt(n)) uden held.

Nogen forslag?

VH

MRosing
Avatar billede Slettet bruger
10. december 2003 - 21:54 #1
CInt(Array(n)) måske
Avatar billede overchord Nybegynder
15. december 2003 - 16:53 #2
Hvordan goer du?
dim n, x

n = me.DoubleTal
Array(x) = Cint(n)
Avatar billede mrosing Novice
15. december 2003 - 17:19 #3
Nej det er omvendet. Jeg skal bruge tallet x til at finde det rette element af arrayen. Hvis x ikke starter som et integer så går det galt.

Jeg har måske fundet et svar selv. Den Array der er tale om er deklarert i et modul men bliver kaldt i et Class object modul. Tilsyneladende kan Access ikke få det til at virke på den måde. Hvis jeg derimod deklarerer den Array inde i Class modulet så virker det fint, den runder bare x til det nærmeste heltal og finder det element.

Der er i det hele taget et par småting angående deklarering af globale variabler der ikke altid fungerer som jeg formodede.

Som sagt har jeg fundet om ikke en løsning så en work-around, men det ville da være rart i fremtiden at kunne deklaere en global array og så slå op i den inde fra en formular af.
Avatar billede overchord Nybegynder
16. december 2003 - 16:32 #4
ok dvs

dim x as integer
dim n

x = Cint(me.DoubelTal)
n = Array(x)

eller hvad?

Men det lyder som om du har fundet en loesning :-)
Avatar billede mrosing Novice
17. december 2003 - 14:01 #5
Jeg vil nu ikke ligefrem sige at jeg har fundet en løsning. I det her tilfælde er det nok at arrayen er deklareret lokalt i den formular hvor jeg skal bruge den, så man kan snarre tale om en work-around end en løsning.

Det du skitserer er det jeg prøvede, det virkede ikke.

Jeg kunne bare godt tænke mig at vide om der er en løsning eller om det er en fejl i programmet. :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester