Avatar billede darth-domino Nybegynder
08. september 2005 - 16:07 Der er 5 kommentarer og
1 løsning

Simplere Kodning?

Jeg har et ark der ser sådan her ud i Excel:

.CBO_NDT_01.Clear
            .CBO_NDT_01.AddItem "0%"
            .CBO_NDT_01.AddItem "5%"
            .CBO_NDT_01.AddItem "10%"
            .CBO_NDT_01.AddItem "100%"
       
            .CBO_NDT_02.Clear
            .CBO_NDT_02.AddItem "0%"
            .CBO_NDT_02.AddItem "5%"
            .CBO_NDT_02.AddItem "10%"
            .CBO_NDT_02.AddItem "100%"

Og dem er der ca. 20 af....

Så prøvede jeg at gøre det mere simpelt ala:

For ComboNumber = 1 To 20
Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).Clear
sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).AddItem "0%"
Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).AddItem "5%"
Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).AddItem "10%"
Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).AddItem "100%"
Next ComboNumber

Men det virker ikke rigtgt....
Avatar billede cpufan Juniormester
08. september 2005 - 16:24 #1
hvad med

For ComboNumber = 1 To 20
Sheets("Hovedark").Shapes("CBO_NDT_0" & ComboNumber).Clear
sheets("Hovedark").Shapes("CBO_NDT_0" & ComboNumber).AddItem "0%"
Sheets("Hovedark").Shapes("CBO_NDT_0" & ComboNumber).AddItem "5%"
Sheets("Hovedark").Shapes("CBO_NDT_0" & ComboNumber).AddItem "10%"
Sheets("Hovedark").Shapes("CBO_NDT_0" & ComboNumber).AddItem "100%"
Next
Avatar billede darth-domino Nybegynder
09. september 2005 - 08:27 #2
Dur ikke!
Avatar billede darth-domino Nybegynder
09. september 2005 - 10:27 #3
Bruger bare den gamle måde...
Avatar billede oyejo Nybegynder
09. september 2005 - 15:26 #4
Dette kan kansje gi deg en ide?
Opion Base 1 ' dette gjør at tabindex starter på 1 ( ikke 0 )

vItemArray =  Array( "0%" , "5%", "10%", "100%")

Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).Clear

For i = 1 to 4
Sheets("Hovedark").Shapes("CBO_NDT_0" + ComboNumber).AddItem vItemArray(i)
Next

Jeg har starte opp slik som du gjør nå selv.
men ved hjelp av tabeller ( arrays ) og for-løkker, kan du ordne nesten alt ;-)
Avatar billede oyejo Nybegynder
09. september 2005 - 16:02 #5
beklager, så ikke hva problemet var!
Det er selvfølgelig å generere X i uttrykket: .CBO_NDT_X

Det er helt sikkert en enkel metode for å ordne dette.
Kan du beskrive nærmere hva .CBO_NDT_02 er?
Avatar billede oyejo Nybegynder
12. september 2005 - 09:07 #6
Må innrømme at dette har jeg egentlig ikke greie på :-) men hva med noe slikt?

Dim vItemArray() As Variant
Dim sh As Shape

  vItemArray = Array("0%", "5%", "10%", "100%")
  For Each sh In Sheets("Hovedark")
    sh.Clear
    For i = 1 To 4
    sh.AddItem vItemArray(i)
    Next
  Next
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