06. november 2008 - 17:02Der er
9 kommentarer og 1 løsning
makro udløses automastisk
Kan jeg få en makro til at køre automastisk? Eksempelvis ved at indtaste en værdi i en celle og når man så forlader cellen udløses makroen? lidt ala en datavalidering?
Det ser ud til at være lige det jeg skal bruge... :-) Men jeg er sku ikke skarp nok i VBA endnu, kan du forklare mig hvad det er koden gør hvad betyder Works...(ByVal target as range) og så target.text?
Der hvor jeg vil bruge det er i forbindelse med noget ala denne kode:
Sub indtast1() Dim indtast1 As String
indtast1 = InputBox("skriv en kommentar")
Range("O5:S7").Value = indtast1
End Sub
Sub givkarakter() If Range("M5") = "X" Then Call indtast1 End If
End Sub
Altså lige så snart der er valgt en værdi i "M5" skulle makroen gerne køre, hvordan skal jg bruge dit forslag?
Hvad er det lige der ikke virker? Og hvorfor linjen 'Target = Range("M5")'?
Rutinen Worksheet_Change skal være i koden for ark-objektet, fx 'Ark1(Ark1)' og kaldes automatisk, når der sker en ændring på arket. Target repræsenterer det område der er blevet ændret, og er sat ved kaldet.
Tjekket 'If "$M$5" = Target.Address Then...' sikre at det er cellen M5, der er blevet ændret. Man kan evt også tjekke at der kun er ændret én celle og at den har en værdi med linjen 'If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub'
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.