Avatar billede lurup Ekspert
03. februar 2018 - 12:55 Der er 29 kommentarer og
1 løsning

Lave regneark med + og - knap for antal

Hej

Jeg skal lave et regne ark med et antal der der bruges i forskellige formler.

kan jeg lave en celle hvor der står antal ( fx celle c) i celle a slaæ der være - knap og i celle b + knap som der ændre antal ??

Fx hvis der står 543 og jeg klikker på - skal den ændre det til 542
Avatar billede store-morten Ekspert
03. februar 2018 - 14:16 #1
Prøv at kikke på:
Udvikler --> Indsæt --> Kontrolelementer for formular
Vælg: Skalafelt
Avatar billede falster Ekspert
03. februar 2018 - 14:33 #2
Kontrolelementer, som Morten er inde på ovenfor, er ikke i en bestemt celle, men hvor du synes de skal ligge i arket.

Hvis du ønsker knapper i stedet for Skalafelt, vælger du "Knap" som ovenfor bekrevet.

Tilknyttet makro for plus kan så være (værdi i celle C1 i Ark1):

Sub add1()
Ark1.[C1] = Ark1.[C1].Value + 1
End Sub
Avatar billede falster Ekspert
03. februar 2018 - 14:39 #3
Med skalafeltet kan du slippe for makro. Indstil det ønskede under Højreklik - Formater kontrolelement - Kontrolelement
Avatar billede store-morten Ekspert
03. februar 2018 - 14:41 #4
#1 laves uden vba.
Kan kædes til en celle.
Avatar billede store-morten Ekspert
03. februar 2018 - 14:51 #5
Tegn skalafeltet i nærheden af din celle.
Højre-klik på skalafeltet --> I "Feltet navn" (Hvor der normalt står: A1) står der: Skala 1
Klik på "Formellinje" og tast: =$C$4

Nu kan celle C4 køres op/ned med knapperne.
Standard
fra 0 til 30000
ændring i tilvækst 1
Avatar billede store-morten Ekspert
03. februar 2018 - 14:54 #6
Eller:
Højre-klik på skalafeltet --> Formater kontrolelement
Avatar billede store-morten Ekspert
03. februar 2018 - 14:56 #7
Okay, havde ikke læst det skulle bruges i formler og ikke i en celle værdi.
Avatar billede lurup Ekspert
03. februar 2018 - 16:06 #8
Falster..
Vil du lave en ark til mig med denne markro med + og - i hver sin knap ??

Er der en nem måde at lave det på hvis fx den skal ske i 200 rækker ??

sÅ DEN SÆSTE + OG - ER FOR  RÆKKE 2 OG DEN NÆSTE FOR RÆKKE 3

Sub add1()
Ark1.[C1] = Ark1.[C1].Value + 1
End Sub
allanurup@gmail.com
Avatar billede lurup Ekspert
03. februar 2018 - 16:07 #9
Sæster = næste
Avatar billede falster Ekspert
03. februar 2018 - 17:54 #10
Du mener vel ikke, at hvert klik skal lægge til i én celle og næste klik i næste celle osv.?

Denne lægger 1 til i felterne A1 til A200 med et klik:

Sub Knap1_Klik()
Dim r As Range, cell As Range

Set r = Range("A1:A200")

For Each cell In r
        cell.Value = cell.Value + 1
Next
End Sub

For minus i samme felter oprettes endnu en knap og tredjesidste linje ændres til:
cell.Value = cell.Value - 1
Avatar billede store-morten Ekspert
03. februar 2018 - 18:12 #11
Prøv denne i et tomt Ark.
For at se om det evt. kan bruges.:
Sub Opret_ScrollBars()
    Dim i As Integer
   
        c = 1
        p = 0
       
    For i = 1 To 20

    ActiveSheet.ScrollBars.Add(146, p, 30, 15).Select
        With Selection
        .Value = 0
        .Min = 0
        .Max = 10000
        .SmallChange = 1
        .LargeChange = 1
        .LinkedCell = "$C$" & c
        .Display3DShading = True
    End With
   
        c = c + 1
        p = p + 14.5
   
    Next
        Range("A1").Select
End Sub
Avatar billede H. C. Christiansen Praktikant
03. februar 2018 - 21:21 #12
Der er også løsninger på DRF-FORUM
Avatar billede lurup Ekspert
03. februar 2018 - 22:22 #13
Falster

knappe a1 og b1 skal vises i c1

knap a2 og b2 skal vises i c2
Avatar billede store-morten Ekspert
03. februar 2018 - 22:44 #14
Bliver jeg ignoreret?
Avatar billede lurup Ekspert
03. februar 2018 - 23:05 #15
Store morten

Nej nej.....skal jeg putte det ind i en tom macro  ?
Avatar billede store-morten Ekspert
03. februar 2018 - 23:21 #16
Prøv makroen i et nyt tomt ark.
Se om det er noget i den stil du skal bruge.
Oprette knapper i 20 rækker.
Avatar billede lurup Ekspert
04. februar 2018 - 19:50 #17
Store morten

Hold da op....det er lige sådan det skal være    TAK

Er det mulig at lave sp hele a kolonnen er -  og hele b kolonnen er +
Avatar billede store-morten Ekspert
04. februar 2018 - 21:00 #18
Ikke forstået!!
Knappen er som den er, fra excel.
Vi kan gøre den bredere, men så kommer der en "skyder" frem.
Avatar billede lurup Ekspert
04. februar 2018 - 21:53 #19
Jeg mener kan du lave så celle a1 er en  minus knap som laver værdien i c1 en mindre.

b1 er en plus knap som laver værdien i c1 en større
Avatar billede store-morten Ekspert
04. februar 2018 - 22:09 #20
Ja, men der kommer en skyder i midten.
Den kan man så hive frem og tilbage.
Det giver en ny mulighed, skyderen kan indstilles til f.eks. at springe +/- 10 ved klik ved skyder.

Er der Minimum/Maxsimum?
Avatar billede lurup Ekspert
04. februar 2018 - 23:29 #21
Det er næsten i hus nu.....
Vil gerne have så hele a cellen er minus og hele b cellen er plus.

Kan nem lave fejl ved den sidste ark
Avatar billede store-morten Ekspert
04. februar 2018 - 23:40 #22
Jeg kan desværre ikke lave om på designet af den type indbygget rullepanel.
Avatar billede lurup Ekspert
05. februar 2018 - 13:50 #23
Flaster

Det du har lavet virker rigtig godt
Jeg har lavet en knap i a1  ( plus knap)
Sub add1()
Ark1.[D1] = Ark1.[D1].Value + 1
End Sub

Samt en minus knap i c1
Sub add1()
Ark1.[D1] = Ark1.[D1].Value + 1
End Sub

Tallet står i d1 og det virker fint med plus og minus.
Hvordan kan jeg lave så den selv laver knapper og macroer i 100 rækker

Allan
Avatar billede falster Ekspert
05. februar 2018 - 15:14 #24
Mange vil synes, at 200 kontrolelementer i en Excel-projektmappe er (alt) for mange.

Denne makro opretter 100 knapper med teksten "Plus" i kolonne A i Ark1:

Sub CreateButtonsCodePlus()
ActiveSheet.Shapes(Application.Caller).TopLeftCell.EntireRow.Copy
End Sub
Sub CreateTheButtons()
Dim sShape As Shape
Dim lLoop As Long

    For lLoop = 1 To 100
      With Cells(lLoop, "A")
            Set sShape = Ark1.Shapes.AddFormControl _
                (xlButtonControl, .Left, .Top, .Width, .Height)
      End With
                With sShape
                    .OnAction = "CreateButtonsCodePlus"
                    .TextFrame.Characters.Caption = "Plus"
                End With
   
    Next lLoop
End Sub

Tilsvarende opretter denne 100 knapper med "Minus" i kolonne C:

Sub CreateButtonsCodeMinus()
ActiveSheet.Shapes(Application.Caller).TopLeftCell.EntireRow.Copy
End Sub
Sub CreateTheButtons()
Dim sShape As Shape
Dim lLoop As Long

    For lLoop = 1 To 100
      With Cells(lLoop, "C")
            Set sShape = Ark1.Shapes.AddFormControl _
                (xlButtonControl, .Left, .Top, .Width, .Height)
      End With
                With sShape
                    .OnAction = "CreateButtonsCodeMinus"
                    .TextFrame.Characters.Caption = "Minus"
                End With
   
    Next lLoop
End Sub

Knapperne passer til cellerne.

Mht. til beregningsmakroerne tror jeg at du må indsætte dem manuelt, knap for knap. Kopier og rediger dem, du har lavet for celle D1.
Avatar billede store-morten Ekspert
05. februar 2018 - 23:44 #25
Prøver igen
Sub Opret_Knapper()
    Dim i As Integer
        p = 0.3
    For i = 1 To 100
   
With ActiveSheet.Shapes
    With .AddFormControl(xlButtonControl, 2, p, 45, 12)
        .OnAction = "Plus_Minus"
        .TextFrame.Characters.Text = "Plus"
    End With
End With

With ActiveSheet.Shapes
    With .AddFormControl(xlButtonControl, 97, p, 45, 12)
        .OnAction = "Plus_Minus"
        .TextFrame.Characters.Text = "Minus"
    End With
End With
        p = p + 14.5
    Next
End Sub

Private Sub Plus_Minus()
r = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row

If ActiveSheet.Shapes(Application.Caller).TopLeftCell.Column = 1 Then
Range("B" & r) = Range("B" & r) + 1
End If
If ActiveSheet.Shapes(Application.Caller).TopLeftCell.Column = 3 Then
Range("B" & r) = Range("B" & r) - 1
End If
End Sub
Avatar billede store-morten Ekspert
06. februar 2018 - 05:44 #26
#24 falster
"Knapperne passer til cellerne."
Prøv denne kode i et Modul:

Private Sub CreateButtonsCodePlus()
MsgBox ActiveSheet.Shapes(Application.Caller).TopLeftCell.Address
End Sub

Jeg har kæmpet med at få knapperne til at ligge oven på rækkerne ;-)
Avatar billede falster Ekspert
06. februar 2018 - 12:23 #27
#26 giver hos mig et resultat, der ser ud som #24.

Med #25 giver Private Sub definitionsfejl om "r". Sub'en opretter knapper, der dog ikke passer helt til cellerne. Jeg tror, at det skyldes, at der angives en konkret størrelse. Det gør koden i #24 ikke. Den anvender celledimensioner (og -placering), så vidt jeg kan se.
Avatar billede store-morten Ekspert
06. februar 2018 - 13:01 #28
Hvis jeg oprette knapper med dine makroer
#24
Sub CreateButtonsCodePlus() og
Sub CreateButtonsCodeMinus()

Og tester med
#26
Private Sub CreateButtonsCodePlus() i et Modul.

Tryk på knappen i A1 Giver: $A$1
Tryk på knappen i A2 Giver: $A$1
Tryk på knappen i A3 Giver: $A$3
Avatar billede falster Ekspert
06. februar 2018 - 13:32 #29
Min ambition i #24 var kun at automatisere oprettelsen af kontrolelementerne (knapperne).

Om regnemakroerne forslog jeg (sidst i #24), at de oprettes manuelt. F.eks. ved at fremstille en "flad fil" med 100 x kode fra f.eks. #23 (ret den lille minusfejl) og så indsætte referencer til de 200 knapper og de 100 D-celler.

Den flade fil kan så pastes i et modul.

Jeg tør ikke givet mig i kast med at danne regnemakroerne automatisk :-)
Avatar billede lurup Ekspert
10. februar 2018 - 21:21 #30
Tak til alle......Mortenn fik point
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
Stort udvalg af Excel kurser til alle niveauer og jobfunktioner

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





White paper
Sådan: Opgradér din printerløsning uden store investeringer