Avatar billede perhol Seniormester
09. februar 2007 - 23:32 Der er 9 kommentarer og
1 løsning

Problem i makro

I en makro 'Sub OverførTilNæsteMåned()' i Module2 har jeg følgende linier:

    Range("A4").Select
    Application.CutCopyMode = False
    Selection.ClearContents

Problemet er at jeg i en anden makro, der ligger i arket, kalder en kalenderkontrol har en henvisning til denne celle.
Herunder er denne anden makro:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Select Case Target.Address
        Case "$A$4", "$A$5", "$A$6", "$A$7", "$A$8", "$A$9", "$A$10", _
        "$A$11", "$A$12", "$A$13", "$A$14", "$A$15", "$A$16", "$A$17", _
        "$A$18", "$A$19", "$A$20", "$A$21", "$A$22", "$A$23", "$A$24", _
        "$A$25", "$A$26", "$A$27", "$A$28", "$A$29", "$A$30", "$A$31", _
        "$A$32", "$A$33", "$A$34", "$A$35", "$A$36", "$A$37", "$A$38", _
        "$A$39", "$A$42", "$A$43", "$A$44", "$A$45", "$A$46", "$A$47", _
        "$A$48", "$A$49", "$A$50", "$A$51", "$A$52", "$A$53", "$A$54", _
        "$A$55", "$A$56", "$A$57", "$A$58", "$A$59", "$A$60", "$A$61", _
        "$A$62", "$A$63", "$A$64", "$A$65", "$A$66", "$A$67", "$A$68", _
        "$A$69", "$A$70", "$A$71", "$A$72", "$A$73", "$A$74", "$A$75", _
        "$A$76"
        Call OpenCalendar
    End Select
End Sub
   
Når makroen 'Sub OverførTilNæsteMåned()' når til linien 'Range("A4").Select' kaldes kalenderkontrollen i stedet for at fortsætte med 'Sub OverførTilNæsteMåned()'. Makroen kan så først fortsætte når jeg har lukket kalenderkontrollen.

Hvordan undgår jeg denne fejl?
Kan man vælge pågældende celle og udføre en 'ClearContents' uden at gøre cellen aktiv og dermed åbne kalenderkontrollen?
Avatar billede supertekst Ekspert
09. februar 2007 - 23:47 #1
Du er velkommen til at sende din fil til: pb@supertekst-it.dk
så er det måske lettere at se problemet.
Avatar billede perhol Seniormester
10. februar 2007 - 00:01 #2
Har sendt mail vedlagt en zippet mappe med filen.
Mappen indeholder en undermappe med en Excel tilføjelse, Calendar.xla. Desuden en tekstfil med et eksempel på placering af tilføjelsen.
Ved ikke om gmail umiddelbart vil sende vedlagte filer med makroer i, men nu prøver jeg.
Avatar billede kabbak Professor
10. februar 2007 - 00:41 #3
Application.EnableEvents = False

Range("A4").Select
    Application.CutCopyMode = False
    Selection.ClearContents
Application.EnableEvents = False
Avatar billede kabbak Professor
10. februar 2007 - 00:42 #4
sådan

Application.EnableEvents = False
Range("A4").ClearContents
Application.EnableEvents = true
Avatar billede perhol Seniormester
10. februar 2007 - 01:16 #5
Jamen hvor du dog kan kabbak.
Forslaget i din sidste kommentar virker.
Læg et svar og modtag dine velfortjente point (som sædvanlig)
Avatar billede perhol Seniormester
10. februar 2007 - 01:24 #6
Nå ja, klokken er jo mange.
Går i seng.
Vender tilbage i morgen med point til kabbak.
Godnat
Avatar billede kabbak Professor
10. februar 2007 - 18:25 #7
et svar ;-))
Avatar billede perhol Seniormester
10. februar 2007 - 19:52 #8
>kabbak
Efter lidt omtanke kom jeg frem til følgende løsning (med dit svar inkluderet).

  Application.EnableEvents = False
  Range("A4").Select
  Application.CutCopyMode = False
  Selection.ClearContents

Problemet løst.

Ekstra spørgsmål til dig og supertekst.

Jeg synes egentlig at denne excel-mappe er ret god for offentligt
ansatte der skal føre regnskab for 'indsatte' (det være sig beboere i
botilbud eller andre personer der kan sammenlignes.).
Måske skulle man finde en måde at offentliggøre resutatet. (og forlare
det i kommentarer så andre kunne bruge det.) Er det noget du kan
hjælpe med?
Har du gode ideer til at gøre det bedre er de velkomne!

Spørgsmålet stilles samtidig med at jeg giver point til dit svar, som løste mit problem.
Avatar billede kabbak Professor
10. februar 2007 - 21:06 #9
jeg håber at du satte
Application.EnableEvents = true
nederst i koden også, ellers virker dine automatiske makroer ikke mere .

f.eks. som denne
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Med hensyn til det sidste, ved jeg ikke hvordan, man "offentligør", sådan en mappe, men hvis du har lavet den, kan du jo se om du kan gøre nogen i det offentlige intresseret, og så måske sælge ideen og tjene lidt på det.
Avatar billede perhol Seniormester
11. februar 2007 - 22:57 #10
Ja, det er sat lige efter linien med Selection.ClearContents

Ja, det kunne selvfølgelig være rart at tjene lidt penge, men jeg har indset at jeg er temmelig dårlig til at tage mig betalt. Og så er det da også meget rart atb kunne hjælpe andre ;-)

Tak for hjælpen.
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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