Avatar billede johnnybp Juniormester
16. november 2008 - 11:27 Der er 4 kommentarer og
1 løsning

Private Sub Worksheet_Change(ByVal Target As Range) copy and past

Private Sub Worksheet_Change(ByVal Target As Range)
virker ikke på celleændring med copy & paste, men hvis jeg manuelt indtaster en ny værdi + enter i celle B61 eller Q68, så virker det fint. Da  data kan være ret komplexe vil det absolut være en fordel med copy/paste.
Et andet men mindre problem er, at jeg ikke kan få det til at virke, hvis jeg benytter navnet på cellerne, men kun den absolutte adresse "$B$61" og "$Q$68" selv $-tegnene er nødvendige for korrekt virkemåde
Skal bruges til at starte rutinen lookup i module 1 ved indtastning af ny data.
Koden er:
Private Sub Worksheet_Change(ByVal Target As Range)
   
    If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
    If Target.Address = "$B$61" Then
      On Error Resume Next
            Application.EnableEvents = False
            Call Module1.lookup
            Application.EnableEvents = True
            On Error GoTo 0
            Else
            If Target.Address = "$Q$68" Then
                On Error Resume Next
                Application.EnableEvents = False
                Call Module1.lookup
                Application.EnableEvents = True
                On Error GoTo 0
          End If
    End If
End Sub
Avatar billede jkrons Professor
16. november 2008 - 11:52 #1
Hos mig virker det helt perfekt - også med copy/paste.

Brugen af navne kan løses med Range:

Private Sub Worksheet_Change(ByVal Target As Range)
   
    If Target.Cells.Count > 1 Or IsEmpty(Target) Then Exit Sub
    If Target = Range("navn1") Then
      On Error Resume Next
            Application.EnableEvents = False
            Call Module1.lookup
            Application.EnableEvents = True
            On Error GoTo 0
            Else
            If Target = Range("navn2") Then
                On Error Resume Next
                Application.EnableEvents = False
                Call Module1.lookup
                Application.EnableEvents = True
                On Error GoTo 0
          End If
    End If
End Sub
Avatar billede johnnybp Juniormester
20. november 2008 - 17:07 #2
Tak for det - selvfølgelig. Som jeg plejer at sige: Der er ikke noget der er svært, når bare man lige ved det.
Men jeg har stadig problemer med at få det til at virke med copy/paste. Og jeg ved ikke om det er en stabil løsning, for nogen gange virker den Worksheet_Change slet ikke selv om jeg ændrer en celle. Har du (eller andre) nogen erfaringer med om der skulle være kendte problemer med den funktion ?

Jeg fik det til at virke, selv om det ikke virker helt pålideligt. Jeg vil lige se, om der skulle komme flere kommentarer inden jeg deler point ud.
Avatar billede jkrons Professor
20. november 2008 - 18:05 #3
Jeg har aldrig hørt om, eller selv oplevet problemer med funktionen. Og den udløses høs mig, hver gang en celle (i et reelvant område) ændres, hvad enten det er på grund af indtastning eller cut/paste.

Har du evt. mulighed for at sende dit regneark?
Avatar billede johnnybp Juniormester
18. august 2010 - 16:41 #4
det var vist det.
Avatar billede johnnybp Juniormester
18. august 2010 - 16:46 #5
det varf vist det
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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