Välilehden suojaaminen?

hädässä

Tarkoitus olisi saada taulukossa oleva "Data" välilehti suojattua niin ettei sitä pääse katsomaan kuin salasanan avulla. Tarkoitus olisi kuitenkin niin että makrojen ja VB koodit pääsisivät tähän välilehteen käsiksi. Onko tämä mahdollista? Miten?

6

1316

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • suojaa VBA projekti salasanalla ja VBA puolelta pistä Data välilehden visible arvoksi=0 xlSheetHidden. Tällöin ei tartte koodia rukkailla, eli ei tartte Unprotect ja Protect juttujen kanssa painia
      @Kunde

      • hädässä

        Välilehden sai kyllä piiloon, mutta kun makro haluaa käsitellä tietoja Data välilehdestä, niin se kaatuu siihen kun se ei saa valittua Data välilehteä.

        Elikkä tähän:
        Sheets("Data").Select

        Eli Data lehdeltä lähinnä copy pastea tartteisi käyttää. Vai pitäisikö tämä tehdä niin että makron suorittamisen ajaksi laitettaisiin Data välilehti näkyviin ja lopuksi taas piilotettaisiin?


      • hädässä kirjoitti:

        Välilehden sai kyllä piiloon, mutta kun makro haluaa käsitellä tietoja Data välilehdestä, niin se kaatuu siihen kun se ei saa valittua Data välilehteä.

        Elikkä tähän:
        Sheets("Data").Select

        Eli Data lehdeltä lähinnä copy pastea tartteisi käyttää. Vai pitäisikö tämä tehdä niin että makron suorittamisen ajaksi laitettaisiin Data välilehti näkyviin ja lopuksi taas piilotettaisiin?

        ei toimi ei toimi kun taulukko on piilotettu. Tietenkin voit koodilla laittaa sen näkyville ennen kopiointia ja sitten piilottaa kun tarvittavat jutut tehty

        esim.

        Application.ScreenUpdating = False
        Sheets("Data").Visible = xlSheetVisible
        Sheets("Data").Select
        'koodia
        Sheets("Data").Visible = xlSheetVeryHidden
        Application.ScreenUpdating = True

        mutta...
        toimii se näinkin ilman kikkailuja ;-)

        Sheets("Data").Range("A1:A10").Copy Destination:=Sheet2.Range("A1")

        @Kunde


      • hädässä
        kunde kirjoitti:

        ei toimi ei toimi kun taulukko on piilotettu. Tietenkin voit koodilla laittaa sen näkyville ennen kopiointia ja sitten piilottaa kun tarvittavat jutut tehty

        esim.

        Application.ScreenUpdating = False
        Sheets("Data").Visible = xlSheetVisible
        Sheets("Data").Select
        'koodia
        Sheets("Data").Visible = xlSheetVeryHidden
        Application.ScreenUpdating = True

        mutta...
        toimii se näinkin ilman kikkailuja ;-)

        Sheets("Data").Range("A1:A10").Copy Destination:=Sheet2.Range("A1")

        @Kunde

        Entäs sitten, minulla on taulukossa nappi 'tallenna' ja jaa. Tämä nappi poistaa sitten Data taulukon viemästä turhee tilaa lopullisesta taulukosta kun sieltä on poimittu tarvittavat tidot

        Sheets("Data").Delete

        toimii oikein hyvin, mutta se häiritsee että Excel varmistaa kysymällä poiston. Saako tätä kysymystä ohjitettua jotenkin? Eli poistelisi sen välilehden ilman kyselyitä.


      • hädässä kirjoitti:

        Entäs sitten, minulla on taulukossa nappi 'tallenna' ja jaa. Tämä nappi poistaa sitten Data taulukon viemästä turhee tilaa lopullisesta taulukosta kun sieltä on poimittu tarvittavat tidot

        Sheets("Data").Delete

        toimii oikein hyvin, mutta se häiritsee että Excel varmistaa kysymällä poiston. Saako tätä kysymystä ohjitettua jotenkin? Eli poistelisi sen välilehden ilman kyselyitä.

        koodin alkuun Application.DisplayAlerts = False
        ja loppuun Application.DisplayAlerts = True

        muista sitten varmistaa, että jos virhe ilmenee niin virheenkorjauksessa asetat
        Application.DisplayAlerts = True tai jos ei ole mitään virheen tsekkausta, niin ainakin alkuun laitat sitten On Error Resume Next


    • Rndmz

      Vastaus ehkä "hieman" myöhässä, mutta asiasta tietoa etsiville:

      "Sheets("xxxxxxx").Select" tilalle
      "Sheets("xxxxxxx").Activate ja homma pelaa taas.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Riikka ei suostu laskemaan bensan hintaa

      Sanna laski esimerkiksi sähkön arvonlisäveron 10 prosenttiin, jonka Riiikka anosti 25,5 prosenttiin. Sannan aikaan bens
      Maailman menoa
      38
      2962
    2. Vain vasemmistohallitus saa minut menemään töihin

      Änkyräkapitalistien sortaessa kansaa en laita rikkaakaan ristiin. Elän mielummin Kelan tuilla, ja jos niitä leikataan, n
      Maailman menoa
      130
      2705
    3. Mitä kirjainta kaipaat?

      Pitkästä aikaa tämmöistä. Onko kirjain muuttunut edellisestä. ☺️
      Ikävä
      183
      2597
    4. EK: Suomi tarvitsee vuosittain 45 000 maahanmuuttajaa

      Senpä takia Riikkakin laulaa sen lauluja kenen leipää syö. Viime vuonnahan Suomeen muutti 50 tuhatta ulkomaalaista. htt
      Maailman menoa
      195
      2275
    5. Oliko se oikeasti epäselvää

      sinulle että olin ihastunut sinuun? (Ymmärrän että siitä on aikaa, eikä voi olettaa että kaikkea muistaisi tai että men
      Ikävä
      125
      1740
    6. Kristityt kastoiva alunperin upottamalla - upotuskaste annettiin vain uskoon tulleille aikuisille

      Raamatussa on käännösvirhe. Kaste tulisi olla upottaa veteen, jota kreikan sana baptizo tarkoittaa. Aluseurakunta kast
      Kaste
      458
      1169
    7. Nyt mä vihaan sua kyllä

      Jos sä oot oikeasti tämä takana! En ois ikinä susta uskonut! 😠☹️
      Ikävä
      85
      949
    8. Muslimiyhteisö jyrähti - Kova vaatimus Orpolle ILtalehti

      Eiköhän se ala olla aika pistää stoppi noille muslimien vaatimuksille Suomessa ? Ei Suomessa ole pakko oll
      Maailman menoa
      172
      862
    9. Mitä tekisit ensimmäiseksi??

      Jos hänet näkisit kahden kesken!!
      Ikävä
      45
      827
    10. Kievarin pöydät

      Minkä helvetin takia kievarissa on laitettu pöytä laulajan taakse. Siellä huutavat nuoret niin että et omaa ääntäsi kuul
      Suomussalmi
      15
      782
    Aihe