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

1267

    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. 20v on otettu kiinni

      Tulipalo oli sytytetty joten murhasiko ex omat lapsensa ja heidän Äidin. Tuskin sitä kukaan ohikulkijakaan sytytti.
      Savonlinna
      373
      13281
    2. Näin tyhmä vasemmistolainen on: "S-kaupoissa on nykyään ihanaa käydä

      kun siellä ei ole hihhuleita eikä persuja." Vain tyhmä eli heikkoälyinen vasemmistolainen voi tehdä noin lapsellisia ju
      Maailman menoa
      50
      4244
    3. S-kaupoissa on nykyään ihanaa käydä

      Kun niissä ei enää käy satuolentoihin uskovat hihhuIit eivätkä persut. Asiakaskunta on huomattavasti siistiytynyt muutam
      Maailman menoa
      109
      4063
    4. Riikka runnoo! Uutta velkaa tänä vuonna 17 mrd. euroa

      Tirsk. Nyt kyllä hihityttää kuin pientä eläintä. Riikka takoo maailmanennätyksiä tasaiseen tahtiin. " [Riikka] joutuu
      Maailman menoa
      35
      4026
    5. Suomessa on ollut suurtyöttömyyttä ennenkin, ja lääkäriin pääsee nykyäänkin

      Täällähän oli jonkun sekopään(vas.) juttu, että ennen ei ollut työttömyyttä ja lääkäriin pääsi. Siihen alkoi tietysti ko
      Maailman menoa
      62
      3859
    6. Mitä meidän välillä

      Tapahtuu lopulta?
      Ikävä
      85
      3324
    7. Kysymys: Kuinka moneen maahan neuvosto-venäjä on hyökännyt

      viimeisten 90-vuoden aikana? Ja lähinnä on siis kyse neuvosto-venäjän naapurimaista - kuten Suomesta. Lista on huomatta
      Maailman menoa
      64
      3208
    8. 105
      3172
    9. IL - Auerin lapsia oli houkuteltu rahalla Annelin puolelle?

      16:12 Outoja väitteitä Sijaisäidin mukaan Auerin lapsia koetettiin houkutella nettipalstoilla muuttamaan kertomuksiaan
      Maailman menoa
      144
      3145
    10. Savonlinan perhesurma, epäilty mies romani, äiti kantaväestöä

      https://www.is.fi/kotimaa/art-2000011676508.html Savonlinnan seudun romaniyhdistyksestä kerrottiin lauantaina IS:lle, e
      Maailman menoa
      160
      2831
    Aihe