Avatar billede kasperth Juniormester
24. juli 2012 - 14:21 Der er 5 kommentarer og
1 løsning

Oprette variable baseret på anden variabel

Hejsa Eksperter,

Jeg har en kode i vba. I denne kode har jeg en konstant (A), som får noget input. I min kode har jeg nu A = "test". På baggrund af denne vil jeg gerne oprette en ny string med navnet test.

Jeg kan ikke skrive "dim test as string", da navnet skal afhænge af en tidligere indtastning. Jeg har prøvet forskellige ting - eksempelvis "dim a.value as string", men intet virker.

Nogen gode ideer?
Avatar billede mireigi Novice
24. juli 2012 - 14:57 #1
En variabel har altid et fast navn der aldrig ændrer sig. Kun værdien i variablen kan ændre sig.

Dette er lavet for at sikre entydig adgang til værdier gemt i hukommelsen (RAM).

Ved at bruge
Dim myVar As String

Afsættes en plads i hukommelsen, hvor værdien, og kun den ene værdi, i myVar findes. Det er programmets reference eller CPR-Nr om du vil for værdien.

Hvis du prøver at beskrive, hvad du gerne vil opnå, kan vi hjælpe dig med en anden løsning der ikke bryder med grundlæggende programmeringsregler.
Avatar billede kasperth Juniormester
24. juli 2012 - 16:14 #2
Tænkte godt at det ikke var så simpelt som det lød ;)

Jeg har et dokument med en masse tekst i kantede parenteser. Eksempelvis kunne der stå [navn1] flere steder. Jeg har lavet en makro, som kan finde teksten "[navn1]".

Tanken herefter er, at første gang makroen støder på denne variabel, så skal der kommer en inputbox op og skrive "Hvad skal variablen navn1" være. Herefter skal den hver gang makroen støder på teksten "[navn1]", så indsætte den tidligere indtastede tekst..

Man kunne naturligvis også bare få den til at lave en søg og erstat på [navn1] med det samme fremfor at gøre det så besværligt..
Avatar billede mireigi Novice
25. juli 2012 - 09:21 #3
Jeg vil også mene at Søg/Erstat er den bedste løsning.

Det giver samme funktionalitet som du søger efter, er nemmere at lave og mere fleksibelt.
Avatar billede kasperth Juniormester
26. juli 2012 - 14:41 #4
Post et svar, hvis du vil have lidt point, mireigi..
Avatar billede mireigi Novice
26. juli 2012 - 15:06 #5
Bare tag dem selv. Du gav jo selv løsningen :)
Avatar billede kasperth Juniormester
26. juli 2012 - 15:54 #6
Takker!

Kan allerede nu godt love, at du får mulighed for at få dem flere gange.. har gang i et projekt, som er en del mere advanceret end mine kundskaber. Men det er jo sådan man lærer mest ;)
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