Avatar billede folj Forsker
03. februar 2017 - 11:11 Der er 2 kommentarer og
2 løsninger

VBA-Excel: Array ind i en Constant?

Det er åbenbart ikke muligt at kaste et array ind i en Constant.

Jeg forsøger at sætte constanten sådan

Public Const RolesArrayN As Variant = Array("GÆR1", "GÆR2", "KLAR", "SOJL")

Allerede ved åbning af filen reagerer Excel på at det skal være en 'Constant value'

Kan det være rigtigt eller er det blot mig der gør jeg det forkert?

Er der en anden oplagt løsning?
Avatar billede supertekst Ekspert
03. februar 2017 - 11:59 #1
Måske:

Dim RolesArrayN As Variant
RolesArrayN = Array("GÆR1", "GÆR2", "KLAR", "SOJL")
Avatar billede folj Forsker
03. februar 2017 - 13:00 #2
@supertekst
:
ja så bliver det altså en variabel og ikke en constant...
Avatar billede supertekst Ekspert
03. februar 2017 - 13:16 #3
Ok - så må du jo flytte fra konstant til variabel
Avatar billede folj Forsker
06. februar 2017 - 09:26 #4
Du har ret Supertekst. Jeg må bøje mig for at et array ikke kan betragtes som en constant.

Ved nærmere eftertanke så var mit behov nok mest at få arrayet gjort tilgængeligt globalt og knap så vigtigt om det var defineret som konstant eller variabel.
Jeg må derfor nøjes med at erklære det som en global variabel. (Global hedder mere korrekt "Public" i VBA-programmering), men det handler om at udvide rækkevidden så variablen er tilgængelig for enhver procedure i mit program, uanset om proceduren findes i samme modul som variablen er defineret eller ej.

Derfor er det nødvendigt at jeg definerer min variabel oppe i det vi kalder Genaral Declaration-området i et modul sådan:
Public RolesArrayN As Variant


Så må jeg i min procedure et sted lige kaste værdierne ind i mit array
RolesArrayN = Array("GÆR1", "GÆR2", "KLAR", "SOJL")
som så vil være tilgængelig fra alle procedurer og functions...
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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