Avatar billede twinb Novice
09. april 2014 - 09:11 Der er 9 kommentarer

Linjer vises igen, når Excelfilen deles

Hejsa

Jeg har lavet en VBA kode der skjuler linjer, når en række betingelser er opfyldt.

Problemet er, at efter koden er kørt, og nogle af linjerne er blevet skjult, deler jeg arket og gemmer det, hvorefter en kollega åbner det og oplever, at linjerne ikke længere er skjult.

Når filen deles får jeg følgende meddelelse: "Dette regneark indeholder makroer, der er optaget eller skrevet i VisualBasic. Makroerne kan ikke vises eller redigeres i delte regneark".

Har det noget med min kollegas Excel indstiller at gøre, eller hvad er der galt? Håber I kan hjælpe.

Mvh. Brian
Avatar billede supertekst Ekspert
09. april 2014 - 13:35 #1
Hvilken version af Excel anvender du og din kollega?
Avatar billede twinb Novice
09. april 2014 - 14:05 #2
Det er 2010 begge to
Avatar billede supertekst Ekspert
09. april 2014 - 14:16 #3
Din kollegas sikkerhedscenter i Excel - har det samme indstilling som din?
Avatar billede twinb Novice
09. april 2014 - 14:28 #4
Pas. Er det alt inde i sikkerhedscenteret jeg skal tjekke igennem eller noget specifikt du tænker på?
Avatar billede supertekst Ekspert
09. april 2014 - 14:56 #5
Ok - indstillinger for anvendelse af makroer
Avatar billede twinb Novice
10. april 2014 - 10:12 #6
Vi har næsten helt samme indstillinger hele vejen ned i sikkerhedscenteret.

Forskellen er i arket "beskyttet visning", hvor jeg har krydset af i "Aktiver tilstanden Forhindring af datakørsel", hvilket min kollega ikke har krydset af og heller ikke har mulighed for.

Ingen af os har kryds i "Hav tillid til VBA-projektobjektmodellen" i "Indstillinger for makro". Har prøvet at krydse denne af, men det ændrer ikke ved noget.

Sidste forskel ligger under "Indstillinger for beskyttelse", hvor jeg har krydset af "Opret forbindelse til office.com...", hvilket min kollega ikke har.

Er der noget her som kan være årsag til det?
Avatar billede supertekst Ekspert
10. april 2014 - 10:44 #7
Nu anvender jeg 2007 - så noget af det har jeg ikke erfaring med.

Kan din kollega overhovedet kører med makroer i almindelighed?

Er det muligt at du kunne vise dine kode?
Avatar billede twinb Novice
10. april 2014 - 11:19 #8
Min kollega kan godt køre med makroer. Har lige testet det med en lille kode, og det virker fint.

Den del af koden, der danner outputtet og skjuler linjerne kommer her:

Sub CreateOutput()

'Først kopieres ark1 over i et nyt outputark
Ark1.UsedRange.Copy
Ark3.Select
Ark3.Range("A1").Select
Ark3.Paste

'Derefter fjernes de inaktive linjer
Dim x5 As Integer
Dim Count4 As Integer
Count4 = Ark3.Range("A1").CurrentRegion.Rows.count

For x5 = 2 To Count4 - 1
    If Ark3.Cells(x5, 16) = "0" Then
        Rows(x5).Select
        Selection.EntireRow.Hidden = True
    End If
Next


'Løkke til at tælle antallet af hvide linjer i outputtet og skrive det til arket
Dim Count5 As Integer 'Tællevariabel der holder antallet af hvide række i outputtet
Count5 = 0

Ark3.Select
    For x5 = 2 To Count4
        Rows(x5).Select
        If Selection.EntireRow.Hidden = False And IsEmpty(Ark3.Cells(x5, 3)) = False Then
            Count5 = Count5 + 1
        End If
    Next

Ark3.Cells(Count4 + 2, 3) = Count5

End Sub
Avatar billede supertekst Ekspert
16. april 2014 - 13:56 #9
Har ikke noget svar..
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

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