Just nu i M3-nätverket
Gå till innehåll

Excelfrågor


speedy1

Rekommendera Poster

Hej!

 

Nu ska ni få en del att bita i...

 

Jag ska i Excel skapa en mall där jag behöver vissa formler, håll i er:

 

1. När jag markerar en viss cell, obs! jag vill göra det med ”Kryssruta”, ska en serie andra celler gråmarkeras (inte gå att använda/skriva i. Avmarkerar jag kryssrutan ska de bli aktiva igen).

 

2. Om jag, i samma fil, markerar t.ex. cell G10, G11, G12 eller G13 (jag vill göra det med Alternativknapp*) ska siffran som står i cellen bredvid motsvarande markering (F10, F11, F12 eller F13) komma med i en formel, som i slutändan ger resultat i ytterligare en cell.

 

3. Jag vill också länka från ett helt annat program, som finns i ett nätverk, till dessa celler, så att när siffror uppdateras i det andra programmet ska det automatiskt justeras i denna Excel-filen. Går det att göra? Hur? (Kan ett annat program länka till/uppdatera låsta celler?)

 

4. Jag vill därefter låsa cellerna med undantag för de som man ska kunna ändra i, exempelvis i F10, F11, F12 eller F13, se ovan, dessa ska jag kunna ”tabba” emellan…

 

5. Slutligen (än så länge); OM detta fungerar, och jag skickar ut denna filen till andra användare som också är på nätverket, kommer deras filer också att automatiskt uppdateras när siffror kommer från ”det andra programmet”?

 

 

Det här var mycket, finns det nå´n som vill ta sig an det här?

 

 

* Bara ett alternativ av dessa 4 ska kunna markeras

 

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

  • Svars 100
  • Skapad
  • Senaste svar
1. När jag markerar en viss cell, obs! jag vill göra det med ”Kryssruta”, ska en serie andra celler gråmarkeras (inte gå att använda/skriva i. Avmarkerar jag kryssrutan ska de bli aktiva igen).

Går att lösa mha av skydd av arket och sätta/ändra skydd och färg på cellen:

[log]

[color="#0000ff"]Private[/color] [color="#0000ff"]Sub[/color] CheckBox1_Click()
   [color="#0000ff"]Call[/color] ProtectMe([color="#0000ff"]False[/color])
    [color="#0000ff"]With[/color] Range([GRÅ]"A5"[/GRÅ])
        [color="#0000ff"]If[/color] CheckBox1.Value [color="#0000ff"]Then[/color]
            .Interior.ColorIndex = 15
            .Interior.Pattern = xlSolid
            .Locked = [color="#0000ff"]True[/color]
        [color="#0000ff"]Else[/color]
            .Locked = [color="#0000ff"]False[/color]
            .Interior.ColorIndex = xlNone
        [color="#0000ff"]End[/color] [color="#0000ff"]If[/color]

    [color="#0000ff"]End[/color] [color="#0000ff"]With[/color]
     [color="#0000ff"]Call[/color] ProtectMe([color="#0000ff"]True[/color])
[color="#0000ff"]End[/color] [color="#0000ff"]Sub[/color]
[color="#0000ff"]Sub[/color] ProtectMe(bl As Boolean)

    [color="#0000ff"]If[/color] [color="#0000ff"]Not[/color] bl [color="#0000ff"]Then[/color]
        Unprotect
    [color="#0000ff"]Else[/color]
       Protect DrawingObjects:=[color="#0000ff"]True[/color], Contents:=[color="#0000ff"]True[/color], Scenarios:=[color="#0000ff"]True[/color] _
            , AllowFormattingCells:=[color="#0000ff"]True[/color], AllowFormattingColumns:=[color="#0000ff"]True[/color], _
            AllowFormattingRows:=[color="#0000ff"]True[/color], AllowInsertingColumns:=[color="#0000ff"]True[/color], AllowInsertingRows _
            :=[color="#0000ff"]True[/color]
    [color="#0000ff"]End[/color] [color="#0000ff"]If[/color]
[color="#0000ff"]End[/color] [color="#0000ff"]Sub[/color]

[/log]

 

2:

Mmh, du menar? Formeln skriver du dit med VBA eller vad? Då är det bara att plocka värdet i cellen...

 

3: Annat program? Nja, Excel kan länka till andra Exceldokument. Men med VBA kan du kanske bevaka det andra programmet/de filer programmet skapar och hämta värdet i fråga.

 

4: Ja, detta beteende får du om enbart ett antal celler är olåsta och du ej tillåter användaren att markera olåsta celler. Testa lite. Kod har du delvis i exempel 1.

 

5: Om VBA koden är rätt skriven - ja. Dvs om filen som uppdatering ska hämtas från kan nås ska det möjligen fungera.

 

 

Nöjd så?

 

Edit:

ja koden ska in på det ark där din Checkbox ligger. Se till att namnet på Checkbox-rutinen stämmer med namnet på checkboxen ifråga.

Edit2:

Se upp med de extra radbryt som Eforum (eventuellt) lagt in. Ta bort dessa. Om en rad på inklistrad kod blir röd/felmarkerad beror detta troligen på extra rad.

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

 

[inlägget ändrat 2006-01-03 20:53:04 av Monshi]

 

[inlägget ändrat 2006-01-03 20:55:10 av Monshi]

Länk till kommentar
Dela på andra webbplatser

1. Ja, det kan säkert fungera, men jag fattar inte hur jag ska göra för att använda den kod du skriver. Skulle du vilja förklara "så att en 5-åring fattar"? :)

 

2. VBA? Plocka värden i cellen?

 

3. Igen; VBA?

 

4. Jag får tyvärr inte ihop det här med att Låsa och Skydda Blad/Arbetsbok etc, hmm... Kan jag använda kod för det här också? VBA?

 

5.

ja koden ska in på det ark där din Checkbox ligger. Se till att namnet på Checkbox-rutinen stämmer med namnet på checkboxen ifråga.

Tyvärr igen, jag fattar inte!

 

 

Vore bra om du/någon vill (kan?!) förklara hur detta fungerar, annars får jag givetvis söka hjälp på annat håll... Jag vill fatta VBA etc...

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Okej, är du helt ovan vid programmering eller är du bara obekant med Visual Basic for Applications, dvs det script-språk som finns i Excel, Word, Access mfl?

 

Nåja, nu ska vi inte hänga upp oss på det.

 

När du infogat din Checkbox kan du dubbelklicka på den (om det är en VBA-checkbox du infogat vilket jag rekommenderar) så hamnar du i VBA editorn. Du kan även få VBA editorn via ex.v. CTRL+F11.

 

Enklast är om du dubbelklickar på Checkboxen då hamnar du rätt...

 

 

2: Nej, jag fattar inte heller vad du vill :)

 

3: Mmh

 

4: Mera mmhh... Om alla celler utom, låt oss säga, tre är låsta och arket är låst och användaren enbart tillåts markera olåsta celler hoppar markeringen mellan cellerna vid tabb eller enter.

 

5...

 

Nä du. Vad är det du försöker skapa? Vadan dessa frågor?

 

Och - ta och besök XLDennis för att få en insikt i världen med VBA och Excels formler:

http://www.xldennis.com

 

Jag hjälper gärna vidare, men vis måste nog klargöra vilka kunskaper du har och vad det är du egentligen önskar göra.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Ja, jag är helt ovan vid både programmering och VBA! Det märks väl?

 

Infoga Checkbox - så långt är jag med. Sedan får jag fram editorn, men där är flera olika fönster, vilket jag tycker är rörigt.

 

 

2. Om jag markerar t.ex. cell G10 ska siffran i cellen bredvid infogas i en formel som sedan ger ett resultat i en annan cell (alltså olika summor som ska adderas till en slutsumma som blir olika stor beroende på vilka celler som markeras. Markerar jag istället cell G11 ska siffran i cell F11 infogas i formeln som ger resultatet.

 

3. Ok, det kanske går att länka, men jag är tveksam. Det programmet som skulle uppdatera cellerna i Excel är nämligen ett helt annat program (inte i Office). Hmm...

 

4. Låsa celler: Jag vill alltså låsa cellerna, utom de som man ska kunna ändra siffror i. De ska man kunna kunna tabba emellan.

 

5. Att andra användare också får filen uppdaterad kan nog fungera, OM det över huvudtaget fungerar med "det andra programmet"...

 

 

Jag försöker skapa en mall för att räkna ut en kostnad beroende på hur man väljer in olika alternativ (olika priser) i formeln, därav vill jag ha funktionen enligt ovan; G11 ska infoga siffran i F11 osv.).

 

Jag ska titta på den sidan; XLDennis för att försöka lära mig lite. Är dock tacksam för all hjälp! :o)

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

nfoga Checkbox - så långt är jag med. Sedan får jag fram editorn, men där är flera olika fönster, vilket jag tycker är rörigt.

Svårt att beskriva med ord....

Du får nog upptäcka mest själv.

Men till vänster finns projektutforskaren med de olika delar som finns i ditt ark. Varje blad är representerat exempelvis och kod rörande detta blad kan placeras inom respektive blad. Ta som exempel din checkbox.

Till höger har du kod-fönstret osv.

 

Men du - enklaste sättet att få en känsla över VBA är att dels läsa i Excels VBA hjälp, läsa vad XLDennis skriver samt att testa att spela in makron och editera dessa till mer allmän funktion.

 

Ja - makron är VBA kod. Dessa inkluderas i en modul. I modulerna bör kod som är mer allmän, inte är knuten till ett specifikt blad i arbetsboken, sparas.

 

Spela in makron, editera och kör dem igen för att få en känsla för koden. För tyvärr, för att uppfylla dina önskninga krävs det VBA-kod. (om man kan lösa ett problem med formler på bladet bör man göra det).

 

2: Kanske "Scenarior" kan vara något att titta på. Jag kan ej mer om dessa än vad som står i hjälpen. Men det går även att lösa enkelt med alternativknappar. Målar upp en gång:

Skapa dina knappar. Koppla dessa till en cell. Värdet i cellen återspeglar då vilken knapp som är vald. Med en OM-sats eller dylikt (dvs formel på bladet) kan du utifrån värdet i cellen presentera lika resultat.

(du förstår?)

 

3 & 5 tar vi senare

 

4: Som jag målat upp det dvs. lås/skydda de celler du vill skydda och aktivera skyddet för bladet. Skyddar celler gör du via att markera cell(er) och öppna egenskaper och fliken Skydd. Aktiverar skydd för bladet gör du i menyn Verktyg -> Skydd.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Oj, snabba svar! :)

 

Ok, nu fick jag en lite klarare bild av det! Jag ska kolla vidare om jag kan lära mig lite mer, bl. a. i Excel VBA-hjälp och på XLDennis.

 

 

Ska koder läggas i moduler om de ska användas i hela filer (alla blad/flikar)?

 

 

Jaha, jag måste ha VBA för att uppfylla mina önskningar... attans!

;) Samtidigt är det roligt om jag kan lära mig något.

 

(Finns det "standardkoder" för olika ändamål, eller konstruerar du en kod för varje specifikt fall?)

 

 

Bra, scenarior ska jag titta närmare på.

Skapa dina knappar. Koppla dessa till en cell. Värdet i cellen återspeglar
. Koppla dessa till en cell? Koppla???

 

Har aldrig använt OM-sats, än...

 

 

4. När jag tänker "Skydda celler", tänker jag att det är de celler jag inte vill ändra i som jag ska skydda...

Kom nu att tänka på att det kanske är de celler som jag vill kunna ändra i som ska skyddas ("skyddas från att låsas").

Har jag rätt?

 

 

Jag ska kolla på allt det här. Återkommer så fort jag kan, när/om jag har fler frågor.

 

 

Ja, 3:an & 5:an ska vi nog ta senare, när vi löst det här.

:)

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Ska koder läggas i moduler om de ska användas i hela filer (alla blad/flikar)?

 

ja, där har jag inget klart regelverk annat än:

 

Kod som är verkligen specifik för ett blad, typ Checkboxens kod, måste ligga på arkets kodblad. I övrigt är det oftast bättre att lägga den i moduler då annars risken finns att man raderar kod om man tar bort ett blad. (Modulerna går att namnge så att man enkelt kan sortera sin kod i projektet. Om du är bekant med objektorienterad programmering kan man i princip se varje modul som ett objekt även om det inte är riktigt sant)

 

Så - lägg din kod i moduler om den inte måste vara på bladet.

Jaha, jag måste ha VBA för att uppfylla mina önskningar... attans!

ja, men inte så värst mycket och inte så avancerad kod (borstett ev. från punkt 3&5)

Koppla dessa till en cell? Koppla???

Om det är en VBA-kontroll ta upp egenskaper för denna och sätt "Linked Cell" till önskad adress (typ A1, A2 osv)

Om det är en formulär-kontroll högerklicka på den och välj Formatera kontroll och leta reda på och sätt Celllänken till önskad cell.

 

När jag tänker "Skydda celler", tänker jag att det är de celler jag inte vill ändra i som jag ska skydda...

Kom nu att tänka på att det kanske är de celler som jag vill kunna ändra i som ska skyddas ("skyddas från att låsas").

Har jag rätt?

Celler är som standard skyddade. Lås upp de du vill att användaren ska kunna ändra. Ja, testa och se hur det fungerar.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Hej igen!

 

Jag klurar på det här, och jag har börjat med "Formulär", eller i första hand "Kontroller", för att kunna välja in det rätta värdet i de celler som ska ingå i slutsumman. Rotationsknapp verkar bäst...

 

Enligt vad jag får fram kan dessa funktioner bara räkna med intervallen "1". Jag skulle vilja ha intervallen 0,1 och ev. 0,05 (det gäller kronor/ören).

 

Jag behöver tydligen en formel för att klara detta, men;

 

1. Vilken formel? Hur skrivs den?

2. Var skriver jag in den?

 

 

Tror att denna funktion kan lösa en del av det jag vill göra...

(När jag använder "Kontroller" finns det, i Egenskaper, en väldig massa konstiga funktioner man kan fylla i/ändra. Vilka är de viktigaste?)

 

 

 

mvh/

speedy1

 

 

PS. Det där att låsa upp cellerna verkar kunna fungera, det är bara ett problem; jag vill tabba emellan dem i en viss ordning... DS.

 

 

 

[inlägget ändrat 2006-01-04 20:23:49 av speedy1]

[inlägget ändrat 2006-01-04 20:27:22 av speedy1]

Länk till kommentar
Dela på andra webbplatser

1. Vilken formel? Hur skrivs den?

2. Var skriver jag in den?

OM() kan vara ett alternativ. Eller kanske snarare VÄLJ. Utifrån värdet i den kopplade cellen genrerar dessa ett värde...

Var? I en cell...

 

(När jag använder "Kontroller" finns det, i Egenskaper, en väldig massa konstiga funktioner man kan fylla i/ändra. Vilka är de viktigaste?)

Ja, VBA kontrollerna har en del men det mesta behöver du ej bry dig om. Knappen F1 tar upp hjälp om den egenskap du för tillfället markerar. Låt den hjälpa dig.

 

PS. Det där att låsa upp cellerna verkar kunna fungera, det är bara ett problem; jag vill tabba emellan dem i en viss ordning... DS.

Rekommenderas inte. Att styra tabbordningen mellan celler kräver implementation av Excels händelsefunktioner vilket bör undvikas om inte de måste. Betydligt enklare och säkrare att kontrollera ex.v tabbordningen mellan infogade textfät.

BÄST - om du kan ordna dina celler i den ordning du vill hoppa mellan dem. Betänk att TABB och Enter är likvärt och du hoppar genom cellerna i olika ordning bara.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

OM() kan vara ett alternativ. Eller kanske snarare VÄLJ. Utifrån värdet i den kopplade cellen genrerar dessa ett värde...

Var? I en cell...

 

 

Som det är nu är intervallen "1", som blir 1, 2, 3 etc i den kopplade cellen. Jag vill, i den kopplade cellen kunna se 2,5, 2,6, 3,0 resp. 2 100, 2 200, 2 500 3 000 o.s.v., ett värde som sedan räknas ner i cellen för slutsumman).

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Det kommer du ej se i den kopplader cellen. Men låt oss säga att du kopplat dina knappar till cell A1. Då kan du i ex.v. cell A2 skriva:

=VÄLJ(A1;2000;3000;4000)

 

Det är så Excel fungerar...

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Ok, det verkar fungera nu. Har länkat till andra celler (som jag sedan får dölja/välja textfärg vit, för att de inte ska synas. Min cell är numera länkad till dessa nya celler, därmed får jag tiondelar som jag vill.

:)

 

Men...

 

Nu vill jag att: (t.ex) cell (A1 + B4)+ D8 ELLER D9 ELLER D10 ELLER D11+E12 ska ge resultat i en sista cell.

 

Kruxet är ELLER-funktionerna, där det ska vara 4 olika alternativ; en av cellerna D8, D9, D10, D11 ska kunna väljas in i slutresultatet.

Jag vill välja (aktivera) cell genom att använda "Alternativknapp".

 

 

mvh/

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Nu vill jag att: (t.ex) cell (A1 + B4)+ D8 ELLER D9 ELLER D10 ELLER D11+E12 ska ge resultat i en sista cell.

= A1 + B4 + Välj (cell med valvärde;D8:D9;D10;D11)

 

eller hur du nu vill ha det.

 

Det ser väl genomförbart ut?

 

F'låt min kommentar som följer:

men snälla - försök och tänk ut hur en formel skulle kunna lösa dina problem. Det är väldigt enkelt problem detta sista. Excel hantering av funktioner, gruppering av likvärde, ger god guide i vad du kan göra med de olka funktionerna.

 

Jag hjälper vidare i mån av tid och lust, men ge mig gärna lite svårare nötter att knäcka :)

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Det var mest ett konstaterande, att jag skulle göra så. Å andra sidan är det nog inte så enkelt som det verkar;

I alla de fyra valbara cellerna ska det nämligen från början (alltid) stå siffror (som visserligen är ganska lika, men inte samma).

 

Därför vill jag "aktivera" den cell som vid varje tillfälle ska läggas till i slutresultatet, med hjälp av Alternativknapp/ar.

 

speedy1

 

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Varför göra det så krångligt? Varför inte ha alternativen i låsta celler som markeras olika beronde på valet bland alternativknapparna (se Villkorlig formatering ex.v.) och sedan låta en formel ta fram det värdet som ska användas?

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

... för att jag också måste kunna justera värdet/siffran i var och en av de fyra cellerna, med t. ex. Rotationsknapp.

 

Alltså;

1. Välja/aktivera en viss cell med Alternativknapp.

 

2. Ändra siffran i den valda cellen, med Rotationsknapp.

 

speedy1

 

 

 

 

[inlägget ändrat 2006-01-06 21:34:03 av speedy1]

Länk till kommentar
Dela på andra webbplatser

Okej, jag börjar med en ny "gren" för att snygga upp (och sammanfatta) det hela.

 

Enkelt: Hur går det? Vilka punkter har du klarat av nu? Behöver du någon mer (akut) hjälp?

 

Om vi tar ditt senaste inlägg i tråde:

.. för att jag också måste kunna justera värdet/siffran i var och en av de fyra cellerna, med t. ex. Rotationsknapp.

 

Alltså;

1. Välja/aktivera en viss cell med Alternativknapp.

 

2. Ändra siffran i den valda cellen, med Rotationsknapp.

Så ser jag flera sätt att lösa detta på. Enklaste (och bästa) tankesättet beskriver jag nedan:

 

Definiera ett område, ett antal rader, på bladet som DINA datafält. Dvs fält/celler som användare inte ska bry sig om, inte behöver se, och inte kan se eller ändra.

 

Låt oss säga att det är första 3 raderna i arket du låter vara detta. Börja med att markera dessa och låsa upp alla celler på dessa rader.

 

Vi kan vidare, för enkelhet i formler och tydligheten i din arbetsbok, börja namnge områden.

 

Definiera ett nytt namn (menyn Infoga - Definiera namn eller markera cell och skriv in önskat namn i Namn rutan längst till vänster i formellisten).

Sätt ex.v. A1 att heta RotData1.

Sedan skapar du din rotationsknapp och länkar ihop denna med RotData1 samt en länk i cellen där du vill visa valet till RotData.

 

Sedan markerar du åter dina första tre rader och väljer att dölja dessa. Lås sedan bladet och vips är din första rader helt oåtkomliga för användaren och rotationsknappen går att klicka på.

 

Iochmed att vi nu använder en namngiven referens (RotData1) kan vi egentligen flytta celllänken för rotationsknappen till ett annat blad men samtidigt är det enklare och intuitivare att ha kvar den på samma sida som knappen.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Hej!

 

Mmm, så långt är jag med. Det här har jag fått att fungera. Länka till celler, som i sin tur länkas till ytterligare en cell som visar resultatet=perfekt! :o) (Detta var jag tvungen att göra för att få med tiondelar av heltal).

 

Låsa celler som användare inte ska komma åt, ska nog bli bra det med (annars återkommer jag).

 

 

Men, enligt tidigare vill jag, ska försöka förklara tydligt (tror inte jag kan lösa detta med tidigare svar):

 

1. Välja/aktivera en viss cell med Alternativknapp.

 

2. Ändra siffran i den valda cellen, med Rotationsknapp.

 

Jag har fyra olika celler med siffror/värden i. Jag ska alltid ha dessa siffror i de här cellerna (jag ska inte behöva sätta de vid var tillfälle "oaktiva" cellerna, på 0 (noll)).

Därför vill jag, med Alternativknapp el. liknande, kunna välja vilken av dessa siffercellerna som vid just det tillfället ska läggas till i slutsumman (och ändå låta siffrorna stå kvar i de övriga cellerna...).

 

 

Ex:

 

A1 = 123

A2 = 134

A3 = 146

A4 = 157

 

1. Nu vill jag "aktivera" cell A2, och lägga till siffran i cell A 2... men samtidigt kunna justera den till 136 (cell A1, A3 och A4 ska inte tas med)!

 

2. Den här gången vill jag t. ex. "aktivera" cell A4, men också ändra värdet till 159 (cell A1, A2 och A3 ska inte tas med)...

 

 

Förstår du? Eller det kanske är jag som inte förstår? ;o)

 

 

speedy1

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

1:

Dubbelklicka på knappen så kommer du till koden för Click-händelsen på knappen. Välj istället Change-händelsen (via dropdown menyn)

Skriv in där

Call OBChange

Upprepa detta för alla knappar du vill ska vara med i denna valcirkus. :)

Skapa sedan proceduren:

Sub OBChange()

i vilken du kontrollerar vilken knapp som är vald och väljer cell därefter.

 

Typ:

If OptionButton1.Value Then
  Range("A1").Select
ElseIf OptionButton2.Value Then
  Range("A2").Select
End If

Ja, du ser mönstret?

 

Ja, kanske inte givet att Change-händelsen är den "bästa" för dig. Testa de olika och se vilken som passar. Kanske Click är den lämpligaste.

 

2:

Tja, alternativknapparna roterar alltid (tror jag) värdet enligt 0, 1, 2, 3... N.

Så basera värdet i cellen på en enkel formel.

Dvs rotationsknappen påverkar en cell, låt oss säga B1. Ursprungsvärdet kan vi låta vara 10.

Cell A1 blir då:

=B1+113

osv.

 

Det fungerar väl som du tänkt dig? Göm de celler som rotationsknappen skriver i och lås de med värden (göm formlerna kanske).

 

Börjar vi närma oss ett resultat nu?

 

Ja, hoppas du lär dig lite av detta.

Och MISSA INTE att besöka XLDennis och se vad man kan göra och hur. Det är ett bra ställe att få inspiration.

http://www.xldennis.se

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Skriv in där

 

Call OBChange

 

Upprepa detta för alla knappar du vill ska vara med i denna valcirkus. :)

 

Så långt ok!

 

Skapa sedan proceduren:

 

Sub OBChange()

 

=problem. Skapa procedur? Kollade på Infoga procedur, men fick inte välja namnet "Sub OBChange ()", om det var så du menade...

 

Ja, ja ser mönstret, men var skriver jag in det? Under varje Alternativknapp-procedur? Eller efter allihop i den nyskapade proceduren Sub OBChange ()?

 

 

Rotationsknapparna har jag klarat av (tro det eller ej!).

 

 

Om jag så skulle få till ovanstående "procedurer", hur får jag då slutresultatet i den cell jag vill ha det?

 

 

speedy1

 

 

 

PS. Jodå, jag lär mig och jag ska kolla på XLDennis också. Det är roligt, men krångligt. DS.

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

=problem. Skapa procedur? Kollade på Infoga procedur, men fick inte välja namnet "Sub OBChange ()", om det var så du menade...

Mhh, dina erfarenheter med VBA/programmering var inte så stora visst...

 

Ny procedur skapar du helt enkelt genom att skriva

Sub OBChange()

utanför de övriga procedurerna på bladet, dvs de som är kopplade till alternativknapparnas händelser. If-satserna skrivs sedan inom den nya proceruden.

 

Fast - kanske jag missat vad du egentligen vill göra. Ser nu att du egentligen inte vill aktivera cellen utan ta med cellens värde i en beräkning...

 

Ja, skippa då VBAn ovan och gör såhär istället:

* koppla alternativknapparna till en cell (B10)

* Du har dina värden i cellerna A1:A4

* Du kan då justera värden enligt vad jag skrivit tidigare. Om du enbart vill räkna upp valt värde enligt alternativknapparna kan du exempelvis skriva:

=OM(B10=1;113+B1;113)

Om B1 är cellen som rotationsknappen är kopplad till enligt tidigare.

(Eller låt alla celler räknas upp ned)

Sedan kan du "gömma" cellerna mha av villkorsstyrd formatering.

Markera cell(er) du vill formatera. Öppna Menyn Format - Villkorsstyrd formatering. Välj att formeln ska vara

=$B$10=1

där B10 är cellen alternativknappen är kopplad till.

 

I slutändan, i summeringen, får du välja inkluderat värde/cell med en OM- eller VÄLJ-sats.

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Nej, jag sa ju det! Jag har aldrig jobbat med detta förut. :)

 

Hmm, en del gick bra...

 

Jag får rätt cell att ändra sig (mha Rotationsknapparna), om jag markerar motsvarande Alternativknapp.

Men... jag vill att de andra Rotationsknapparna (2, 3 och 4) samtidigt ska låsas, om t. ex. Alternativknapp 1 är vald (markerad).

Givetvis ska de övriga knapparna (1, 3 och 4) också låsas om t. ex. Alternativknapp 2 är markerad o.s.v...

 

Som det är nu kan jag, trots att de andra Rotationsknapparnas Alternativknapp inte är markerad, ändra värdet med Rotationsknappen. Därmed tappar cellen också OM-formeln (!?) Det är inte bra! ;)

 

När detta ev. fungerar ska jag som sagt plocka det invalda värdet ner till slutsumman, som du säger; mha OM eller VÄLJ. Hmm...

Just pga att jag ska ta ner ett värde till summan, måste de övriga/oaktiva cellerna stå kvar på noll, ev. då mha nå´n typ av låsning, se ovan.

 

 

speedy1

 

 

 

 

[inlägget ändrat 2006-01-09 15:56:14 av speedy1]

Länk till kommentar
Dela på andra webbplatser

Du ha flera rotationsknappar?

 

Okej - jag löser de du önskar.

 

Nu krävs VBA

jag vill att de andra Rotationsknapparna (2, 3 och 4) samtidigt ska låsas, om t. ex. Alternativknapp 1 är vald (markerad).

Ta kodbasen från tidigare inlägg, dvs Call OBChange

 

OBChange kan då få ett utseende enligt följande (beroende då på vad dina knappar heter)

Sub OBChange()
   Me.SpinButton1.Enabled = False
   Me.SpinButton2.Enabled = False
   Me.SpinButton3.Enabled = False
   If Me.OptionButton1.Value Then
       Me.SpinButton1.Enabled = True
   ElseIf Me.OptionButton2.Value Then
       Me.SpinButton2.Enabled = True
   ElseIf Me.OptionButton3.Value Then
       Me.SpinButton3.Enabled = True
   End If


End Sub

 

Me. = arbetsbladet koden finns på. Dvs OBChange ska finnas på samma blad som kontrollerna.

Om du samtidigt vill nolla spinknapparna är det bara att sätta värden i de länkade cellerna till ursprungsvärdet, dvs

Me.Range("A1) = 10

 

eller vilken cell det nu gäller.

 

 

SDärmed tappar cellen också OM-formeln (!?)

??? Om formeln står väl inte i cell som rotationsknappen är kopplad till?

 

 

Just pga att jag ska ta ner ett värde till summan, måste de övriga/oaktiva cellerna stå kvar på noll, ev. då mha nå´n typ av låsning, se ovan.

 

Ehh - OM/VÄLJ-satsen ska väl välja ut de celler som ska vara med i beräkningarna? Övriga celler kan ha vilket värde som helst!

 

 

/T

 

Even when we know we´ll never find the answers, we have to keep on asking questions.

 

Länk till kommentar
Dela på andra webbplatser

Det där var mycket på en gång. Tror jag får avvakta med VBA, för det känns det som jag får läsa mer innan jag kan ge mig på det...

 

Jag tror faktiskt jag löst det på ett annat sätt. Ska prova en sak, men då behöver jag veta;

 

1.

Om jag har olika värden i B1, B2, B3 och B4 (t. ex. värdena 1548, 1684, 1894 och 1472), och funktionen OM eller VÄLJ ska användas för att ett av dessa värden ska flyttas ner i slutsumman (beroende på vilken som är markerad, med Alternativknapp).

 

Ex:

B1 1548 (markerad med Alternativknapp i cell A1)

B2 1684 (markerad med Alternativknapp i cell A2)

B3 1894 (markerad med Alternativknapp i cell A3)

B4 1472 (markerad med Alternativknapp i cell A4)

 

Jag vill t. ex.använda värdet i cell B2, genom att markera knappen i cell A2. Vilken formel ska jag ha i cellen för slutsumman, så att de "omarkerade" värdena inte kommer med? Vete f-n, men jag får inte till en formel som verkligen fungerar.

 

 

2.

Tro det eller ej; jag har en cell som, mha Rotationsknapp, har 3 alternativ att välja in. När jag väljer"0" ska slutsumman inte påverkas. När jag väljer "9" ska slutsumman delas med 3, och när jag väljer "18", ska slutsumman delas med 6. (Detta resultat ska stå i en helt separat cell).

 

Kan jag sätta 3 olika OM-alternativ på samma cell/Rotationsknapp?

 

 

speedy1

 

 

 

 

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...