< návrat zpět

MS Excel


Téma: Ověření dat a kopie cizí buňky rss

Zaslal/a 17.9.2020 9:53

Dobrý den,

nevíte, prosím, zda jde nastavit, aby se nepovolil přenos formátu z cizí kopírované buňky do buňky, která má nastavené ověření dat?
Př. v A1 je odemčená buňka a má nastavení ověření dat, aby se mohla vkládat jen celá čísla 1-10.
Zkusmo napíši text aaa do D1 a uzamknu sešit.
Když je sešit uzamčený, tak je možné psát jen do A1. To je vše v pořádku.
Problém je v tom, že excel umožní např. kopii uzamčené D1 s textem aaa (CTRl+C) a její vložení (CTRL+V) do A1. Tím je porušeno pravidlo pro ověřování dat a v A1 je tedy aaa. Když chci zapsat něco jiného, umožní psát čísla 1-10 na základě ověření dat.
Nevíte, co s tím? Potřebuji, aby uživatel nemohl tímto způsobem ověření dat obejít.
Bylo by super, pokud by řešení bylo mimo VBA.

Zaslat odpověď >

#048040
avatar
Pro toto je nutné nejdříve zamknout list a teprve potom celý sešit. Při zamykání listu by měla vyskočit tabulka, kde se dá odškrtnout políčko "vybrat zamknuté buňky". Když se to takto nastaví, lze se pohybovat jen po odemknutých buňkách s to co píšete není možné provést.citovat
#048041
avatar
Ověření dat funguje jen v některých případech a je dobrou pomůckou pro toho,kdo chce kontrolovat vkládaná data. Neúmyslné obejití kontrol např. kopírováním, je poměrně běžné. Zabezpečení je ale i při použití vba velmi obtížné.

Takže, pokud uživatel nechce úmyslně kontroly obejít, lze částečně tuto chybu eliminovat. Např. bez VBA omezím výběr jiné buňky v listu, ale už nezabráním ctrl-c v jiném sešitu, případě i v jiné aplikaci.

Pokud uživatel chce zadat nepovolená data, tak je zadá, i když možná ne snadno.citovat
#048042
avatar
V rámci toho jednoho listu funguje, když při zamykání listu nezaškrtnu "Vybrat uzamčené buňky". Na přiloženém obrázku hned první řádek.
Ale, jak píše lubo, od jinud už kopírovat mohu.
Příloha: png48042_bez-nazvu.png (11kB, staženo 19x)
48042_bez-nazvu.png
citovat
#048043
avatar
Děkuji za odpovědi.
Vámi popsané jsem již zkoušel, šlo mě hlavně o to, abych eliminoval kopírování buňky odjinud.
Ale jak jsem našel na zahraničních fórech, tak min. od r. 2015 se o tom ví a jak to vypadá, tak s tím Microsoft nic neudělal.
https://excel.uservoice.com/forums/304921-excel-for-windows-desktop-application/suggestions/10686822-stop-copy-paste-overwriting-data-validation

V pohodě, počítám s tím, že z 80% uživatel data zapíše. Ten zbytek bude kopírovat... uvidím v budoucnu. 1citovat
#048044
avatar
pak jedině makrem:
https://pc-help.cnews.cz/viewtopic.php?t=134511citovat
#048045
avatar

Jiří497 napsal/a:

pak jedině makrem:
https://pc-help.cnews.cz/viewtopic.php?t=134511

Ani to nemusí byť riešenie.
Kopírovať sa dá aj CTRL+C -> ENTER
Alebo cez menu prilepiť/prilepiť špeciálne
Prípadne makrom.

Neviem prečo zadávateľovi až tak záleží, ako si používateľ urobí vo svojom hárku bordel 4 4citovat
#048046
avatar
A čo tak vlastné overenie?
Dim bunka As String
Private Sub Worksheet_Change(ByVal Target As Range)
If Target > 10 Then MsgBox " Údaj mimo rozsah": Target = bunka
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
bunka = Target
End Sub
citovat
#048047
avatar
Problém je v tom, že soubor, kde uživatel bude zadávat data nesmí mít makro.
Uživatel ale bude mít povoleno vložit konkrétní data - proto je tam ověřování dat.
Uživatel pak vyplněný soubor odešle mailem.

Později obsluha databáze vezme zaslaný excelevský soubor a a jeho obsah makrem načte do databáze. No a pokud tam budou nesmysly, tak se nakopírují nesmysly. Naštěstí v databázi makra povolena jsou, takže tam se na ty chyby přijde.citovat
#048048
avatar

MilaF napsal/a:

Problém je v tom, že soubor, kde uživatel bude zadávat data nesmí mít makro.

Dobrý nápad, dať takéto inštrukcie až po funuse. 2citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse

Čas od do

lubo • 19.4. 16:30

Makro smyčka

MilanKop • 19.4. 10:46

Makro smyčka

elninoslov • 19.4. 9:02

Čas od do

elninoslov • 19.4. 8:46

Čas od do

jarek1111 • 18.4. 13:46

Čas od do

lubo • 18.4. 11:13

Čas od do

jarek1111 • 18.4. 8:32