Avatar billede jpi Mester
19. januar 2010 - 09:35 Der er 3 kommentarer og
1 løsning

Variable i tabel

Lidt besværligt at forklare, men jeg prøver:

Lige nu har jeg noget kode der ligner dette. Eksport af data til Excel:

celle(1,1) = "Overskrift 1"
celle(1,2) = "Overskrift 2"
celle(1,3) = "Overskrift 3"

for x = 0 to end
  celle(x+2,1) = strTekst1
  celle(x+2,2) = strTekst2
  celle(x+2,3) = strTekst3
  ...
next x

Efter hvert gennemløb af løkken er indholdet af StrTekst-variablerne ændret (andet sted i koden)

Der er forskellige af den slags eksporter, så ændringer i rækkefølge osv. er ikke så nemt, da det skal ændres forskellige steder.

Jeg kunne tænke mig noget, hvor jeg f.eks. laver en liste og kæder "Overskrift 1" og StrTekst1 sammen (og det skal ikke være indholdet af strTekst1, men selve variablen.

Så kunne det være noget i stil med

list.Add("Overskrift 1", strTekst1)
list.Add("Overskrift 2", strTekst2)
list.Add("Overskrift 3", strTekst3)

Denne del kode ville så bestemme rækefølgen og skulle kun laves et enkelt sted, så vil man kunne bruge listen til udskrift senere

Ovenstående virker selvfølgelig ikke, da det kun er indholdet af variablerne der er gemt i listen.

Er der en smart måde at gemme en henvisning til variablen og ikke til indholdet af den ?

Håber jeg har forklaret det forståeligt nok, ellers spørg :-)
Avatar billede tubber Juniormester
11. februar 2010 - 07:25 #1
er det ikke bare
list.add("Overskrift 1","strTekst1")
list.add("Overskrift 2","strTekst2")
list.add("Overskrift 3","strTekst3")

Når du så kalder din value så vil det være noget der ligner:

for x = 0 to end
  celle(x+2,1) = list.value
  celle(x+2,2) = list.value
  celle(x+2,3) = list.value
  ...
next x

Måske ikke så lige til som så, men kan da lige bikse et eksempel sammen
Avatar billede tubber Juniormester
11. februar 2010 - 07:49 #2
Noget i den her retning

Refference: System.Web

Imports System.Web.UI.WebControls

dim i as integer = 1
dim myOverskrift as string = "Overskrift " & i
dim myVar as string = "strText" & i

for x = 0 to end
ListBox1.Items.Add(New ListItem(myOverskrift,myVar)
i = i + 1
next x

Når du så skal hente det igen:
dim i as integer = 0
for z = 0 to ListBox1.Items.Count - 1
ListBox1.SetSelected(i, True)
  celle(z+2,i) = ListBox1.SelectedItem.Value
next z
Avatar billede jpi Mester
20. oktober 2011 - 08:25 #3
Det er ikke lige hvad jeg skule bruge, men fik det fikset på anden måde - husker dog ikke hvordan.
Avatar billede jpi Mester
20. oktober 2011 - 08:26 #4
.
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
Kurser inden for grundlæggende programmering

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