Avatar billede qub- Novice
16. marts 2014 - 18:26 Der er 1 løsning

Excel VBA: Add checkbox, speedup process

Jeg har lavet en VBA kode i min excel dokument som indsætter forskellige checkboxes i specifikke celler i et andet worksheet.

Dette virker fint, men selve processen tager RIGTIG LANG tid. Det er bl.a. som om at den hopper frem og tilbage mellem de 2 worksheets.
Er der en måde jeg kan gøre processen hurtigere???

[code]
        ' Add checkboxes
              Set PasteLineCheckbox = PasteLineStart.Offset(12, 0)

                  ' Aftale Checkboxes
                  With .OLEObjects.Add(ClassType:="Forms.Checkbox.1", link:=False, DisplayAsIcon:=False, Left:=PasteLineCheckbox.Offset(0, 0).Left + 3, Top:=PasteLineCheckbox.Offset(0, 0).Top + 1, Width:=224.25, Height:=13.5)
                      .Object.Caption = "Timeaftale": .Placement = xlMoveAndSize: .LinkedCell = PasteLineCheckbox.Offset(0, 0).Address: .Object.Value = False: .Object.BackStyle = 0: .Object.SpecialEffect = 0: .Object.Font.Size = 10: .Object.Font.Bold = True
                  End With
                  With .OLEObjects.Add(ClassType:="Forms.Checkbox.1", link:=False, DisplayAsIcon:=False, Left:=PasteLineCheckbox.Offset(1, 0).Left + 3, Top:=PasteLineCheckbox.Offset(1, 0).Top + 1, Width:=224.25, Height:=13.5)
                      .Object.Caption = "Forretningsføreraftale": .Placement = xlMoveAndSize: .LinkedCell = PasteLineCheckbox.Offset(1, 0).Address: .Object.Value = False: .Object.BackStyle = 0: .Object.SpecialEffect = 0: .Object.Font.Size = 10: .Object.Font.Bold = True
                  End With
                  With .OLEObjects.Add(ClassType:="Forms.Checkbox.1", link:=False, DisplayAsIcon:=False, Left:=PasteLineCheckbox.Offset(2, 0).Left + 3, Top:=PasteLineCheckbox.Offset(2, 0).Top + 1, Width:=224.25, Height:=13.5)
                      .Object.Caption = "Anlægsbudget": .Placement = xlMoveAndSize: .LinkedCell = PasteLineCheckbox.Offset(2, 0).Address: .Object.Value = False: .Object.BackStyle = 0: .Object.SpecialEffect = 0: .Object.Font.Size = 10: .Object.Font.Bold = True
                  End With

                  ' Status Checkboxes
                  With .OLEObjects.Add(ClassType:="Forms.Checkbox.1", link:=False, DisplayAsIcon:=False, Left:=PasteLineCheckbox.Offset(0, 2).Left + 3, Top:=PasteLineCheckbox.Offset(0, 2).Top + 1, Width:=224.25, Height:=13.5)
                      .Object.Caption = "Ønske": .Placement = xlMoveAndSize: .LinkedCell = PasteLineCheckbox.Offset(0, 2).Address: .Object.Value = False: .Object.BackStyle = 0: .Object.SpecialEffect = 0: .Object.Font.Size = 10: .Object.Font.Bold = True
                  End With
                  With .OLEObjects.Add(ClassType:="Forms.Checkbox.1", link:=False, DisplayAsIcon:=False, Left:=PasteLineCheckbox.Offset(1, 2).Left + 3, Top:=PasteLineCheckbox.Offset(1, 2).Top + 1, Width:=224.25, Height:=13.5)
                      .Object.Caption = "Pågår, Internt (Igang)": .Placement = xlMoveAndSize: .LinkedCell = PasteLineCheckbox.Offset(1, 2).Address: .Object.Value = False: .Object.BackStyle = 0: .Object.SpecialEffect = 0: .Object.Font.Size = 10: .Object.Font.Bold = True
                  End With
[/code]

På forhånd mange tak for hjælpen :)
Avatar billede qub- Novice
17. marts 2014 - 08:50 #1
Application.screenUpdating = False
hjalp GEVALDIGT på problemet :)
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

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