-
Fototrend
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
bteebi
veterán
Sziasztok!
Event makrókkal próbálnám azt elérni, hogy bizonyos cellákat/oszlopokat csak bizonyos személyek (
Environ("UserName")-mel kiolvasott név alapján) szerkeszthessenek egy adott (mondjuk "DZS" nevű) munkalapon. Nagyrészt működik is, már csak 1-2 nem annyira jelentős anomália van, amiknek jó eséllyel könnyű a megfejtése, de én egyelőre nem jöttem rá.Az egyik oszlopot (5.) csak C és D személy írhatja, a többit pedig csak A és B, de rajtuk kívül senki más (tehát pl. E és F semmit sem csinálhat). Ehhez egy
Worksheet_Changemakrót használok. Ez most már működik. Viszont azt is szeretném megakadályozni, hogy a korábban pl. az 5. oszlopba a jogosult személyek által bevitt adatokat ki tudják törölni arra nem jogosultak. AWorksheet_Changemakró ugye csak akkor fut le, ha a változás már megtörtént. Tehát kiírja azt, hogy pl. nem lehet szerkeszteni az adott cellát, de addigra az már szerkesztődött. Vagyis vissza kell másolni az eredeti cellaértéket. Erre van egyWorksheet_SelectionChangemakró (nyilván ugyanazon a lapon):Dim origvalue As VariantPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)origvalue = TargetEnd SubEz csak annyit csinál, hogy tárolja a cella előző értékét, és ha a módosítás/törlés nem megengedett, akkor a
Worksheet_Changemakróval beleírja azt, hogy Target = origvalue. Ez teljesen jól működik, csak az a baj, hogy amikor még csak megnyitod a file-t, akkor azorigvalueüres, mert nincs seWorksheet_Change, seWorksheet_SelectionChange, szóval még mindig ki tudod törölni azon cella korábbi értékekét (file megnyitásonként csak a legelsőt), amelyiken éppenséggel a kurzor áll.Ez ellen kellene egy
Private Sub Workbook_Open(), amiről most már tudom, hogy aThisWorkbook-ba kell rakni, és részint működik is, de nem pont úgy, ahogy szeretném:Public origvalue As VariantPrivate Sub Workbook_Open()origvalue = ActiveCell.ValueEnd SubÉs így az origvalue-ban a megnyitáskor aktív cella értéke tárolódik. Viszont ha nem kattintok sehová, csak del-t nyomok a megnyitás után, akkor mégis ki tudom törölni az értéket.
Próbáltam már többféleképp megoldani, de sehogy se jó. Hogy kellene úgy átírnom, hogy a másik ("DZS") munkalapon lévő kódban is tudjam használni ezt az
origvalue-t? (Próbáltam azon a lapon isPublic origvalue As Variant-ként, de az se segített.) Egyszerű megoldás lenne, ha valami üres cellára ugrana megnyitáskor aPrivate Sub Workbook_Open(), de az egy elég gagyi megoldás lenne.Nagyon köszönöm a segítségeteket!

Új hozzászólás Aktív témák
- Highguard
- Témázgatunk, témázgatunk!? ... avagy mutasd az Android homescreened!
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- oriic: A TOP 10 legtöbb hozzászólással rendelkező PH! felhasználó
- Gyúrósok ide!
- Hardcore café
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- További aktív témák...
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem.
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- BESZÁMÍTÁS! HP Elitedesk 800 G4 SFF brand számítógép - i5 8500 16GB DDR4 256GB SSD UHD630 250W WIN11
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Apple iPhone 14 Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! MSI B450M R5 5600X 16GB DDR4 512GB SSD RX 6700XT 12GB Rampage SHIVA GIGABYTE 750W
- AKCIÓ! iMac Pro Intel Xeon W2150B 64GB 1TB VEGA 64 16GB!!! 1 év garancia!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs

Fferi50
