Uppdatera data i skyddade blad

Anonym
2022-11-07T08:45:40+00:00

I en beräkningsmall ska användare kunna uppdatera data i en tabell genom att högerklicka och välja "Uppdatera" (för att läsa in data från en textfil). Detta fungerar om fliken inte är skyddad. När fliken skyddas blir valet "Uppdatera" inaktivt. Samtliga celler i tabellen är olåsta och kan uppdateras manuellt.

Inte heller funktionen "Tillåt redigering av områden" aktiverar "Uppdatera" för valda användare när fliken skyddas. Tips?

//Per

Microsoft 365 och Office | Excel | Övrigt | Windows

Låst fråga. Den här frågan har migrerats från Microsoft Support Community. Du kan rösta på om det är till hjälp, men du kan inte lägga till kommentarer eller svar eller följa frågan.

0 kommentarer Inga kommentarer

9 svar

Sortera efter: Mest användbara
  1. Anonym
    2022-11-07T12:23:58+00:00

    Tyvärr, mitt misstag 123är lösenordet. om det inte fungerar kan du behöva prova en annan lösning som jag hittade i länken nedan

    https://stackoverflow.com/questions/20349607/protect-excel-worksheet-for-read-only-but-enable-external-data-refresh

    Det här är en webbplats som inte kommer från Microsoft. Sidan verkar ge korrekt och tillförlitlig information. Akta dig för annonser på webbplatsen som kan annonsera produkter som ofta klassificeras som valpar (potentiellt oönskade produkter). Gör grundlig forskning om alla produkter som annonseras på webbplatsen innan du laddar ner och installerar den.

    Det här svaret är maskinöversatt. Det kan därför innehålla grammatiska fel eller konstiga uttryck.

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  2. Anonym
    2022-11-07T10:43:56+00:00

    Ursäkta min okunskap, men är inte "123" lösenordet? (Jag har använt "123" som lösenord när jag testar). Koden låser upp bladet riktigt och tabellerna blir uppdaterade, men bladet blir inte återskyddat. Felmeddelandet blir enligt nedan. (Obs! Mallen är sparad som xlsm)

    //Per

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  3. Anonym
    2022-11-07T10:28:58+00:00

    Du har inte bytt namn på "123" till namnet på kalkylbladet

    Det här svaret är maskinöversatt. Det kan därför innehålla grammatiska fel eller konstiga uttryck.

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  4. Anonym
    2022-11-07T10:21:53+00:00

    Hej Anna,

    Stort tack för ditt svar. Har nästan fått det att fungera, men har fortfarande några problem.

    1. Mallen innehåller flera anslutningar. Koden vill uppdatera alla anslutningar och användarna ska endast uppdatera en eller två beroende på lastfall. Jag har provat att ta bort alla utom de två, men det är svårt för användarna att veta vilken ordning textfilerna ska anges.
    2. Av någon anledning hittar inte mallen "DataRefresh2". Jag fick uppdatera några saker i koden (hade troligtvis blivit automatöversatt) och den ser ut enligt nedan, Kan du eller någon annan klurig se felet?

    //Per

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer
  5. Anonym
    2022-11-07T09:27:39+00:00

    Hej Per

    Jag heter Anna och hjälper dig gärna med din fråga. I det här forumet är vi Microsoft-konsumenter precis som du själv.

    Ledsen för de problem detta kan ha orsakat. Om jag förstår dig vill du uppdatera data även när arken är skyddade, eller hur? Om detta är vad du vill kan du uppnå detta med en VBA-kod

    Nedanstående VBA-kod kan hjälpa dig att uppdatera importerade externa data efter att ha skyddat kalkylbladet i Excel. Gör så här.

    1. I det skyddade kalkylbladet trycker du på andra + F11 tangenter samtidigt för att öppna Microsoft Visual Basic för applikationer fönster.
    2. Klicka på i Microsoft Visual Basic för applikationer fönstret Infoga > Modulerna, kopiera och klistra in nedanstående VBA-skript i modulerna fönster.

    VBA-kod: Tillåt extern datauppdatering i ett skyddat kalkylblad

    Sub DataRefresh() 'Uppdatering av Extendoffice 5/28/2019 ActiveSheet.Avskydda "123" ActiveWorkbook.RefreshAll Application.OnTime Now + TimeValue("00:00:01"), "DataRefresh2" Avsluta sub Sub DataRefresh2 () Om Application.CommandBars.GetEnabledMso("RefreshStatus") då Application.OnTime Now + TimeValue("00:00:01"), "DataRefresh2" Annars ActiveSheet.Skydda "123" Avsluta om Avsluta sub

    Notera: I VBA-koden är "123" lösenordet vi angav för att skydda kalkylbladet. Ändra det baserat på dina behov.

    1. Se till att markören är i den första Sub DataRefresh-kod avsnittet och tryck sedan på F5 nyckeln för att köra koden. I popup-dialogrutan Importera fil väljer du den externa filen som du har importerat data från och klickar sedan på Importera knapp.

    När du har återvänt till kalkylbladet ser du att externa data uppdateras omedelbart.

    Den här koden kan uppdatera externa data i ett skyddat kalkylblad som importeras från Access-, text- och Excel-filer.

    Referens: https://www.extendoffice.com/documents/excel/4379-excel-protect-sheet-but-allow-data-refresh.html

    Det här är en webbplats som inte kommer från Microsoft. Sidan verkar ge korrekt och tillförlitlig information. Akta dig för annonser på webbplatsen som kan annonsera produkter som ofta klassificeras som valpar (potentiellt oönskade produkter). Gör grundlig forskning om alla produkter som annonseras på webbplatsen innan du laddar ner och installerar den.

    Jag hoppas att detta hjälper ;-), låt mig veta om detta strider mot vad du behöver, jag skulle fortfarande vara till hjälp för att svara på fler av dina frågor.

    Vänliga hälsningar

    Anna

    Ge tillbaka till samhället. Hjälp nästa person med detta problem genom att ange om detta svar löste ditt problem. Klicka på Ja eller Nej längst ned.

    Det här svaret är maskinöversatt. Det kan därför innehålla grammatiska fel eller konstiga uttryck.

    Var det här svaret till hjälp?

    0 kommentarer Inga kommentarer