Gå til innhold

[Løst] Hvordan programmere inn verdiene i en rullegardin og "ut" verdiene?


Anbefalte innlegg

Hei.

 

Jeg trenger en rullegardin som viser sykemeldings grad. F.Eks 25%, 50% og 75%.

 

etter jeg har programmert inn verdiene vil jeg at 25 tilsier 1.333

 

det vil si at timene som er jobbet blir delt på 1.333 som tilsvarer 25%

 

 

 

Jeg har prøvd litt forskjellig men får det ikke til og fungere

 

cells(1 ,2) = timer. cells(2, 2) = kg. cells(2, 3) = kg per time

 

With rullegardin1
   .AddItem 0
   .AddItem 25
   .AddItem 50
   .AddItem 75
End With

If rullegardin1 = 0 Then
   Cells(2, 3) = Cells(2, 2) / Cells(2, 1)
ElseIf rullegardin1 = 25 Then
       Cells(2, 3) = Cells(2, 1) / 1.333 / cells(2, 2)
ElseIf rullegardin1 = 50 Then
       Cells(c2) = Cells(2, 1) / 2 / cells(2, 2)
ElseIf rullegardin1 = 75 Then
       Cells(c2) = Cells(2, 1) / 4 /cells(2, 2)
End If

 

Noen som har noen forslag?

Endret av Bigelk
Lenke til kommentar
Videoannonse
Annonse

Hei.

 

Jeg mente selfølgelig ikke at du ikke kunne svare hva du ville.

 

Men du har ikke innsikt i hvordan Regne arket mitt ser ut eller hvordan det skal brukes.

I forhold til hvordan det skal brukes er det bedre at det er harkodet enn at det bare ligger som en formel på selve regnearket

 

Så igjen,Takk for svar.Men jeg lurer fortsatt på hvordan jeg skal hardkode en rullegardin.

 

Mvh

 

Torbjørn

Lenke til kommentar
  • 2 uker senere...

Hei.

 

etter diverse prøvelser må jeg si meg helt enig med MrGrusom at dette er bedre og løse med formel. Men jeg veit ikke helt hvordan enda.

 

Har programert en rullegardin nå, men lurer på hvordan jeg skal sette Range som variabel, jeg har 40 rullegardiner, og det blir en hel.... jobb og gjøre om range for hver linje med kode. Jeg kan ikke så mye om programmering men skjønner at dette er en veldig tungvindt måte og løse det på, men det fungerer :)

Koden ser sånn her ut

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("f6") = Range("e6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("f6") = Range("e6") / Range("d6")
           ElseIf Range("n6") = 0 And Range("w6") = 2 Then
                   Range("f6") = Range("e6") / Range("d6")
                   ElseIf Range("n6") = 0 And Range("w6") = 3 Then
                           Range("f6") = Range("e6") / Range("d6")
                           ElseIf Range("n6") = 0 And Range("w6") = 4 Then
                                   Range("f6") = Range("e6") / Range("d6")
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("x6") = 0
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("x6") = 0
           ElseIf Range("n6") = 1 And Range("w6") = 2 Then
                   Range("x6") = Range("d6") / 1.333
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("x6") = Range("d6") / 2
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("x6") = Range("d4") / 4
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("f6") = Range("e6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 2 Then
           Range("f6") = Range("e6") / Range("x6")
           ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                   Range("f6") = Range("e6") / Range("x6")
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("f6") = Range("e6") / Range("x6")
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("f6") = Range("e6") / Range("x6")
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("h6") = Range("g6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("h6") = Range("g6") / Range("d6")
           ElseIf Range("n6") = 0 And Range("w6") = 2 Then
                   Range("h6") = Range("g6") / Range("d6")
                   ElseIf Range("n6") = 0 And Range("w6") = 3 Then
                           Range("h6") = Range("g6") / Range("d6")
                           ElseIf Range("n6") = 0 And Range("w6") = 4 Then
                                   Range("h6") = Range("g6") / Range("d6")
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("x6") = 0
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("x6") = 0
           ElseIf Range("n6") = 1 And Range("w6") = 2 Then
                   Range("x6") = Range("d6") / 1.333
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("x6") = Range("d6") / 2
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("x6") = Range("d6") / 4
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("h6") = Range("g6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 2 Then
           Range("h6") = Range("g6") / Range("x6")
           ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                   Range("h6") = Range("g6") / Range("x6")
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("h6") = Range("g6") / Range("x6")
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("h6") = Range("g6") / Range("x6")
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("j6") = Range("i6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("j6") = Range("i6") / Range("d6")
           ElseIf Range("n6") = 0 And Range("w6") = 2 Then
                   Range("j6") = Range("i6") / Range("d6")
                   ElseIf Range("n6") = 0 And Range("w6") = 3 Then
                           Range("j6") = Range("i6") / Range("d6")
                           ElseIf Range("n6") = 0 And Range("w6") = 4 Then
                                   Range("j6") = Range("i6") / Range("d6")
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("x6") = 0
   ElseIf Range("n6") = 1 And Range("w6") = 1 Then
           Range("x6") = 0
           ElseIf Range("n6") = 1 And Range("w6") = 2 Then
                   Range("x6") = Range("d6") / 1.333
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("x6") = Range("d6") / 2
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("x6") = Range("d6") / 4
End If

If Range("n6") = 0 And Range("w6") = 1 Then
   Range("j6") = Range("i6") / Range("d6")
   ElseIf Range("n6") = 1 And Range("w6") = 2 Then
           Range("j6") = Range("i6") / Range("x6")
           ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                   Range("j6") = Range("i6") / Range("x6")
                   ElseIf Range("n6") = 1 And Range("w6") = 3 Then
                           Range("j6") = Range("i6") / Range("x6")
                           ElseIf Range("n6") = 1 And Range("w6") = 4 Then
                                   Range("j6") = Range("i6") / Range("x6")

 

 

har ikke prøvd denne koden enda, men er noe sånn jeg ser for meg.

Dim x As Integer
x = 6
Set Range = Areas
Areas = Cells(x, 14) And Cells(x, 23) And Cells(x, 6) And Cells(x, 5) And Cells(x, 4)


If Cells(x, 14) = 0 And Cells(x, 23) = 1 Then
   Cells(x, 6) = Cells(x, 5) / Cells(x, 4)
   ElseIf Cells(x, 14) = 1 And Cells(x, 23) = 1 Then
           Cells(x, 6) = Cells(x, 5) / Cells(x, 4)
           ElseIf Cells(x, 14) = 0 And Cells(x, 23) = 2 Then
                   Cells(x, 6) = Cells(x, 5) / Cells(x, 4)
                   ElseIf Cells(x, 14) = 0 And Cells(x, 23) = 3 Then
                           Cells(x, 6) = Cells(x, 5) / Cells(x, 4)
                           ElseIf Cells(x, 14) = 0 And Cells(x, 23) = 4 Then
                                   Cells(x, 6) = Cells(x, 5) / Cells(x, 4)
End If

Hilsen

 

Torbjørn

Endret av Bigelk
Lenke til kommentar

Hei.

Da er vel denne løst, men tror ikke dette er den optimale løsningen. Jeg har ikke programert "inn" eller "ut" verdiene, har heller brukt cellereferanser.

Men jeg har programert inn hvordan regnearket skal regne ut i fra "ut" veridene til Rullegardinene.

 

jeg har 40 rader, hvor hver rad skal gjøre visse utregninger ut i fra en rullegardin og en checkbox, har da en rullegardin og en checkbox per rad. Jeg har brukt x som rad nummer så jeg slipper og gjøre om rad nummeret for hver rullegardin.

 

Rullegardin4_endre()

Dim x As Integer
x = 4


If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 6) = cells(x, 5) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 6) = cells(x, 5) / cells(x, 4)
           ElseIf cells(x, 14) = 0 And cells(x, 23) = 2 Then
                   cells(x, 6) = cells(x, 5) / cells(x, 4)
                   ElseIf cells(x, 14) = 0 And cells(x, 23) = 3 Then
                           cells(x, 6) = cells(x, 5) / cells(x, 4)
                           ElseIf cells(x, 14) = 0 And cells(x, 23) = 4 Then
                                   cells(x, 6) = cells(x, 5) / cells(x, 4)
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 24) = 0
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 24) = 0
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
                   cells(x, 24) = cells(x, 4) / 1.333
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 24) = cells(x, 4) / 2
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 24) = cells(x, 4) / 4
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 6) = cells(x, 5) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
           cells(x, 6) = cells(x, 5) / cells(x, 24)
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                   cells(x, 6) = cells(x, 5) / cells(x, 24)
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 6) = cells(x, 5) / cells(x, 24)
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 6) = cells(x, 5) / cells(x, 24)
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 8) = cells(x, 7) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 8) = cells(x, 7) / cells(x, 4)
           ElseIf cells(x, 14) = 0 And cells(x, 23) = 2 Then
                   cells(x, 8) = cells(x, 7) / cells(x, 4)
                   ElseIf cells(x, 14) = 0 And cells(x, 23) = 3 Then
                           cells(x, 8) = cells(x, 7) / cells(x, 4)
                           ElseIf cells(x, 14) = 0 And cells(x, 23) = 4 Then
                                   cells(x, 8) = cells(x, 7) / cells(x, 4)
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 24) = 0
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 24) = 0
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
                   cells(x, 24) = cells(x, 4) / 1.333
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 24) = cells(x, 4) / 2
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 24) = cells(x, 4) / 4
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 8) = cells(x, 7) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
           cells(x, 8) = cells(x, 7) / cells(x, 24)
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                   cells(x, 8) = cells(x, 7) / cells(x, 24)
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 8) = cells(x, 7) / cells(x, 24)
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 8) = cells(x, 7) / cells(x, 24)
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 10) = cells(x, 9) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 10) = cells(x, 9) / cells(x, 4)
           ElseIf cells(x, 14) = 0 And cells(x, 23) = 2 Then
                   cells(x, 10) = cells(x, 9) / cells(x, 4)
                   ElseIf cells(x, 14) = 0 And cells(x, 23) = 3 Then
                           cells(x, 10) = cells(x, 9) / cells(x, 4)
                           ElseIf cells(x, 14) = 0 And cells(x, 23) = 4 Then
                                   cells(x, 10) = cells(x, 9) / cells(x, 4)
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 24) = 0
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 1 Then
           cells(x, 24) = 0
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
                   cells(x, 24) = cells(x, 4) / 1.333
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 24) = cells(x, 4) / 2
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 24) = cells(x, 4) / 4
End If

If cells(x, 14) = 0 And cells(x, 23) = 1 Then
   cells(x, 10) = cells(x, 9) / cells(x, 4)
   ElseIf cells(x, 14) = 1 And cells(x, 23) = 2 Then
           cells(x, 10) = cells(x, 9) / cells(x, 24)
           ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                   cells(x, 10) = cells(x, 9) / cells(x, 24)
                   ElseIf cells(x, 14) = 1 And cells(x, 23) = 3 Then
                           cells(x, 10) = cells(x, 9) / cells(x, 24)
                           ElseIf cells(x, 14) = 1 And cells(x, 23) = 4 Then
                                   cells(x, 10) = cells(x, 9) / cells(x, 24)
End If

Endret av Bigelk
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...