Avatar billede anders1000 Nybegynder
20. juni 2009 - 00:15 Der er 7 kommentarer og
1 løsning

Hjælp til rettelse i Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Nogen der kan hjælpe med rettelse til mine koder?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'når der laves ændringer i cell B14 (det er en dropdown menu)
kode?

Run (minmacro)

End Sub


og/eller


Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'når der laves ændringer i cell B14 (det er en dropdown menu)
kode?

' så skal følgende ske

    ActiveSheet.Unprotect
    Range("Q14:S14").Select
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlBottom
        .WrapText = True
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
    End With
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
20. juni 2009 - 09:01 #1
Skriv

If Not Intersect(Target, Range("B14")) Is Nothing Then


I starten af din kode (og naturligvis End If i bunden)

Så kører koden kun når der sker ændringer i B14.
Avatar billede anders1000 Nybegynder
20. juni 2009 - 18:56 #2
Det virker ikke helt, eller jo den kører min kode eller makro når jeg markerer cellen dvs. ikke når jeg foretager ændringer. Jeg kan faktisk ikke bruge min dropdown menu, da den kører koden/makroen hver gang...

Kan det gøres så det først sker når man har ændret noget i cellen?
20. juni 2009 - 19:15 #3
Åh - du skal bruge Private Sub Worksheet_Change(ByVal Target As Range) i stedet
29. juni 2009 - 09:35 #4
Er du kommet videre?
Avatar billede anders1000 Nybegynder
29. juni 2009 - 23:02 #5
Hej,

Har først lige fået set på det igen. Det virker, men desværre ikke så jeg kan bruge det.

Det aktiverer den makro den skal køre når jeg trykker på cellen, dvs. jeg når ikke at kunne vælge i min dropdown menu. Den bliver således bare ved med at køre i et loop.
30. juni 2009 - 07:26 #6
Prøv at sende mig din makro, som den ser ud nu
Avatar billede anders1000 Nybegynder
30. juni 2009 - 08:25 #7
Hej,

Problemet er at nogen celler er låst og andre er skjult. Ligeledes har jeg en anden makro som indsætter en ny rækker (på række 14), som bliver hentet fra et andet ark - den kommer med fejl med: Selection.Locked = False
Selection.FormulaHidden = False

min Worksheet_Change-kode ser sådan her ud:


Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = False

ActiveSheet.Unprotect

If Not Intersect(Target, Range("B14")) Is Nothing Then

   
    Range("Q14:S14").Select
    With Selection
        .HorizontalAlignment = xlGeneral
        .VerticalAlignment = xlBottom
        .WrapText = True
        .Orientation = 0
        .AddIndent = False
        .IndentLevel = 0
        .ShrinkToFit = False
        .ReadingOrder = xlContext
        .MergeCells = False
       
        Range("B14").Select
   
    End With
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True

End If

End Sub


Tror der er for meget der kommer ind over hinanden:-)

Du kan bare smide et svar, da dit virker:-)
30. juni 2009 - 08:44 #8
Ja, jeg kan ikke lige se at der skulle være noget galt i koden ovenfor.
Hvis du har en makro, der retter i B4 kan du undgå at ovenstående kode kører i den forbindelse.
Det gør man med denne kode

        Application.EnableEvents = False

' kode der ændrer B14

        Application.EnableEvents = True
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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