05. november 2008 - 11:28Der er
27 kommentarer og 1 løsning
VBA, Tjek om specifik celle er valgt
Hvordan tjekker jeg, med VBA, om en specifik celle er blevet valgt / aktiveret, der kører en Worksheet_SelectionChange handler, så .select skal helst undgås.
Det er nogle hierakiske dynamiske lister, og for at undgå fejltagelser skal tidligere valgte undeliggende listeværdier slettes når en ny listeværdi i en oveliggende liste vælges.
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Intersect(Target, Range("C6,C11,B15, A17")) Is Nothing Then Exit Sub If Target.Address = "$C$6" Then Range("C11:G12,B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$C$11" Then Range("B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$B$15" Then Range("A17:H18,C20:G22") = "" If Target.Address = "$A$17" Then Range("C20:G22") = "" End Sub
Jeg har ændret sub-navnet og kalder den fra "Forside", nu får jeg igen
runtime error 424 i første "IF"-sætning
Sub SletNyeIndtastninger()
If Intersect(Target, Range("C6,C11,B15, A17")) Is Nothing Then Exit Sub If Target.Address = "$C$6" Then Range("C11:G12,B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$C$11" Then Range("B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$B$15" Then Range("A17:H18,C20:G22") = "" If Target.Address = "$A$17" Then Range("C20:G22") = ""
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
FjernOverskrift
If Intersect(Target, Range("C6,C11,B15, A17")) Is Nothing Then Exit Sub If Target.Address = "$C$6" Then Range("C11:G12,B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$C$11" Then Range("B15:H15,A17:H18,C20:G22") = "" If Target.Address = "$B$15" Then Range("A17:H18,C20:G22") = "" If Target.Address = "$A$17" Then Range("C20:G22") = ""
DependentLists
LookupFunktioner
End Sub
Det kører uden bugs, men værdierne bliver ikke fjernet
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.