Hirdetés

2024. május 4., szombat

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.hu

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.

Összefoglaló kinyitása ▼

Hozzászólások

(#39601) Fferi50 válasza modflow (#39600) üzenetére


Fferi50
őstag

Szia!

Alapból minden cella zárolt egy új munkalapon. De a zárolás csak akkor érvényes, ha bekapcsolod a munkalap védelmet. Magyar Excelben Véleményezés - lapvédelem.
A "szabad" celllákat kijelölöd - jobb egérgomb - cellaformázás - védelem - a Zárolt négyzetből kiveszed a pipát.

Üdv.

(#39602) modflow válasza Fferi50 (#39601) üzenetére


modflow
veterán

Köszönöm

(#39603) Mutt válasza MZsoltee (#39598) üzenetére


Mutt
aktív tag

Szia,

A sorok magassága nyomdai pontokban van megadva, 72 pont = 1 inch = 2,54 cm
Az oszlop szélesség pixelben van és függ a használt betűtípus szélességétől. Bővebben itt.

Megoldás:
1. Kapcsolj át Lapelrendezés nézetbe
2. Ekkor azonos mértékegységben (centi, pontok) tudod állítani a magaságot, szélességet.
3. Válts vissza normál nézetbe.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39604) oke válasza föccer (#39599) üzenetére


oke
senior tag

Kimutatáson belül nem megoldható, ahogy a kép mutatja?
Folyamatosan változnak az adatok, kerülhetnek be új sorok, a napok meg folyamatosan bővülnek napi szinten.

(#39605) MZsoltee válasza Mutt (#39603) üzenetére


MZsoltee
veterán

Köszönöm a pontos választ! :R

A tökéletes nő süketnéma, nimfomániás, és az apjának kocsmája van.

(#39606) lappy válasza modflow (#39600) üzenetére


lappy
őstag

A cellát kell beállítani cellaformázás védelem majd pipa kivesz (zárolt)
ezután mehet a lapvédelem

[ Szerkesztve ]

Bámulatos hol tart már a tudomány!

(#39607) modflow válasza lappy (#39606) üzenetére


modflow
veterán

Megvan, köszi.

(#39608) Iethau


Iethau
újonc

Sziasztok!

A következő dologhoz szeretnék segítséget kérni. Excel 2013. Adott egy lap, 17e sorral ami egy ügyfél lista. Adott a másik lap, amin kb. 20e sor van, az elmúlt pár évben kiállított számlák természetesen az előző ügyféllistából. Szeretném kitörölni az ügyféllistából azokat, akik nem szerepelnek a második lapon, azaz nem állítottunk ki nekik számlát az elmúlt években. Megoldható ez valamiféle egyszerű szűréssel? Előre köszönöm a segítő válaszokat!

(#39609) Delila_1 válasza Iethau (#39608) üzenetére


Delila_1
Topikgazda

A két lap neve nálam Régi és Friss. Az ügyfelek neve mindkét lapon az A oszlopban van. Írd át a makróban a saját lapjaid nevére.
A makrót modulba másold, ennek módját lásd a Téma összefoglalóban.

Sub Frissites()
Dim sor As Long, talal, usor As Long

Sheets("Régi").Activate
usor = Range("A" & Rows.Count).End(xlUp).Row

For sor = usor To 2 Step -1
On Error Resume Next
talal = Application.Match(Cells(sor, "A"), Sheets("Friss").Columns("A"), 0)
If IsError(talal) Then Rows(sor).Delete Shift:=xlUp
On Error GoTo 0
Next
End Sub

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#39610) föccer válasza Iethau (#39608) üzenetére


föccer
nagyúr

Én csinálnék egy segédoszlopot a partnerek listája mellett, amiben egy szerszerű hol.van() függvénnyel keresnék a számlák adatai között. Ahol #hiányzik hibát kapsz, ott nincs találat. Ezután bekapcsolnám az autoszűrőt, kiszűrném az összes #hiányzik hibát és az eredmény táblát kijelölve simán kimásolnám a leszűrt adatokat és egy üres munkalapra érték beillesztéssel bepakolnám.

A-Z 30 másodperces művelet. :)

üdv, föccer

Építésztechnikus. Építőmérnök.

(#39611) Iethau


Iethau
újonc

Ezt a gyorsaságot :) Nagyon köszönöm mindkettőtöknek a választ!

(#39612) wednesday


wednesday
őstag

Sziasztok!

Szeretnék egy olyan makrót készíteni, ahol egy legördülő menüből kiválasztom a cég nevét és a alatta lévő cellákba meg automatikusan betölti a hozzá tartozó adatokat egy másik fülön lévő táblázatból. Például székhely adószám stb.

Segítségeteket köszönöm! :)

(#39613) föccer válasza wednesday (#39612) üzenetére


föccer
nagyúr

Simán lehet index() és a hol.van() koombóval megcsinálni. A keresett értéket veheti a legördülő menüt tartalmazó cellából is.

üdv, föccer

Építésztechnikus. Építőmérnök.

(#39614) Zoli42ab


Zoli42ab
újonc

Helló Mindenkinek!

Azt hogyan lehet megvalósítani Excellben, hogy ha az egyik cellában levő szám nagyobb a másik cellában levő számnál, akkor a nagyobbnak a kitöltési szine pl. legyen piros?
If A1 > B1 then A1.cell.color:= red
Valszeg nem így kell, de ebből talán érthető, mit is szeretnék.
Válaszotokat előre is köszönöm!

(#39615) föccer válasza Zoli42ab (#39614) üzenetére


föccer
nagyúr

Szia!

Feltételes formázásban új szabály, kijelölés képlettel

oda írd be a szükséges képetet.

Építésztechnikus. Építőmérnök.

(#39616) l.skywalker


l.skywalker
félisten

Sziasztok. Egy tartomány "végét" hogyan tudnám legegyszerűbben meghatározni, hogy az utolsó sor legyen?

A5:A_utolsó sora.

Dynamic Range-t nem akarok csinálni mert egy VBA-val már meghatároztam egy másik munkalapon az adott utolsó sor értékét, de nem tudom, hogy függvényban hogyan tudnám beilleszteni azt az értéket az adott oszlop jelölő után.

Nem szabad félnem. A félelem az elme gyilkosa. A félelem a kis halál, mely teljes megsemmisüléshez vezet. Szembenézek félelmemmel.

(#39617) Delila_1 válasza l.skywalker (#39616) üzenetére


Delila_1
Topikgazda

=SZUM(INDIREKT("A2:A"&DARAB2(A:A)))

=ÁTLAG(INDIREKT("A2:A"&DARAB2(A:A)))

Az A1 cellában van az oszlop címe.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#39618) Mutt válasza l.skywalker (#39616) üzenetére


Mutt
aktív tag

Szia,

Nem teljesen világos a kérdés, mert azt is írod, hogy az utolsó sort VBA-ban már kikerested de közben kell egy képlet amivel ugyanezt meg tudod határozni.

Ha VBA-ban van egy változód amiben ott az utolsó sor azonosítója és azt VBA-n kívül akarod használni, akkor a Névkezelőbe feltudod venni:

ActiveSheet.Names.Add Name:="Utolsosor", RefersTo:=UtolsoSor

Ez munkalap körben hozza létre a változót, ha másik lapon akarsz ráhivatkozni, akkor az ActiveSheet-et hagyd el (vagy cseréld le Thisworkbook -ra).

Innentől már az INDIRECT függvénnyel tudsz a tartományra hivatkozni:
=INDIREKT("A5:A"&Utolsosor)

Egy lépésben az A5:A_utolsó sora így is leírható:
ActiveSheet.Names.Add Name:="Utolsosor", RefersTo:=Range("A5", Range("A" & Rows.Count).End(xlUp))

Ha képlettel kell az utolsó sor, akkor pedig használható:
=KERES(2;1/(A:A<>"");SOR(A:A))

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39619) ny.janos válasza Zoli42ab (#39614) üzenetére


ny.janos
tag

Szia!

Ha a vizsgálandó értékeid az A és B oszlopban vannak, és soronként szeretnéd a nagyobbat jelölni, akkor használhatod a feltételes formázásban az adott képletet is (kettőnél több oszlopra alkalmazva értelemszerűen a legnagyobbat fogja kiemelni az általad megadott módon):
=A1=MAX($A1:$B1)

(#39620) mcwizard


mcwizard
tag

Sziasztok!

Olyan dologban kérném a segítségeteket, hogy megoldható-e az egy legördülő lista esetén, hogy a listából több elemet választhassak ki (Pl jelölőnégyzet segítségével), amik aztán vesszővel elválasztva kerülnének az adott cellába.
(Excel 2016, Magyar)

Előre is köszönöm az esetleges válaszokat!
Üdv, Zoli!

(#39621) lappy válasza mcwizard (#39620) üzenetére


lappy
őstag

valami ilyenre gondoltál?

Bámulatos hol tart már a tudomány!

(#39622) mcwizard válasza lappy (#39621) üzenetére


mcwizard
tag

Igen, ilyenre gondoltam, köszönöm. :R

(#39623) wednesday


wednesday
őstag

Sziasztok!

Arra van lehetőség, hogy kijelölés után indítsak egy másolás makrót és csak a kijelölt tartományból másol ki bizonyos meghatározott cellákat egy másik fülön lévő meghatározott cellákba? Az űrlap egyesített cellákat tartalmaz.

Az első fülön, a táblázatba sok adat található, mindig csak bizonyos adatokat kéne átmásolnom egy űrlapra. Az űrlapon található cellák (ahova másolunk) mindig fixek. A változó az első fülön lévő adatok, amik a kijelöléstől függnek.

Például kijelölöm A11:G16 ig a cellákat, de lehetne akár A21:G26, A82:G90 stb. (ez a rész okozza a fejtörést)

A11 kerül a másik fülön lévő urlap2 D15 cellába
C11 kerül az urlap 2 D8:L8 egyesített cellába

C12:G16-ig (ameddig tart a kijelölés) másol urlap 2 "B18:L23" azért az idézőjel mert összevont oszlopok vannak benne, ugyanúgy 5 sornyi adatot kell áthozni (vagy amennyi ki van jelölve).

Régebben segítettetek nekem egy Űrlapból mentés táblázatba makróba. Na most itt meg kéne fordítani a dolgot, vagy nem is megfordítani, hanem egy új űrlapra másolni a táblázatból a kijelölt adatokat.

Mondjuk azt ez egy "módosít űrlap", amivel régebbi adatokat másolunk vissza a táblázatból, hogy a egy két rész módosítása után újra ki lehessen nyomtatni stb.

[ Szerkesztve ]

(#39624) wednesday válasza wednesday (#39623) üzenetére


wednesday
őstag

Na találtam a neten egy egész használható megoldást. Csak a feladathoz kéne igazítanom. Viszont megnyitva nem látom a makrót.

[link]

Én is két adat alapján tudnék keresni. Név meg dátum szerint, és hozzá tartalmazó adatokat kéne átmásolnom a megfelelő helyre. A kikeresés után az átmásolandó adatok nem fixek, hanem addig tartanak, ahol a következő név és dátum kezdődik az én példámba. Ezeket az adatokat kéne meghatározott cellákba másolni, azzal a különbséggel, hogy magát a nevet és dátumot (csop. vezetőt és fizetési módot) is másolni kéne.

[ Szerkesztve ]

(#39625) wednesday válasza wednesday (#39624) üzenetére


wednesday
őstag

És így néz ki ahova kerülnek az adatok.

(#39626) lappy válasza wednesday (#39624) üzenetére


lappy
őstag

itt van a fájlból a két makró

Private Sub CommandButton1_Click()
b = 1
For a = 9 To 15
If Worksheets("Munka1").Cells(a, 2).Value = TextBox1.Value And Worksheets("Munka1").Cells(a, 3).Value = ComboBox1.Value Then
Worksheets("Munka2").Cells(b, 2).Value = Worksheets("Munka1").Cells(a, 2).Value
Worksheets("Munka2").Cells(b, 3).Value = Worksheets("Munka1").Cells(a, 3).Value
Worksheets("Munka2").Cells(b, 4).Value = Worksheets("Munka1").Cells(a, 4).Value
Worksheets("Munka2").Cells(b, 5).Value = Worksheets("Munka1").Cells(a, 5).Value
Worksheets("Munka2").Cells(b, 6).Value = Worksheets("Munka1").Cells(a, 6).Value
Worksheets("Munka2").Cells(b, 7).Value = Worksheets("Munka1").Cells(a, 7).Value
b = b + 1
End If
Next a
End Sub

ThisWorkbook

Private Sub Workbook_Open()
Munka1.ComboBox1.AddItem "készpénz"
Munka1.ComboBox1.AddItem "utalvány"
Munka1.ComboBox1.AddItem "kártya"
End Sub

[ Szerkesztve ]

Bámulatos hol tart már a tudomány!

(#39627) wednesday válasza lappy (#39626) üzenetére


wednesday
őstag

Köszi szépen. :)

Ezzel remélem kezdhetek valamit. Egyelőre szenvedek ezzel a feltételes másolással.

Valami ilyesmi kéne.

Ha megvan a dátum név kombó, akkor a név alatti adatokat addig másolja amíg egy újabb dátum névhez nem ér (az már egy másik csoport). Bár ez az addig másolja sem állja meg a helyét, hiszen egyelőre fix 6 helyem van. Ha 5-nél több van új adatlapra kerülne. Például munka3 és 7-12ig, munka4 13-18 stb. Nem kell olyan sok. ugyanazon név és dátum.Vagy megoldom, hogy addig generálja a sorokat az űrlapon amíg szükséges.

[ Szerkesztve ]

(#39628) wednesday válasza wednesday (#39627) üzenetére


wednesday
őstag

Dátumot Írok a TestBox-ba arra nem akar keresni? Tudom állítani a tulajdonságát, hogy ne csak szöveg beírására keressen?

(#39629) Delila_1 válasza wednesday (#39628) üzenetére


Delila_1
Topikgazda

Private Sub CommandButton1_Click()
Dim sor As Variant

On Error Resume Next
sor = Sheets(1).Range("A:A").Find(CDate(TextBox1)).Row
If IsEmpty(sor) Then
MsgBox "Nem található " & TextBox1 & " dátum az A oszlopban.", vbCritical
On Error GoTo 0
Exit Sub
Else: MsgBox sor
End If
End Sub

[ Szerkesztve ]

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#39630) Mutt válasza wednesday (#39624) üzenetére


Mutt
aktív tag

Szia,

Felraktam ide egy változatot, amely tudja azokat a dolgokat amiket kértél.

Plusz dolog a részemről, hogy tettem adatvalidációt az űrlapon a név és dátum mezőkre, mert simán lehet hogy vki olyan komibinációt választ amihez nincs adat. Ha vki választ egy nevet, akkor VBA kikeresi hogy mely dátumok valósak hozzá. Ez fordítva is igaz, vagyis dátum alapján leszűkíti a VBA a neveket is.
Ha új keresést akar vki, akkor át kell váltani egy másik lapra és visszajönni az űrlapra.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39631) wednesday válasza Mutt (#39630) üzenetére


wednesday
őstag

Nagyon köszönöm a segítséget! :R

(#39632) tgumis válasza modflow (#39600) üzenetére


tgumis
tag

Már látom hogy ment a válsz upsz

[ Szerkesztve ]

(#39633) Laciahegyrol


Laciahegyrol
csendes újonc

Sziasztok,
Szeretnék segítséget kérni, hogy lehetne megoldani, hogy egy munkalapon levő különböző gombok ugyanazt az űrlapot nyissák meg, majd az űrlapon levő OK gomb segítségével az először megnyomott gomb függvényében más parancs fusson le?
Köszönöm: Laci

(#39634) Mutt válasza Laciahegyrol (#39633) üzenetére


Mutt
aktív tag

Szia,

2 megoldási javaslat:

1. A formon az OK gomb Tag tulajdonságának a használata.
2. Globális változó, amelyet a form is elér.

A példában van 3 gombom (Összeadás, Kivonás és Szorzás) mindegyikhez a "Kattintas" makró van társítva.

Sub Kattintas()

'1-es változat - ahol Sajat a form neve, amelyen bOK a gomb
Sajat.bOK.Tag = ActiveSheet.Shapes(Application.Caller).AlternativeText

'2-es változat - ahol a muvelet egy globális változó
muvelet = ActiveSheet.Shapes(Application.Caller).AlternativeText

Sajat.Show

End Sub

Van egy form "Sajat" név alatt, amin van egy OK és egy Mégsem gomb (bOK és bCancel).
Az OK gomb eseménye ennyi:

Private Sub bOK_Click()
Dim a As Long, b As Long

Randomize 3

a = Int(Rnd() * 100) + 1
b = Int(Rnd() * 100) + 1

Select Case bOK.Tag '1-es változat
'Select Case muvelet '2-es változat
Case "Összeadás"
MsgBox a & " + " & b & " = " & a + b
Case "Kivonás"
MsgBox a & " - " & b & " = " & a - b
Case "Szorzás"
MsgBox a & " * " & b & " = " & a * b
End Select

End Sub

Remélem ezen el tudsz indulni.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39635) gaben86


gaben86
csendes tag

Sziasztok!

Szeretnék segítséget kérni az alábbiakban: munkafüzetben 2 munkalap van az egyik "Munka2" adatforrás, amiben ügyfelek adatai szerepelnek, az "a2:a237" oszlop ügyfelek azonosítóját tartalmazza, a többi oszlop "b2:bo237" különféle növénykultúra terület adatait, "b1:bo1" fejlécnek tekintendő.
Ez a táblázat soronként "ügyfelenként" tartalmaz üres cellákat.

A másik munkalap "növények" kötött formátumú, nyomtatásra előkészített lap.
Arra van e lehetőség, hogy a növények munkalap legördülő listájából (h1) kiválasztott "ügyfél" azonosítóra az adott ügyfélhez tartozó adatok átkerüljenek a "Munka2" táblából, de úgy, hogy az üres cellák kimaradjanak, csak az adatot tartalmazó cellákat kellene áthoznia a hozzá tartozó fejlécekkel.
A legtöbb átmentendő adat max 15db, a "b2, d2, f2, h2, k2, m2, o2, q2, t2, v2, x2, z2, ac2, ae2, ag2"
összevont cellába kerülne a fejléc, a hozzá tartozó értékek pedig, a "b4, d4, f4......." cellákba, ezek nem összevontcellák.
Mentést követően a feltöltött cellákat üríteni kellene,majd kezdődhetne előröl egy másik üzemet kiválasztva.

Remélem jól meg tudtam fogalmazni -és értelmezhető amit írtam.

Előre is köszönöm segítségetek! :R

Üdv. G.

(#39636) uvyp


uvyp
csendes tag

Sziasztok!

2019es Magyar excelben hogyan lehet beállítani,hogy az adott oszlopban már egyszer szereplő szavakat ne kelljen újból végig kiírni, hanem a kezdő betű leütésekor felajánlja a szót? Jelenleg csak akkor ajánlja fel ha az adott oszopban nincs az egymás alatt lévő cellák között üres cella.

Köszi a választ!

(#39637) Delila_1 válasza gaben86 (#39635) üzenetére


Delila_1
Topikgazda

Először meg kell találni a sort, amelyik a kiválasztott azonosítóhoz tartozik. Ezt a HOL.VAN függvénnyel keresheted ki.

=HOL.VAN(Munka2!H1;$A:$A;0)

Ezt használhatod az INDEX függvényben.

=INDEX(Munka2!$A:$BO;HOL.VAN(Munka2!H1;$A:$A;0);1)

ahol az első paraméter, a Munka2!$A:$BO határozza meg a tartományt, amiben keresel,
a második paraméter a tartományban lévő keresett sor, amit fentebb már írtam,
az utolsó paraméter (1) adja meg, hogy a tartomány melyik oszlopából kéred az adatod. Az 1 az A oszlopból, a 2 a B-ből, stb...

Ha a másik lap egyes oszlopaiba a Munka2 lap előző oszlopának az értékét akarod beilleszteni – B-be a Munka2 lap A oszlopát –, akkor az oszlopszám helyére kerülhet a képletben OSZLOP()-1 . Az OSZLOP() függvény az aktuális oszlop számát adja meg.

Tehát a kigyűjtendő lapon kell az egyes cellákba beírni az INDEX-HOL.VAN párost. Törlésre nincs feltétlenül szükség, hiszen az üres cellák értékei is felülíródnak a képletek által.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#39638) Laciahegyrol válasza Mutt (#39634) üzenetére


Laciahegyrol
csendes újonc

Nagyon szépen köszönöm! A logikát értem.
Ellenben nem működik az "ActiveSheet.Shapes(Application.Caller).AlternativeText. Sem a Tag, sem a muvelet nem kapja meg az értéket. Ha én adom meg neki, hiba nélkül fut.
Hibaüzenet: type mismatch.
(Office 2010)

(#39639) gaben86 válasza Delila_1 (#39637) üzenetére


gaben86
csendes tag

Köszönöm segítséged! :R

Megpróbálkozom vele

(#39640) Delila_1 válasza gaben86 (#39639) üzenetére


Delila_1
Topikgazda

Szívesen. Remélem, összejön.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

(#39641) Mutt válasza Laciahegyrol (#39638) üzenetére


Mutt
aktív tag

Szia,

Próbáld ki, hogy ez a minta megy-e nálad?

Ha igen, akkor a nálad lévő fájlban más a felépítés. Több infó kell.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39642) Mutt válasza uvyp (#39636) üzenetére


Mutt
aktív tag

Csak összefüggő tartomány esetén ajánlja fel az Excel a korábbi tartalmakat, ha van egy üres cella a tartományban akkor már nem fog működni. Nem lehet ezen módosítani. Ha megfelel, akkor az üres cellába tegyél szóközt és onnantól megint fog javasolni az Excel.

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39643) Laciahegyrol válasza Mutt (#39641) üzenetére


Laciahegyrol
csendes újonc

Hálás köszönetem, működik! A minta rendben volt.
Az volt az eltérés, hogy űrlap-verzérlőelemet használtál, én meg ActiveX-vezérlőelemet.
Köszönöm még egyszer, szép estét! Üdv: Laci

(#39644) lappy


lappy
őstag

Sziasztok
Nem éppen excel de hátha tudtok segíteni. Van egy ppt abban beillesztek egy swf fájlt. Ennek megadom a helyét akkor működik. De amikor máshol szeretném megnyitni akkor már nem ott lesz az swf file. Vba ban lehetséges hogy keresse meg és ha megtalálta akkor tegye ezt bele mint elérési útvonal.

Bámulatos hol tart már a tudomány!

(#39645) uvyp válasza Mutt (#39642) üzenetére


uvyp
csendes tag

Értem, köszönöm!

(#39646) lappy


lappy
őstag

Szeretnék egy google drive-ra feltöltött excel fájlt levédeni. Azaz csak olvasható legyen alapból, de ha a kódot beírom akkor szerkeszthető is.
Hogyan tudom ezt megoldani?

Bámulatos hol tart már a tudomány!

(#39647) Mutt válasza lappy (#39646) üzenetére


Mutt
aktív tag

Szia,

Fájl szintű védelem

Munkafüzet felépítésének védelme

Munkalap védeleme

Azonban pár perces Google search-el egy kezdő is ki tudja ütni ezen védelmeket. Ne várj csodát.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39648) mcwizard


mcwizard
tag

Sziasztok!

Az megoldható valahogy, hogy az F, G és H oszlopok legyenek rejtve, és automatikusan jelenjenek meg, ha az E oszlop bármely cellájába "kattintok"(Bocsi, de a szakszavakkal nem vagyok tisztában). Ameddig az E, F, G vagy H oszlopok valamelyikében dolgozok, addig maradjanak is láthatók az F, G és H oszlopok. Ha végeztem és az előbb említett oszlopokon kívül bármelyik cellába "kattintok", akkor automatikusan legyen újra rejtett az F, G és H oszlop.
(Excel2016, magyar)
Előre is köszönöm a segítséget! :)

[ Szerkesztve ]

(#39649) Mutt válasza mcwizard (#39648) üzenetére


Mutt
aktív tag

Szia,

Makróval lehet megoldani automatikusan amit írtál/kértél. A munkalap SelectionChange eseménye segít ebben.
Jobb klikk a lap nevén és Kód megjelenítése opciót válaszd, majd másold be ezt a szerkesztő ablakba:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Not Intersect(Target, ActiveSheet.UsedRange) Is Nothing Then
If Target.Column >= 5 And Target.Column <= 8 Then
Columns("F:H").EntireColumn.Hidden = False
Else
Columns("F:H").EntireColumn.Hidden = True
End If
End If

End Sub

Kézi megoldás pedig, hogy F:H tartomány csoportba foglalod, ekkor az oszlop nevek felett megjelenik egy gomb amivel szintén el tudod érni amit kértél egy plusz kattintással.

üdv

[ Szerkesztve ]

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#39650) Delila_1 válasza mcwizard (#39648) üzenetére


Delila_1
Topikgazda

Mutt megoldásához még 1:

Minden oszlop látszik. Nézet menü, Munkafüzetnézetek, Egyéni nézetek, Hozzáadás. Megadod a nevet, pl. Teljes, OK.
Elrejted az F-G-H oszlopokat, menü mint az előbb, az új név NukuFGH.
Ezután a menüben tetszésed szerint választhatsz a két új elrendezésed közül.

Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.