Avatar billede pejsen Nybegynder
17. januar 2008 - 23:54 Der er 1 løsning

VBA - Multiplicere celler, hvis en Checkbox = True

Hej

Jeg har en dynamisk område startende fra række 12 og nedefter
Hver 3 række er blank

I kolonne D har jeg en værdi, ud for hver række, som ikke er blank.
I kolonne F ønsker jeg en checkbox, ud for hver række, som ikke er blank
I området G:P ønsker jeg at multplicere værdierne med faktoren 2, hvis Checkboxen=True, hvis False skal værdierne kun multipliceres med 1. Kun hvis rækken ikke er blank

Hvordan laver jeg det smartest, så jeg ikke skal tildele hver checkbox en makro?

Jeg havde tænkt på noget i den stil






Sub Retur()

Dim wb As Excel.Workbook
    Dim ws As Excel.Worksheet
    Dim rng As Range
    Dim rng2 As Range
    Dim c As Range
    Dim i As Range
   
   
    Set wb = ThisWorkbook
    Set ws = Active.Worksheets
    Set rng = ws.Range("D15:P15")
    Set rng2 = ws.Range("F15")
   
    For Each c In rng.Cells
        For Each i In rng2.Cells
            If i.Value = True Then
               
                c.Value = c.Value * 2
            Else
                c.Value = c.Value * 1
            End If
           
       
    Next
   
    Set rng = Nothing
    Set ws = Nothing
    Set wb = Nothing
    Set rng2 = Nothing

 
End Sub

Hilsen Pejsen
Avatar billede pejsen Nybegynder
20. januar 2008 - 19:49 #1
Hej

Har selv løst det

Her er koden

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)

    Dim LastRow As Range
    Set LastRow = Columns(1).Find("km i alt", LookIn:=xlValues, lookat:=xlWhole)
   
    'Check if target within allowed range
    If Not Intersect(Target, Range("H14:P" & LastRow.Row - 1)) Is Nothing Then
       
        'Ensure target is a number before multiplying by 2
        If IsNumeric(Target) Then
            'Turn  events off
            Application.EnableEvents = False
            Target = Target * IIf(Cells(Target.Row, 6).Value = True, 2, 1)
            'Turn  events back on
            Application.EnableEvents = True
        End If
    End If
End Sub

Pejsen
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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