Keresés

Részletes keresés

Eredő Vektor Creative Commons License 2 órája 0 0 37990

Ezt VBA-val úgy készítettem el, hogy egy táblázaton végigmegy egy ciklus és a táblázatban szerepel a csatolmány elérési útja is. (és minden egyéb ami kell a levélküldéshez a VBA számára - mint levéltörzs, tárgy, cc, stb...)

Előzmény: djuice (37988)
pimre Creative Commons License 23 órája 0 0 37989

Emlékeim szerint M54-b olvtárs csinált valami hasonlót másfél éve: http://forum.index.hu/Article/viewArticle?a=162536543&t=9009340. Hátha erre is lesz megoldása.

Előzmény: djuice (37988)
djuice Creative Commons License 24 órája 0 0 37988

Sziasztok!

Csak még egy kérdés a körlevélhez...
Lehet hogy inkább Outlook funkcióra vonatkozik, de egy olyan kérdés merült fel, hogy ha van excelben egy email címlista és mellette még egyedi doksi mellékletek, lehetne-e csoportosan emailt küldeni ez alapján úgy, hogy adott címzettnek szólóan a rá vonatkozó egyéni doksi melléklettel automatikusan küldözgesse ki a rendszer az excel lista alapján amit kell?
Magyarul, ne kelljen a titkárnőnek 150 emailt külön megszerkeszteni és egyenként elküldözgetni.

Köszi!

Fferenc50 Creative Commons License 2024.04.30 0 0 37987

Szia!

Szívesen. Mindig tanul az ember. Az összfűzött keresésről például most tőled.

Üdv.

Előzmény: maciti (37986)
maciti Creative Commons License 2024.04.30 0 0 37986

Szia!

Köszönöm a segítséget! Bár kicsit szégyellem magam, hogy 25 év alatt erre nem jöttem rá. Volt már máskor is problémám ebből, akkor is a csillag karakter kavarta fel az életem. Nem gondoltam volna, hogy a keresésnél mint helyettesítő karakter éli az életét, nem pedig mint csillag. Nagyon hasznos volt a tájékoztatód!

Köszi!

Előzmény: Fferenc50 (37984)
Fferenc50 Creative Commons License 2024.04.29 0 0 37985

Kiegészítés: Az érdemjegyes táblázat:

A rendezetlen táblázat:                                                                  A rendezett táblázat X-t használva

Üdv.

 

Előzmény: Fferenc50 (37984)
Fferenc50 Creative Commons License 2024.04.29 0 0 37984

Szia!

Először az FKERES függvényről: 

A 4. paraméter szabályozza, hogy pontos egyezőséget keresünk vagy "közelítőt". 

A 0 vagy HAMIS pontos egyezőséget keres, az 1 vagy IGAZ közelítőt. Mit jelent a közelítő érték:

Ahhoz, hogy a közelítő keresés (avagy tartományban keresés) működjön, a keresőtábla keresési oszlopának emelkedő sorrendben kell lennie, pontos egyezés keresése esetén ez nem szükséges. Közelítő egyezés keresése esetén azt az értéket kapjuk vissza, amely még nem nagyobb a keresési táblában szereplő értéknél. Ezt ellenőrizhetjük úgy, hogy a harmadik paramétert 1-re -azaz magára a keresési oszlopra állítjuk.

Pl. van egy ilyen táblánk:

Az FKERES(56;B2:C7;2;1) képlet eredménye 3, mivel 56 nem nagyobb 75-nél, vagyis az 55 és 75 közötti tartományba esik, ezért az 55-höz tartozó értéket kapjuk vissza a C oszlopból. A B oszlopban az adott érdemjegyhez tartozó alsó pontérték határát kell megadni.

Ez így kiválóan működik, ha számokat kell keresnünk.

Esetedben viszont a keresést szövegben kell végrehajtani. Itt már előjönnek a szöveges keresés speciális szabályai:

1. A legfontosabb a csillag (*) ugynevezett helyettesítő/joker karakter. Mit jelent ez? A csillag helyettesíthet akárhány és akármilyen karaktert!!!

Pl. a.) *ház keresés a ház-ra végződő szavakat találja meg, legyen az áruház vagy nyilvánosház vagy beruház!

    b.) ház* keresés a ház-zal kezdődő szavakat találja meg, pl. házfal, háztető, házaló!

    c.) *ház* minden szót megtalál, ami tartalmazza a ház betűcsoportot, pl. beruházás, áruházi, átruházás!

Az FKERES pedig mindig a legelső találatot adja vissza.

Esetedben tehát a legelső olyan találatot, amely a szövegedben az első * előtti szöveggel kezdődik. Ez a "furcsa" viselkedés magyarázatának egyik része. TEHÁT A * helyett használj más karaktert (pl. x ) a méretek jelzésénél.

2. A probléma másik része a szövegek sorbarendezésének szabályából adódik. Amint a 4. paraméternél láttuk, a közelítő egyezéshez sorba kell rendezni a keresési táblát.

Mivel a méret tábla is szöveg, a benne levő számok szövegesnek minősülnek, ráadásul a rövidebb szöveg van előrébb:

Eredeti                                                                                            Sorba rendezett (már X-t használva)  

Pontos egyezésnél egyértelmű amit keresünk -> vagy van, vagy nincs.

Közelítő egyezésnél viszont amint látod, pl a Durvalemez|1250X2500X11 méretnél a Durvalemez|1250X2500X10-et fogja megtalálni és az ahhoz kapcsolódó értéket adja vissza.

Ha a fentieket figyelembe veszed, akkor nem lesz "furcsa" a függvény viselkedése. Így alkották meg, alkalmazkodni kell hozzá a használat során. (fene essen a redmondi logikába....)

Üdv.

 

Előzmény: maciti (37982)
jupi95 Creative Commons License 2024.04.29 0 0 37983

Nagyon köszi, @Fferenc50, szuperül működik!!!

Előzmény: Fferenc50 (37981)
maciti Creative Commons License 2024.04.29 0 0 37982

Sziasztok!

Az alábbi függvényhez kellene egy kis segítség:

FKERES függvény szintaktikába bonyolódtam bele egy kicsit. Ugyanis, ha pontos egyezést szeretnék, akkor HAMIS értéket kell adjak „Tartományi keresés” értékének. De van olyan eset a példában, mikor ez nem működik:

1 példasor: HAMIS érték esetén jó eredményt kapunk (így kellene működni)

2 példasor: IGAZ érték esetén hibás eredményt kapunk (így kellene működni)

3 példasor: HAMIS érték esetén hibás eredményt kapunk (nem így kellene működni)

4,5,6 példasor: IGAZ és HAMIS érték esetén is jó eredményt kapunk (nem így kellene működni?)

Van valakinek ötlete, hogy ez miét van így?

Azt szeretném, hogy HAMIS esetén mindig a helyes eredményt adja, tehát ha van adat, akkor azt, ha nincs akkor a #HIÁNYZIK hibaüzenetet.

Példa: https://data.hu/get/14169070/Minta_fkeres.xlsx

Fferenc50 Creative Commons License 2024.04.28 0 1 37981

Szia!

A feltételes formázás képlete, ha a C1 cellában van a beszínezendő cellák száma:

=OSZLOP()<=(OSZLOP($C1)+$C1)

Ezután kijelölöd a tartományt - addig az oszlopig ameddig szeretnéd a színezést.

A tartomány sorait húzhatod lefelé! Minden sorban annyi cellát fog beszínezni a 4. oszloptól kezdve, amennyi értéket a C oszlop adott sori cellájába írtál. - ha a C5 érteke 2  akkor D:E, ha 5 akkor D:E:F:G:H oszlopok 5. sora színeződik.

A képlet mindig a megadott cella sorában érvényesül.

Üdv.

 

Előzmény: jupi95 (37978)
Delila10 Creative Commons License 2024.04.26 0 0 37980

A D4:K4 tartományra a feltétel =$C$4=8, a D4:G4 tartományra pedig =$C$5=4.

Előzmény: jupi95 (37978)
_Nyuszi Creative Commons License 2024.04.26 0 0 37979

(Bocsánat, elszállt, nem fogom tudni úgy újra megírni.)

Megoldható, csak két felé kell venned a tartományt (D-G, H-K). Nekem mindig nagy küzdés, de megéri.

 

Saját példa az I16 cellára:

Értékek formázása, ha ez a képlet igaz:

=C16=H16

Érvényesség:

=$I$16

 

Az I16-ot pedig formázod, ahogy szeretnéd.

Előzmény: jupi95 (37978)
jupi95 Creative Commons License 2024.04.26 0 0 37978

Sziasztok!

Van olyan feltételes formázási trükk, amivel adott számú cellát tudok kijelölni (kiszínezni) egy sorban egy másik cella értéke alapján? Értsd, ha a C4 cellában 8 szerepel, akkor a D-E-F-G-H-H-I-J-K oszlopok 4. sorában található cellákat színezze, mondjuk, szürkére, ha C5 cellában pedig 4 szerepel, akkor a D-E-F-G oszlopok 4. sorában található cellákat színezze. 

Előre is nagyon-nagyon köszi a segítséget :)

aulac Creative Commons License 2024.04.24 0 0 37977

Szia. Ez a tökéletes megoldás. Köszönöm.

 

Off: Nem érthetően írtam sajnos. A C12-C15 cellákba a minden hétfőn leolvasott értéket kell beírni. Az I12-I15 cellákban kiszámítja az aktuális leolvasás és az előző hétfői állapot különbségét. (heti fogyás)

Az N oszlopban a havi minimum, maximum; és átlag számítás van.

 

Mindig tanulok tőletek.

 

aulac

Előzmény: pimre (37973)
Fferenc50 Creative Commons License 2024.04.23 0 0 37976

Szia!

Benne maradt egy felesleges idézőjel és félreérthető is volt, nem akartam az átlagha függvényt megismételni...

A képlet helyesen:

=HAHIBA(Átlaghafüggvény);0)

Az Átlaghafüggvény helyére az eredeti képleted írd be.

A HAHIBA függvény szerepe: ha a benne szereplő képlet eredménye valamilyen hiba, akkor a megadott értéket - itt 0-t - ad vissza a Hibajelzés helyett. 

Üdv.

Előzmény: aulac (37972)
Ex honfoglalo játékos Creative Commons License 2024.04.23 0 0 37975
Előzmény: djuice (37969)
pimre Creative Commons License 2024.04.23 0 0 37974

Ja és persze akkor már felesleges lesz az átlagha. Elég lesz az átlag.

Előzmény: pimre (37973)
pimre Creative Commons License 2024.04.23 0 0 37973

Miért nem úgy számolod ki N15-öt,hogy =HA(SZUM(I12:I15)=0;0;ÁTLAGHA(I12:I15; "<>0")) (Persze a Szum függvénybe írhatod a C12:C15-öt is.)

 

Off: Az első sorban írtakat egyébként nem értem. "C12:C15 cellákba heti (minden hétfőn leolvasott) fogyasztási adatokat írok. I12:I15 cellákban a heti fogyasztási összesítést számol ki." Hogy csinálsz 4 cellából másik 4 cellába fogyasztási összesítést? Persze a dolog érdeme szempontjából ezt nem szükséges tudnom.

Előzmény: aulac (37968)
aulac Creative Commons License 2024.04.23 0 0 37972

Sajnos ez semmit sem csinál.

Előzmény: Fferenc50 (37971)
Fferenc50 Creative Commons License 2024.04.23 0 0 37971

Szia!

Idézet a súgóból:

"A függvény figyelmen kívül hagyja a tartomány IGAZ vagy HAMIS értéket tartalmazó celláit.

  • Az ÁTLAGHA függvény figyelmen kívül hagyja az átlagtartományban található üres cellákat.

  • Ha a tartomány üres, vagy értéke szöveg, az ÁTLAGHA függvény a #ZÉRÓOSZTÓ! hibaértéket adja eredményül.

  • Az ÁTLAGHA függvény 0-nak tekinti a feltétel üres celláit.

  • Ha a tartomány egyetlen cellája sem tesz eleget a feltételnek, akkor az ÁTLAGHA eredménye a #ZÉRÓOSZTÓ! hibaérték lesz."

Használd a HAHIBA függvényt.

=HAHIBA(Átlagha;feltétel);"0)

Üdv.

Előzmény: aulac (37968)
Fferenc50 Creative Commons License 2024.04.23 0 0 37970

Szia!
Lehet benne egy eseménykezelő makró...

Üdv.

Előzmény: djuice (37969)
djuice Creative Commons License 2024.04.23 0 0 37969

Olyan excelt tábláról hallottatok már, amiben a ki törlünk egy cella tartalmat utána automatikusan vissza íródik? Milyen trükk lehet ez? Egyszerűen így javítani sem lehet benne.

aulac Creative Commons License 2024.04.23 0 0 37968

Sziasztok.

Segítség kérése:

 

C12:C15 cellákba heti (minden hétfőn leolvasott) fogyasztási adatokat írok. I12:I15 cellákban a heti fogyasztási összesítést számol ki.

Az N15 cellába kéne a havi átlagot kiszámolnia az Excelnek az I12:I15 szerint.

Ezt írtam be: =ÁTLAGHA(I12:I15; "<>0").

Ha a C12,C13,C14,C15 cella üresen marad, Mert semmi adat nincs beírva, akkor az N15cellában =ZÉROOSZTÁS! hiba jelenik meg.

Az kéne, hogy az üresen maradó C12-C15 cellékat ne vegye figyelembe és addig az N15 cellában "0" jelenjen meg.

 

Köszönettel: aulac

Vaja Attila Creative Commons License 2024.04.22 0 0 37967

Köszi.

 

Igaz nem úgy ahogy te írtad de hasonlóan sikerült.

 

Köszönöm szépen.

Előzmény: Fferenc50 (37966)
Fferenc50 Creative Commons License 2024.04.22 0 0 37966

Szia!

Bocsánat, a függvény nevét elírtam, a VKERES függvényről van szó.

Itt láthatod a képleteket:

Üdv.

Előzmény: Vaja Attila (37964)
Delila10 Creative Commons License 2024.04.22 0 0 37965

Szia!

 

Ha már módosítani akarsz, elsőként a felépítést érdemes megfordítani.

Napból sok lesz, míg az egyes értékekből naponta egyforma mennyiség (fogyasztott és betáplált óra állás, a kettő különbségei, és az elszámolás).

Az első oszlopban legyen a dátum, mellette az 5 adat, amikből hármat képlet számít ki.

Sokkal könnyebb lefelé gördíteni, mint oldalra.

Ebben az esetben az utolsó rögzített adatnál mented a füzetedet, másnap nem kell keresgélni az új sort. A címsort rögzítheted, hogy az mindig látható legyen.

 

Előzmény: Vaja Attila (37964)
Vaja Attila Creative Commons License 2024.04.22 0 0 37964

Jó reggelt.

 

Le tudnád írni nekem egy pelda függvényben. Nem jön össze az, hogy a dátumot  hozzárendeljem.

 

Köszi.

 

Előzmény: Fferenc50 (37963)
Fferenc50 Creative Commons License 2024.04.21 0 0 37963

Szia!

Én úgy látom, hogy a Dátumos oszlopokhoz is két adatot kellene a 3-4. sorba beírnod.  Ha megfordítjuk a dolgot - mert a tárgynapot szeretnéd külön látni - akkor  a B15 cellába bekerülhet a mai dátum a ma() függvénnyel.

A B17-18 cellákba pedig a Hkeres függvénnyel  megkeresed a 3-4. sorba beírd adatokat.

Így minden nap frissül a B17-18 amikor beírod a napi adatokat.

Üdv. 

Előzmény: Vaja Attila (37960)
pimre Creative Commons License 2024.04.21 0 0 37962

Adj még hozzá az eredményhez egy nullát. =BAL(A1;HOSSZ(A1)-1)+0 ez működik.

Előzmény: MM10 (37956)
XNC Creative Commons License 2024.04.21 0 0 37961

Nekem is a régebbiben, és cellát se kellett formázni.

Nem tudom milyen verziót használ, de az ingyenes LibreOffice-ba is be lehet húzni az XLS-t és meglehet ezt csinálni; ha másképp nem megy.

Előzmény: m54-b (37959)
Vaja Attila Creative Commons License 2024.04.21 0 0 37960

Igazából csak lustaság miatt gondoltam. így ahogy megcsináltam működik tökéletesen de a lustaság nagy úr. Így csak egy helyre kellene írni az adatokat.

Előzmény: Fferenc50 (37955)
m54-b Creative Commons License 2024.04.21 0 0 37959

Direkt kipróbáltam, a 2007-ben működöt (igaz colt egy cellaformázás --> szám).

Előzmény: MM10 (37958)
MM10 Creative Commons License 2024.04.21 0 0 37958

Ugyan az a hiba lép fel ilyenkor is,végeredménynek 0át ír

Előzmény: m54-b (37957)
m54-b Creative Commons License 2024.04.21 0 0 37957

Lecseréled az "M"-t semmire?

Előzmény: MM10 (37956)
MM10 Creative Commons License 2024.04.21 0 0 37956

Sziasztok.

 

Van egy sor adatom ahol az értékek mellé manuálisan mellé van írva hogy "M"

nagyjából így néz ki:

A1=12M

A2=7,5M

A3=4,3M

és így tovább.

nekem ezeket a számokat összekéne adnom,viszont az "M" betű miatt ezt nem tudom SUM függvénnyel összeadni,és túl nagy a mennyiség ahhoz hogy az "M" betűket egyenként elkezdjem kitörölni.

 

=LEFT(A1;FIND("M";A1)-1)

ezzel a képlettel viszont eltudom tüntetni egy új sorban az M betűket az összesből,viszont a sum ezeket sem tudja összeadni,végeredménynek 0át ír.

 

Megpróbáltam így is: =Value(LEFT(A1;FIND("M";A1)-1)) , erre viszont azt írja hogy "A 12 nem értelmezhető számként"

 

így teljesen tanácstalan vagyok. Valaki tud megoldást a problémámra? 

Előre is köszönöm a válaszokat.

 

Fferenc50 Creative Commons License 2024.04.21 0 0 37955

Szia!

Szia!

Mi oka van annak, hogy nem direktben a dátum alá írod be az adatokat?

Amit szeretnél az makróval oldható meg vagy Vkeres (esetleg Index - Hol.Van) függvényekkel és utána érték másolással, hogy ne változzon a napok változásával az érték.

Üdv.

Előzmény: Vaja Attila (37954)
Vaja Attila Creative Commons License 2024.04.21 0 0 37954

Lemaradt a kép.

Előzmény: Vaja Attila (37953)
Vaja Attila Creative Commons License 2024.04.21 0 0 37953

Sziasztok.

 

Elakadtam az Excelben. Mily meglepő.

 

A napelem termelésemet szeretném rögzíteni naponta de úgy, hogy csak egy cellába kelljen beírni az értéket és töltse ki egymás mellé dátum szerint az oszlopokba. megoldható ez? Csináltam egy screen shotot, hogy jobban érthető legyen.

 

Köszi ha van valamilyen ötletetek!

Fferenc50 Creative Commons License 2024.04.05 0 0 37952

Szia!

Amennyiben csak a számformátum van pénznemre állítva, akkor sajnos nem műxik a képletes számolás. Ebben az esetben kell hozzá egy segédoszlop, amiben a pénznemek kiírva szerepelnek! Ehhez az oszlophoz kell beállítani a feltételt.

Üdv.

Ps. Nem is értem, hogy egy oszlopban miért állítgatjátok a pénznemek formátumát. Sokkal egyszerűbb és használhatóbb ha külön oszlopban van a pénznem.

Előzmény: tekeoff (37949)
Fferenc50 Creative Commons License 2024.04.05 0 0 37951

Szia!

Szerintem próbáld meg a feltételes formázás - új szabály - a formázandó cellák kijelölése képlettel. A képlet pedig a következő:

=Darabha(Első munkalap tartománya;második munkalap cellája)=1

ezután kiválasztod a színt.

pl. =Darabha(Munka1!$A$1:$C$10;Munka2!A1)=1

Korábbi Excelnél Darabteli a függvény neve.

A képletben figyelj rá, hogy az alap tartományt rögzítsd dollár jelekkel, a keresendő értéket nem, így a képletet húzhatod lefelé és oldalra is.

Az =1 azt jelenti, hogy akkor színezi a cellát, ha pontosan 1 alkalommal fordul elő a másik tartományban. Ha mindegy hányszor fordul elő, akkor >0 legyen a feltételben.

Üdv.

Előzmény: MM10 (37950)
MM10 Creative Commons License 2024.04.05 0 0 37950

Üdv.

 

Feltételes formázást megtudok valósítani valósidőben? Konkrétan azt szeretném,hogy van 2 adathalmazom,a 2 halmazban vannak 100%osan megegyező adatok. 

egy egyszerű példával szemléltetném mire gondolok

Munkalap1 adatai:
A1: Alma
A2: Körte
A3: Citrom

Munkalap2 adatai:
A1: Narancs
A2: Alma

A3: Barack

 

Munkalap2ben,szeretném ha azok a cellák amiben az adat megegyezik a munkalap1 adataival azok kapnának egy színt amit előre beállítok.
A példa alapján az A2es cella kapna egy színezést.

Előre is köszönöm a válaszokat

 

tekeoff Creative Commons License 2024.04.04 0 0 37949

Köszönöm. A KRITÉRIUMhoz mit írjak, ha a dollárra beállított pénznem cellákat szeretném összeadni?

Előzmény: Fferenc50 (37946)
tekeoff Creative Commons License 2024.04.04 0 0 37948

Igazad van, de én most egy programtáblázatot csinálok időpontokkal, eseményekkel és belépő árakkal. Sajnos úgy nem tudom összerakni, hogy az pénzösszegek egyszerűen csoportosíthatók legyenek.   

Előzmény: Delila10 (37947)
Delila10 Creative Commons License 2024.04.04 0 0 37947

Egy normálisan megtervezett táblázatban egy-egy oszlopon belül azonos típusú adatok vannak – az oszlopon belül nem keverednek az idők és a szövegek. Ebben az esetben sima SZUM függvénnyel összegezhetők az értékek.

Előzmény: tekeoff (37945)
Fferenc50 Creative Commons License 2024.04.04 0 0 37946

Szia!

Szumha (SUMIFS) függvény a barátod!

Üdv.

Előzmény: tekeoff (37945)
tekeoff Creative Commons License 2024.04.04 0 0 37945

Sziasztok!

 

Az meg lehet csinálni, hogy egy táblázatban ahol van mindenféle mező (szöveg, dátum, idő, pénznem) csak a pénznemeket kigyűjteni és azokat összeadni? 

brandi12345 Creative Commons License 2024.04.03 0 0 37944

Szia Köszönöm szépen megoldódott

Előzmény: Fferenc50 (37940)
pimre Creative Commons License 2024.03.31 0 0 37943

Nagyon köszönöm. Sokáig kerestem, de nem találtam, ezért használtam a szükségmegoldást. 

Előzmény: Delila10 (37942)
Delila10 Creative Commons License 2024.03.31 0 0 37942

Szia!

 

Egy kis egyszerűsítés. A

For Each cella In ws.Columns("A").Cells

    If cella = "" Then

        uressor = cella.Row

        Exit For

    End If

Next

utolsosor = uressor - 1

 

helyett elég 

utolsosor = Range("A1").End(xlDown).Row

 

 

Előzmény: pimre (37941)
pimre Creative Commons License 2024.03.31 0 0 37941

Szia, megcsináltam azt, amit említettem. Nem egészen úgy, de a lényeg ugyanaz. Innen tudod letölteni:

https://drive.google.com/file/d/1IoV1r3Xg5v8nIdPDCeYIUK4rj3uvDVPq/view?usp=sharing

 

A letöltéshez egy technikai javaslat. A Microsoft kicsit túlbiztosítja a letöltött fájlok kezelését. Ezért ahhoz, hogy használni tudd a letöltött fájlt, először az egérrel fölé kell állnod, és a jobb gombot megnyomva kapsz egy listát, ahol a lista alján a Tiltás feloldásához pipát kell tenned a jelzett helyre. Aztán ha majd megnyitod a fájlt, akkor még a makrók használatát is engedélyezni kell. Enélkül nem működne a program.

 

 

 

A mintában az a 10 sor és 16 oszlop szerepel, amit küldtél. De a program ezt rugalmasan kezeli. Tehát egyszerűen másod felül a saját adataiddal a mintát. 

 

A használat a következő: Az utolső használt oszlop utáni üres oszlopban írj x-eket azon sorok mőgé, amiknek az adatait összegezni szeretnéd.

 

Ha megvan, akkor Alt + F8-ra elindul a program, és az utolsó használt sorod után 2 sorral kiírja a kiválasztott soraid összegeit. A kihagyott üres sorba ne írj semmit. Az üres sor azért kell, hogy a program tudja, meddig tartanak az adataid.

 

Ha kész vagy, és új összegzést akarsz indítani, akkor az x-eket tartalmazó oszlopban jelöld be az új válogatást. Legegyszerűbb, ha előbb törlöd a teljes oszlopot, aztán ikszelsz, hogy ne legyen tévedés.

 

Az alsó összegsort nem muszáj törölnöd, a proram mindíg ezek törlésével indít.

 

Ha van kérdésed, írj!

 

 

Előzmény: brandi12345 (37931)
Fferenc50 Creative Commons License 2024.03.29 0 0 37940

Szia!

"de  #NÉV? ezt irta ki nem tudom hol rontottam el."

Feltételezhetően ott, hogy nem magyar nyelvű az Exceled. Ha angol nyelvű akkor az angol függvény neveket kell használni. HA = IF, OSZLOP = Column,továbbá lehet, hogy a paraméter elválasztód sem pontosvessző hanem sima vessző.

Üdv.

 

Előzmény: brandi12345 (37939)
brandi12345 Creative Commons License 2024.03.29 0 0 37939

Szia! Köszönöm,hogy ennyit fáradoztál az én problémámmal.Az első lépéseknél már elbuktam,próbáltam úgy csinálni

ahogy leirtad.A1-P10 tartományba én is csináltam egy táblázatot.A munkalapot átneveztem Munka1 Munka 2-re.

Próbáltam a Munka2 A1-be bemásolni azt a képletet amit irtál 

=HA(Munka1!A1=1;OSZLOP(Munka1!A1);0)

de  #NÉV? ezt irta ki nem tudom hol rontottam el.

 

Előzmény: Fferenc50 (37938)
Fferenc50 Creative Commons License 2024.03.28 0 0 37938

Szia!

Makró nélkül, egy segédmunkalappal megoldható a kérésed.

Tételezzük fel, hogy a mintád a Munka1 munkalap A1:P10 tartományában van.

A lépések:

1.) Egy új munkalapot adsz hozzá a munkafüzetnek (ennek legyen most a neve Munka2, hogy egyszerű legyen rá hivatkozni).

2.) Munka2 munkalap A1 cellájának képlete: =HA(Munka1!A1=1;OSZLOP(Munka1!A1);0)

3.) Ez a képlet húzható oldalra és lefelé a Munka2 munkalap A1:P10 tartományában. Ezzel elértük, hogy az egyesek helyett az oszlopoknak megfelelő - különböző értékek legyen a Munka1 munkalapon 1-et tartalmazó cellák "tükörképén". Ezeket így már könnyedén meg tudjuk számolni!

4.) Mivel 16 oszlopunk van, ezért a Munka2 munkalap R1 cellájától lefelé kitöltjük 1-16-ig a cellákat.

5.) Válasszuk ki az első három sort "gondolatban". Ebben az esetben a S1 cella képlete:

     =DARABHA($A$1:$P$3;$R1)

     Ezt a képletet húzzuk le az R oszlopban, amíg vannak adatok. Az oszlop megmutatja, hogy az egyes oszlopokból hány egymás alatti előfordulás van a sorokban. Most a példában 0-3 közötti számokat fogunk kapni.

6.) Már "csak" rendezni kell az értékeket a jobb áttekintés érdekében. Ezért az U1 cellától 0-3 értékeket írjuk be az U oszlopba.

7.) A V1 cella képlete =DARABHA($S$1:$S$16;$U1), amit lehúzva a V oszlopban megkapjuk, hány egymás alatti 1-es van a Munka1 munkalapon.

Megjegyzések:

8.) Természetesen nem csak összefüggő 3 (és nem csak 3 ) sort választhatunk ki, akkor az S oszlop képlete a következőképpen változik: =DARABHA($A$1:$P$1;$R1)+DARABHA($A$3:$P$3;$R1)+DARABHA($A$5:$P$5;$R1)

Ahány sort kiválasztasz, annyiszor kell a DARABHA függvény eredményét összeadni. Ez a képlet is húzható lefelé.

9.) Ha több oszlopunk van, akkor természetesen a Munka1 R oszlopát a tényleges oszlopoknak megfelelően kell kitölteni.

10.) Ha több sort választunk és nem hármat, akkor az S oszlopban levő legnagyobb értékig kell kibővíteni az U oszlop számait.

11.) Mivel képletekkel dolgozunk, a Munka1 munkalap bármely változása - 1-esek áthelyezése - látszani fog a Munka2 munkalap V oszlopában.

 

Üdv.

 

Előzmény: brandi12345 (37937)
brandi12345 Creative Commons License 2024.03.28 0 0 37937

Köszönöm szépen sajnos nekem ez kínai de legalább már tudom hogy kivitelezhető.

Előzmény: pimre (37936)
pimre Creative Commons License 2024.03.28 0 0 37936

Javítok:  Ezekhez persze tudni kell, hogy HOL vannak szabad sorok és szabad oszlopok.

Előzmény: pimre (37935)
pimre Creative Commons License 2024.03.27 0 0 37935

Hát egy bonyolult makróval talán megoldható. Te rákattintgatsz a kijelölni kívánt sorok első cellájára. Ekkor a makró feljegyzi valahova (egy segédoszlopba) a kattintásaidhoz tartozó sorok sorszámát, majd  mondjuk az Enter megnyomása jelzi a programnak, hogy vége a kiválogatásnak. És ekkor végigmegy a feljegyzett sorszámkon, és összeszámolja oszloponként az 1-esek számát. És ezt valahova felrja neked. Ezekhez persze tudni kell, hogy vannak szabad sorok és szabad oszlopok.

 

Nem lehet könnyű, én most biztos nem vágnék bele.   

Előzmény: brandi12345 (37931)
pimre Creative Commons License 2024.03.27 0 0 37934

"@ előtt vissza per jel van, csak elhagyja ez a fórum." Hacsak nem írsz be kettőt egymás után. Abból egyet meghagy.

Előzmény: djuice (37928)
djuice Creative Commons License 2024.03.27 0 0 37933

A sorszám volt a kérdés. A dátumot (amit ilyen alakban vesz át nn/hh/éééé), át tudtam leírás alapján a lent mutatott mergefield (alt+F9) módszerrel formázni, azt csak példának hoztam fel, hogy nincs-e olyan módszer a sorszámokra is. De valószínű azzal működik amit írtál, hogy mezőnevek után bármi beírható. Vmit elgépelhettünk a kolleganővel, csak nem vettük észre…

Előzmény: pimre (37929)
Eredő Vektor Creative Commons License 2024.03.27 0 0 37932

Szia!

Szerintem fuss neki még egyszer. :(

"kijelölt sorokban, oszlopok soraiban, egymás alatt lévő számok, és így tovább"

Előzmény: brandi12345 (37931)
brandi12345 Creative Commons License 2024.03.27 0 0 37931

Sziasztok még egy kis segitség kellene.Van egy táblázatom sok oszlop és sok sorbol áll most csak A-P oszlop és 1-10 sort

irtam be.A táblázatban csak 1-es és nulla szám szerepel.Arra kellene nekem egy megoldás,hogy a kijelölt sorokban hányszor fordul elő egymás alatt lévő számok.

Példa: az 1-2-3.sorban hányszor forul elő hogy minden oszlopban 3db 1-es vagy 2db 1-es vagy 1 db 1-es vagy 0 db 1-es van.

Nem csak az 1-2-3 sorban akarom az eredményeket hanem többen is példa 2-4-6 vagy 3-9-10 és igy tovább.

Vajon ez kivitelezhető-e excelben? Reméllem érthetően irtam le.

Még annyit,hogy akár 5-6 sort is tudjak egyszerre megvizsgálni.

Ha valaki tudja erre a megoldást megköszönöm. 

PÉLDA TÁBLA

   A  B C D E F G H I J K L M N O P
1  1 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0
2  1 1 0 0 1 1 0 0 0 1 0 1 0 1 1 0
3  0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 0
4  0 0 0 0 0 1 0 1 0 0 0 1 0 1 1 0
5  1 1 1 0 0 1 0 1 0 0 1 1 1 0 1 1
6  1 1 1 0 0 1 1 0 0 0 1 0 1 0 1 1
7  1 0 1 0 1 0 0 1 1 0 1 1 1 0 1 1
8  1 0 0 0 0 0 1 0 1 0 0 0 1 0 1 1
9  1 1 0 0 0 1 0 0 0 1 1 0 0 1 0 1
10 0 0 1 1 0 1 0 0 1 1 0 0 0 1 0 0

pimre Creative Commons License 2024.03.27 0 0 37930

...körlevelet kezelő én helyesen körlevél kezelőben. Hülye okostelefon.

Előzmény: pimre (37929)
pimre Creative Commons License 2024.03.27 0 0 37929

Tehát jól sejtettem, hogy nem a számok után írt pontokkal volt a gondod, hanem a dátum formázással. Ez egy nagyon kellemetlen jelenség a Word körlevelet kezelő én.

Gondolom, a mergefield nélkül az amerikai dátumformát erőltette, bármi mást akartál. 

Előzmény: djuice (37927)
djuice Creative Commons License 2024.03.26 0 0 37928

@ előtt vissza per jel van, csak elhagyja ez a fórum.

Előzmény: djuice (37927)
djuice Creative Commons License 2024.03.26 0 0 37927

@ “yyyy. MMM. dd.” 

Ezzel működik a mergefield dátumformázás.

A hibákról nem tudok sajnos mit mutatni, mert a titkárnővel az ő gépén szórakoztunk. Talán majd lesz rá alkalom még megnézni, de a napokban most biztos nem.

Előzmény: pimre (37923)
_Nyuszi Creative Commons License 2024.03.26 0 1 37926

Szia!

=ÖSSZEFŰZ(A1;" ";B1)

Vagy egyszerűbben:

=A1&" "&B1

Előzmény: MM10 (37925)
MM10 Creative Commons License 2024.03.26 0 0 37925

Sziasztok. Azt meg tudom valósítani excelben,hogy 2 cella tartalmát 1 cellában összevonjam?

Arra gondolok,pl az A1es cellában ez áll: Tóth , a B1es cellában pedig az hogy: László
összetudom vonni valamilyen módon ,hogy a c1es cellában pedig Tóth Lászlót írjon,szóközzel a 2 cella tartalma között?

Amihez ezt használnám,az nem nevekből áll,és nem is feltétlen egymás mellett lesznek azok a cellák amik tartalmát összeszeretném vonni.

brandi12345 Creative Commons License 2024.03.26 0 0 37924

Köszönöm szépen ez is jó.

Előzmény: Delila10 (37918)
pimre Creative Commons License 2024.03.26 0 0 37923

Hacsak nem dátum formázással próbálkoztál, mert azt baromi rosszul kezeli a körlevél készítő. Megoldható az is, de nem egyszerű.

Előzmény: pimre (37922)
pimre Creative Commons License 2024.03.26 0 0 37922

Ott valami más lehetett a hiba. A  körlevélkezelőben a Word minden szöveget békénhagy, ami nem mezőkód. Meg tudnád mutatni a hibaüzenetet? Esetleg a körlevél hibát okozó részletét? Persze fiktív adatokkal.  

Előzmény: djuice (37921)
djuice Creative Commons License 2024.03.25 0 0 37921

Ezt is próbáltam, de hibát jelzett a körlevél készítő. Lehet hogy vmit elgépeltem?

Előzmény: pimre (37920)
pimre Creative Commons License 2024.03.25 0 1 37920

Semmi mergefield, símán beírod a pontot a mezőkód után a szövegbe. Nálam ez így szokott kinézni mezőkódokkal: «Vezetéknév» «Utónév» «Évfolyam».«Osztály» osztályos tanuló, ami a kész levélben íg jelenik meg: Gipsz Jakab 11.D osztályos tanuló 

Előzmény: djuice (37919)
djuice Creative Commons License 2024.03.25 0 0 37919

Sziasztok!

Kicsit vegyes a kérdésem…

Körlevélhez az adatforrás excel táblájában található egy sorszám oszlop. A mezőit úgy formáztam egyedileg, hogy legyen a számjegyek után pont a magyar nyelv szabályának megfelelően.

Namost a Wordnek körlevél készítésénél, a neten olvasom, hogy csak natív formátumú adatokat ad át az Excel, ami elhagy minden cellaformázást.

Hogyan lehetne a körlevél dokumentumokba belevarázsolni mégis a pontot a számjegyek után? Nézegettem ezeket a mergefield mezőkódokat, de nem sok sikerrel. (Egyedül a dátum formátumra működött, mert oda konkrét példát is találtam…)

Köszönöm!

Delila10 Creative Commons License 2024.03.25 0 0 37918

Más módon:

=INDEX($A$1:$F2;1;HOL.VAN(1;A2:F2;0))

Előzmény: Fferenc50 (37915)
brandi12345 Creative Commons License 2024.03.25 0 0 37917

Köszönöm szépen működik erre gondoltam.

Előzmény: Fferenc50 (37915)
XtraP Creative Commons License 2024.03.25 0 0 37916

Anélkül pedig nemigen fog menni.

Itt van hozzá részletes magyar nyelvű magyarázat, példákkal: https://support.microsoft.com/hu-hu/office/hol-van-f%C3%BCggv%C3%A9ny-e8dffd45-c762-47d6-bf89-533f4a37673a

Előzmény: brandi12345 (37914)
Fferenc50 Creative Commons License 2024.03.25 0 0 37915

Szia!

Ha csak pozitív számok lehetnek a 0 mellett, akkor pl:

=VÁLASZT(HOL.VAN(MAX($A1:$F1);$A1:$F1;0);"A";"B";"C";"D";"E";"F")

lehet a képlet.

Ha negatív számok is előfordulhatnak, akkor kicsit bonyolultabb, tömbképlet használható:

=VÁLASZT(HOL.VAN(MAX((($A1:$F1)<>0)*OSZLOP($A1:$F1));OSZLOP($A1:$F1);0);"A";"B";"C";"D";"E";"F")

A tömbképletet Shift + Ctrl + Enter kombóval kell lezárni, az Excel kapcsos zárójelbe teszi.

Természetesen ha több oszlopod van, akkor annak megfelelően kell módosítani a képletet.

Üdv.

Előzmény: brandi12345 (37912)
brandi12345 Creative Commons License 2024.03.25 0 0 37914

 

 

Sajnos a fügvényt nem tudom annyira nem megy az excel 

Előzmény: XtraP (37913)
XtraP Creative Commons License 2024.03.25 0 0 37913

Szerintem a HOL.VAN (angol neve MATCH) függvény jó lehet neked.

Előzmény: brandi12345 (37912)
brandi12345 Creative Commons License 2024.03.25 0 0 37912

Sziasztok!

Kicsit fenn akadtam egy képlet kellene van egy táblázatom

Leirom:

        A   B  C  D  E  F   Eredmény

1       1  0  0  0   0  0         A

2       0  0  1  0   0  0         C

3       0  0  0  0   0  1         F

4       1  0  0  0   0  0         F

5       0  1  0  0   0  0         B

Az eredményhez Kellene a képlet hogy melyik oszlopban jelenik meg az 1-es

Természetesen nem csak 1-es szám lehet lényeg az ,hogy minden sorban csak 1 szám van ami eltér a 0-tól.

Az a szám melyik oszlopban van az legyen az eredmény alatt képlettel.

Köszönet előre is

brandi12345 Creative Commons License 2024.03.22 0 0 37911

Köszönöm remek

Előzmény: Delila10 (37910)
Delila10 Creative Commons License 2024.03.22 0 0 37910

Szia! A HÉT.SZÁMA függvény való erre.

Előzmény: brandi12345 (37909)
brandi12345 Creative Commons License 2024.03.22 0 0 37909

Sziasztok!

Segítséget szeretnék kérni.

Van sok dátumom azt szeretném egy képlettel hogy az adott évben hányadik héten volt

ha lehetséges

Pl:  2024.04.03          14.hét

      2024.05.20          21.hét

természetesen nem csak az idei év kellene

köszönöm segitségeteket.

djuice Creative Commons License 2024.03.18 0 0 37908

Danke, danke, danke! 🙂👍

Előzmény: pimre (37907)
pimre Creative Commons License 2024.03.18 0 0 37907
Előzmény: djuice (37906)
djuice Creative Commons License 2024.03.17 0 0 37906
Előzmény: pimre (26033)
pimre Creative Commons License 2024.03.05 0 0 37905

Szia, köszönöm a javaslatot.

 

AZ Application.Calculation hívást korábban nem használtam, ezért nem tudtam, mi az optimális parancs. Az xlCalculationAutomatic valahogy mégiscsak működött, mert megoldotta a problémát, de azért át fogom írni az általad javasolt Application.Calculate parancsra. Az eddigiekből következik, hogy az xlCalculationManual paranccsal sem találkoztam még a korábbiakban. Nem volt szükségem képletek aktualizálására. A program, amin most dolgozom az első, ahol előbb hozom létre a képleteket, mielőtt a forrás munkalap megfelelő cellái feltöltődnek a képletek által használandó adatokkal. (És a sorrend nem is változtatható. Én elkészítem a "vázat", aztán két módon kerülnek adatok a forrás munkalapra. Először én olvastatom be programmal egy később megkapott külső fájlból az addigra rendelkezésre álló adatokat, majd mások, más helyen utólag írják be a további adatokat)

 

A beolvasás módja: Az általam használt beolvasó program megnyitja a beolvasandó adatokat tartalmazó külső munkafüzetet, és az ezen lévő egyetlen munkalap sorain végigmenve először beolvas egy azonosítókódot, amit megkeres az én rendszeremben forrásnak nevezett munkalapon (ezt szükségszerűen megtalálja, mert azonosak a szereplők, és a kód köti össze őket), majd a megfelelő oszlopok adatait egyenként bemásolja a helyükre. Ha jól sejtem, ezt nevezed direkt elérésnek.

Miután a program végez az adatok átmásolásával, akkor indítom el a sorrendbe rakást a képletekkel előkészített saját munkafüzetem munkalapjain. Kivéve természetesen a forrásnak nevezett munkalapomat. És itt jelentkezett a probléma, amiért először segítséget kértem.  Ekkor derült ki, hogy bár az adatok a forrás munkalapon a helyükön voltak, a képletek még nem aktualizálódtak, ezért az elsőként rendezendő munkalapon nem történt meg a rendezés. Nem volt mit rendezni, mert az összes képlet adata még 0 volt.

Ekkor alkalmaztam a sorrendező ciklus elé beírva az  Application.Calculation = xlCalculationAutomatic parancsot, ami azonnal érvényesítette a képleteket. Ennek ellenére át fogok térni javaslatodra az Application.Calculate parancs alkalmazására - Amit még egyszer köszönök -, lévén semmilyen tapasztalatom nincs ezzel a témakörrel kapcsolatban.  

 

Előzmény: Fferenc50 (37904)
Fferenc50 Creative Commons License 2024.03.05 0 1 37904

Szia!

Jó hogy megtaláltad a hiba okát. Azonban egy apróságot megjegyeznék:

az Application.Calculation = xlCalculationAutomatic  azt határozza meg, hogy a számítások milyen módon hajtódjanak végre. A parancs kiadása önmagában nem jelenti feltétlenül a számítások azonnali végrehajtását, az a legközelebbi képletváltozáskor lép életbe. 

Azonnali újraszámolást az Application.Calculate utasítás eredményez.

Egyébként kérdés még az, hogy bárhol a programban használtad-e a Application.Calculation = xlCalculationManual utasítást, mert akkor csak kérésre számolódnak újra a képletek. (a futási idő csökkentésére szokásos a használata)

"Először beolvasok adatokat egy külső munkafüzetből" 

A kérdés az, hogy milyen módon olvasod be? Lekérdezéssel vagy direkt eléréssel? Gondolom lekérdezéssel, akkor pedig figyelni kell arra, hogy a lekérdezés (querytable) BackgroundQuery tulajdonsága False legyen. Ebben az esetben a makró nem megy tovább mindaddig, amíg a lekérdezés folyamatban van. Ha ez a tulajdonság True, akkor anélkül fut tovább a makró, hogy a lekérdezés friss adatai "megérkeznének". Makrórögzítő nem feltétlenül foglalkozik a beállításával.

További jó munkát!

Üdv.

Előzmény: pimre (37902)
pimre Creative Commons License 2024.03.04 0 0 37903

Azt így utólag nem tudom, mi frissítette a képleteket az első munkalap rendezése után. talán a 37897-es hozzászólásomban leírt sort parancs végrehajtása. Mindenesetre onnan kezdve már rendben volt a további munkalapok rendezése.

Előzmény: pimre (37902)
pimre Creative Commons License 2024.03.04 0 0 37902

Köszönöm, de időközben megtaláltam a hiba okát. Nem írtam meg, és magam sem gondoltam, hogy egy másik modulban lévő programmal függ össze a hiba. Uganis az érintett munkafüzetben két egymásra épülő feladatot végzek el. Először beolvasok adatokat egy külső munkafüzetből, és azokat bemásolom egy "forrás" munkalapra. Ez nem vesz részt a rendezésben csak a használt 7 munkalapban lévő képletek innen veszik át az adataik egy részét.

 

Gynús lett, hogy időnként jó volt a működés, most már tudom, hogy akkor, amikor az adatbeolvasás után mentettem a munkafüzetet, majd később futtattam a rendező programot. 

Általában nem így tettem, hanem közvetlenül egymás után indítottam őket. És emiatt a sorban első munkalap feldolgozásakor a képletek még nem érvényesültek.  

 

Most a rendező program elejére beszúrtam egy a képlet frissítő parancsot, ami megoldotta a problémát:  Application.Calculation = xlCalculationAutomatic. 

Sajnos ráment a napom, hogy erre nem gondoltam.

Előzmény: Fferenc50 (37901)
Fferenc50 Creative Commons License 2024.03.04 0 0 37901

Szia!

Msgbox kiíratásnak az értelme az, hogy amíg leokézod, addig áll a program, telik az idő.

Értem én, hogy másodszorra már megcsinálja azt is, amelyiket előszörre nem... persze, hogy zavar (engem is így látatlanban), mert nem ez a normális működés.

Még egy (utolsó) gondolat(ötlet?): ha nem ciklusban csinálod, hanem csak egy munkalapot, azt megcsinálja vagy nem?

És lépésenkénti futtatásnál?

Végülis még felteheted kérdésként a MS tudástárba is a jelenséget. Valami oka biztosan van....

Üdv.

Előzmény: pimre (37900)
pimre Creative Commons License 2024.03.04 0 0 37900

Szia, sokmindent próbáltam, a ludak megdöglöttek:-)

 

- Fordított sorrend: Akkor is az elsőként sorra kerülő a félbehagyott

- Eltelt idők munkalaponként 0-1 mp:

 

1: 0:00:00
2: 0:00:01
3: 0:00:00
4: 0:00:00
5: 0:00:00
6: 0:00:01
7: 0:00:00

 

- msgbox-szal kiíratni, hogy épp melyik lapot akarná rendezni: Ez felesleges. Pontosan tudom.  Ld. eltelt időkben az előtte lévő szám a munkalap nevének a része.

- Stop: Próbáltam, maradt a hiba

- Aktiválás: Próbáltam, maradt a hiba

megnézni,hogy nincs-e valami szemét még a usedrange-ben: Ezt nem tudtam értelmezni. Mi lenne a szemét? Különösen annak fényében, hogy például a Fordított sorrendnél ugyanez a hiba nem az első, hanem a 7. munkalapon jelentkezik.

 

Azért köszönöm.

Egyelőre marad az első munkalapnál a rendezés ismételt elindítása. 

 

Előzmény: Fferenc50 (37899)
Fferenc50 Creative Commons License 2024.03.04 0 0 37899

Szia!

Ötletem még lenne (mint az egyszeri rabbinak... :) )

Mi történik, ha fordított sorrendben veszed a munkalapokat - az utolsótól visszafelé.

Ha akkor is a sorrendben elsőnek vett (azaz a munkafüzetben az utolsó) munkalap nyűgösködik, akkor "időhiányban" szenvedhet. 

Ilyenkor jönnek az "egyéb hibakereső" gondolatok:

- debug.printtel kiíratni az időket és a lapneveket

- msgbox-szal kiíratni, hogy épp melyik lapot akarná rendezni

- stop-pal megállítani a rendezés előtt és utána folytatni

- megnézni,hogy nincs-e valami szemét még a usedrange-ben.

- esetleg aktíválni a sort előtt a munkalapot (tudom, tudom, elvileg nem kellene, de ki tudja mire gondolt Redmond... :) )

stb...stb.

Persze tetszőleges sorrendben.

 

Előzmény: pimre (37898)
pimre Creative Commons License 2024.03.04 0 0 37898

Végül megoldottam, a valódi problémát megkerülve. A sorban első munkalap feldolgozását nemes egyszerűséggel megismételtem:

 

For aktlap = 2 To lapszam ' Az első a teljes lista, de azzal most nem foglalkozunk

    Call sorrendez(aktlapws, utolsosor, utolsooszlop, osszesoszlop, hozottoszlop, kozposszegoszlop, szobelioszlop, nevoszlop)

    If aktlap = 2 Then ' Megismételjük, mert elsőre nem végezte el a rendezést

        Call sorrendez(aktlapws, utolsosor, utolsooszlop, osszesoszlop, hozottoszlop, kozposszegoszlop, szobelioszlop, nevoszlop)

    End If

Next aktlap

 

Így másodszorra már rendezte a sorban első munkalapot is.

 

De azért nem örülök ennek a kerülő utas megoldásnak. Ha van valakinek szebályos megoldásra javaslata, azért hálás lennék.

Előzmény: pimre (37897)
pimre Creative Commons License 2024.03.04 0 0 37897

Szia, köszönöm az ötletet. A munkalapok sorrendjének felcserélése után nem ugyanazon a munkalapon jelentkezett a gond, hanem amelyik elsőként került sorra. A korábbi első itt már rendben lett.

 

A rendező program így indul:

 

Sub Tagozat_sorrendezo()

Dim lapszam As Long ' stb.

lapszam = ThisWorkbook.Sheets.Count

 

For aktlap = 2 To lapszam ' Az első a teljes lista, de azzal most nem foglalkozunk, ezért a másodiktól kezdjük a sorrendezést. Tehát a mindenkori második kerül elsőként sorra

    Set aktlapws = ThisWorkbook.Worksheets(aktlap)

    utolsosor = aktlapws.Range("A" & Rows.Count).End(xlUp).Row

    utolsooszlop = aktlapws.Cells(2, Columns.Count).End(xlToLeft).Column

 

    osszesoszlop = oszlopkeres(aktlapws, "összes", utolsooszlop, aktlapws.Name, rendben) "megkeressük az "összes" nevű oszlopot

 

    ' aztán a többi oszlopnevet is megkeresi (mert minden munkalapon más helytől kezdődnek ezek az oszlopok.

    ' Az egymáshoz viszonyított helyzetük ugyanaz, bár azt hiszem, hogy ez úgyis érdektelen a probléma szempontjából

 

    ' végül az egyes oszlopok szerint sorrenddez, ahogy a 37893-as hozzászólásban bemutattam:

    Call sorrendez(aktlapws, utolsosor, utolsooszlop, osszesoszlop, hozottoszlop, kozposszegoszlop, szobelioszlop, nevoszlop)

Next aktlap

ThisWorkbook.Save

MsgBox "A tagozati adatok sorrendezése befejeződött!"

End Sub

 

Tehát ezek alapján semmi okát nem látom az első munkalap többitőleltérő viselkedésének.

 

Kérdezted még, hogy "Milyen tartományra hivatkozik az aktlapws változód?"

 

Az aktlapws az aktuálisan éppen sorra került munkalap.  A sorrendezésnél az A2-től kezdve a teljes tartományt jelöli ki. Azért A2, mert két soros fejléc van, de ebből az első sor érdektelen, csak a 2. sor az érdekes 

 

With aktlapws.Sort

     .SetRange Range("A2:" & oszlopnev(utolsooszlop) & utolsosor)

     .Header = xlYes

     .MatchCase = False

     .Orientation = xlTopToBottom

     .SortMethod = xlPinYin

     .Apply

 End With

 

 

Előzmény: Fferenc50 (37896)
Fferenc50 Creative Commons License 2024.03.04 0 0 37896

Szia!

Esetleg próbáld meg a munkalapok sorrendjét felcserélni. Ha akkor is ugyanazon a munkalapon jelentkezik a gond, akkor azt érdemes alaposabban megvizsgálni.

Milyen tartományra hivatkozik az aktlapws változód?

Üdv.

Előzmény: pimre (37894)
XtraP Creative Commons License 2024.03.04 0 0 37895

Nem biztos, hogy segít neked, de én akkor jártam hasonlóan, amikor egy "újrahasznosított" (és .Clear-rel törölt!) munkalapon bennragadt egy szűrő. Nálam akkor egy sortörlő VBA-utasítás hagyott ki a törlésből szemre véletlenszerű sorokat, és szintén nem mindig ...

Előzmény: pimre (37894)
pimre Creative Commons License 2024.03.04 0 0 37894

És ezután jött az újabb rejtély. Miután lefutott a program úgy, hogy a sorban elsőként érintett munkalapon a rendezés nem történt meg (és mindig ez, nem véletlenszerűen egyik, vagy másik), akkor ha újra elindítom a rendező makrót, akkor ezt is megcsinálja.

 

Lehetséges, hogy valami időzítési problma miatt nem működik rendesen az .Apply parancs? Meglátom, holnap megpróbálkozom egy DoEvent, vagy hasonló beírásával. De azért kellemetlen, ha van olyan programrészlet, amelyik hol így, hol úgy működik. 

 

Előzmény: pimre (37893)
pimre Creative Commons License 2024.03.03 0 0 37893

Most viszont van egy teljesen megmagyarázhatatlan jelenség a rendezéssel kapcsolatban. 7 munkalapot kell rendeznem lényegében azonos adatszerkezettel. A rendezéshez 5 mezőt használok, ebből 4 csökkenő sorrendben, az utolsó növekvőben rendez. Mind a 7 munkalapon ilyen adatok vannak a rendezendő oszlopokban. Vagy szám, vagy Nincs adat szöveg az egyikban, és #ÉRTÉK! a másikban. A rendezés célja többek közt éppen az, hogy ezek a hibás sorok a rendezéskor az elejére kerüljenek. 

 

 

A 7 munkalap közül 6-ban teljesen rendben rendezi a sorokat a program, az egyikben következetesen nem.

 

A rendező részlet, amit egyiknél nem végez el, a következő. A fejlécsor a második, így az első rendezendő sor a 3.  (bocs a hosszú változónevekért. Szeretem a beszélő elnevezéseket):

  

aktlapws.Sort.SortFields.Clear 

aktlapws.Sort.SortFields.Add Key:=aktlapws.Range(osszesoszlop & "3:" & osszesoszlop & utolsosor), _

                            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal 

aktlapws.Sort.SortFields.Add Key:=Range(hozottoszlop & "3:" & hozottoszlop & utolsosor), _

                            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal  

aktlapws.Sort.SortFields.Add Key:=Range(kozposszegoszlop & "3:" & kozposszegoszlop & utolsosor), _

                            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal  

aktlapws.Sort.SortFields.Add Key:=Range(szobelioszlop & "3:" & szobelioszlop & utolsosor), _

                            SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal 

aktlapws.Sort.SortFields.Add Key:=Range(nevoszlop & "3:" & nevoszlop & utolsosor), _

                            SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal   

With aktlapws.Sort

    .SetRange Range("A2:" & oszlopnev(utolsooszlop) & utolsosor)

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

End With

És az .apply valami rejtélyes módon ezen az eg munkalapon nem hajtódik végre.

 

Elég lehet ennyi, hogy tudjak kapni egy tippet, merre keressem a hiba okát?

pimre Creative Commons License 2024.03.03 0 0 37892

Kösz, most én is rákerestem ugyanott, és az AI nekem a szintais leírását követően ezt adja (előzőleg Wordbe másolvas, majd onnan ide): 

 

The SortFields.Add2 method in Excel allows you to create a new sort field and return a SortFields object. This method can optionally sort data types with the specified SubField. Let’s break down the parameters:

 

...

 

Here’s an example of how you might use it to sort a table named Table1 on Sheet1 by Column1 in ascending order based on the SubField Population from Geography data types:

 

ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Clear

ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Add2 _

    Key:=Range("Table1[[#All],[Column1]]"), _

    SortOn:=xlSortOnValues, _

    Order:=xlAscending, _

    DataOption:=xlSortNormal, _

    SubField:="Population"

 

With ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort

    .Header = xlYes

    .MatchCase = False

    .Orientation = xlTopToBottom

    .SortMethod = xlPinYin

    .Apply

End With

 

De sajnos ettől sem lettem okosabb.

Valódi példa itt sincs, és  ebből sem derül ki, hogy mitől Sub a SubField.

Előzmény: Eredő Vektor (37891)
Eredő Vektor Creative Commons License 2024.03.03 0 0 37891

Pl. Copilot ezt mondja rá:

 

Az Excel VBA SortFields.Add2 metódusa lehetővé teszi új rendezési mező létrehozását és egy SortFields objektum visszaadását. Ez a módszer különösen akkor hasznos, ha az adattípusokat egy almező-definíció alapján szeretné rendezni. Bontsuk le a részleteket:

  • Szintaxis:

    expression.Add2(Key, SortOn, Order, CustomOrder, DataOption, SubField)
    • expressionSortFields objektumot képviselő változó.
    • Key: Megadja a rendezés kulcsértékét.
    • SortOn (Nem kötelező): A rendezés alapjául szolgáló mező.
    • Order (Nem kötelező): Megadja a rendezési sorrendet.
    • CustomOrder (Nem kötelező): Megadja, hogy kell-e egyéni rendezési sorrendet használni.
    • DataOption (Nem kötelező): Megadja az adatbeállítást.
    • SubField (Nem kötelező): Megadja azt a mezőt, amely alapján rendezni kell egy adattípushoz (pl. Népesség földrajzi helyhez vagy Mennyiség készletekhez).
  • Megjegyzések:

    • Ez az API támogatja az almezők olyan adattípusok szerinti rendezését, mint a földrajz vagy a részvények.
    • A képletekkel ellentétben az almezők nem igényelnek szögletes zárójeleket a szóközök használatához.
  • Példa: Tegyük fel, hogy van egy Tábla1 nevű táblája a Munka1 lapon, és növekvő sorrendbe szeretné rendezni az Oszlop1 szerint a Földrajzi adatok almezőből származó populációja alapján. Ezt a következőképpen érheti el:

    ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort.SortFields.Add2 _ Key:=Range("Table1[[#All],[Column1]]"), _ SortOn:=xlSortOnValues, _ Order:=xlAscending, _ DataOption:=xlSortNormal, _ SubField:="Population" With ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table1").Sort .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With

Ne feledje, hogy ez a módszer rugalmasságot biztosít az adattípusokat és almezőket érintő összetett rendezési forgatókönyvek kezelésekor. 📊🔍

Előzmény: pimre (37889)
Eredő Vektor Creative Commons License 2024.03.03 0 0 37890

ahogy látom, elkezdik excel szinten is alkalmazni az adattípus fogalmát.

Szerintem azt a célt szolgálja sorbarendezésnél, hogy az adattípust figyelembe veszi mint második rendezési szint pl. egy oszlopon belül.

Előzmény: pimre (37889)
pimre Creative Commons License 2024.03.03 0 0 37889

Egy excel tábla rendezését vizsgáltam makrórögzítéssel, és a SortFields.Add2 formát adta ki. Próbáltam utánanézni, hogy mi ez, és azt találtam, hogy az Add2 használ egy új paramétert, aminek a neve "SubField" , amiről ezt írja a Microsoft: "Specifies the field to sort on for a data type (such as Population for Geography or Volume for Stocks)".

 

Namármost én ebből egy mukkot sem értek, ezért elkezdtem utánanézni, de nem találtam érthető leírást. Annyit viszont láttam, hogy néhányan nehezményezték, hogy egyes korábbi verziókkal ez az Add2 nem kompatibilis. Ezért a saját programomban helyette a 2 nélküli  Add-ot használtam, és rendben műküdik.

 

De érdekelne a Subfield részletesebb magyarázata. Tudtok valami forrást, ahol utána lehet nézni? Nekem nem jött össze.

pimre Creative Commons License 2024.02.29 0 0 37888

Ja és persze, ha kész, akkor a képleteket célszerű lehet értékké alakítani, hogy ha bármi változik a sorrendben, akkor is megmaradjanak az azonosítók.

Előzmény: pimre (37887)
pimre Creative Commons License 2024.02.29 0 1 37887

Egyszerű: Feltéve, hogy a B oszlop rendezett, ahogy a példád mutatja.

Ekkor az A oszlop 2. sorába beírsz egy 1-est.

Utána az A oszlop 3. sorába ezt írod: =HA(B3=B2;A2;A2+1). Majd ezt a képletet végighúzod lefelé a teljes listában, és ott lesznek az azonosítóid mindegyik mellett. Úgy, ahogy a mintádban látod.

Előzmény: Asatru (37883)
Eredő Vektor Creative Commons License 2024.02.29 0 0 37886

és a sorrend tökmindegy

Előzmény: Eredő Vektor (37885)
Eredő Vektor Creative Commons License 2024.02.29 0 1 37885

Nagyjából ennyiből ez megvan:

=HOL.VAN(B1;$B$1:$B$3;0)

Nekem A1:B3-ban vannak az adatok fejléc nélkül. 

A-ban a "képlet", B-ben az "Azonos elemek"

Előzmény: Asatru (37883)
Zs:) Creative Commons License 2024.02.29 0 0 37884

Az azonos elemek mindig egymás alatt vannak, vagy össze vissza előfordulhatnak?

Előzmény: Asatru (37883)
Asatru Creative Commons License 2024.02.28 0 0 37883

Sziasztok!

Szeretnék segítséget kérni egy feladathoz:
Van egy több ezer soros táblázatom, tartalmaz egy oszlopot amiben vannak ismétlések(ezek lehetnek számok és betűk is) [Azonos_elemek], azt szeretném elérni, hogy egy másik oszlopban az azonos elemek kapjanak egy egyedi számot. [Egyedi_azonosító].

Mellékelek egy példa képet.

Köszönöm szépen ha tud valaki segíteni!

Fferenc50 Creative Commons License 2024.02.27 0 0 37882

Szia!

Vaqyis a képletben meg kell adnod a negyedik paramétert is, hamis vaagy 0 értéknek.

Üdv.

Előzmény: MM10 (37879)
XtraP Creative Commons License 2024.02.27 0 1 37881
Előzmény: XtraP (37880)
XtraP Creative Commons License 2024.02.27 0 1 37880

A VKERES-nél elmondja, amit a FKERES-nél nem; összeollóztam :(

  • Ha a tartományban_keres argumentum értéke IGAZ, akkor a tábla első sorában szereplő értékeknek növekvő sorrendben kell állniuk: ...-2, -1, 0, 1, 2,... , A-Z, HAMIS, IGAZ; különben előfordulhat, hogy a VKERES függvény nem a helyes értéket adja vissza. Ha a tartományban_keres argumentum értéke HAMIS, akkor a táblának nem kell rendezettnek lennie.

  • Opcionálisan megadhatja az IGAZ értéket, ha a visszatérési érték kereséséhez közelítő egyezést szeretne előírni, vagy a HAMIS értéket, ha pontos egyezést. Ha nem ad meg semmit, az alapértelmezett érték az IGAZ, vagyis a közelítő egyezés.
Előzmény: MM10 (37879)
MM10 Creative Commons License 2024.02.27 0 0 37879

Elnézést a sok egymás utáni posztért,de közben megtaláltam a megfelelő képletet amit keresek,ami majdnem tökéletesen műkődik,de van benne egy hiba valamiért. A Körténél azt az adatot írja ami a "Citrom"-hoz van megadva. ezt miért csinálhatja?

MM10 Creative Commons License 2024.02.27 0 0 37878

illetve,teljesen mindegy mit írok az "alma" helyére a képletben,semmit nem befolyásol 

Előzmény: MM10 (37877)
MM10 Creative Commons License 2024.02.27 0 0 37877

 

igen,mindenképp előrébb vagyok vele,viszont én a képlet után az eladott mennyiséget szeretném kapni. így ezzel a képlettel a TRUE előtt megadott értékű sorban lévő adatot kapom meg,mivel itt az 5 van megadva a képletben,ezért a kijelölt terület első oszlopában az 5.sorban lévő adatot kapom meg. Én nekem pedig arra lenne szükségem,hogy amelyik sorban megtalálta az "alma" kifejezést,abban a sorban az ötödik oszlopban lévő adatot kapjam meg. Ezt megtudom valahogy oldani?

XtraP Creative Commons License 2024.02.27 0 0 37876
Előzmény: MM10 (37874)
MM10 Creative Commons License 2024.02.27 0 0 37875

 

A kép lemaradt:

Előzmény: MM10 (37874)
MM10 Creative Commons License 2024.02.27 0 0 37874

Sziasztok. Olyan kérdésem lenne,hogy az megoldható e excelben,hogy a tábla a megfelelő adatokat beírja magának egy bemásolt adathalmazból.

 

Csatolok 2 fájlt egy egyszerű példával hogy egész pontosan mire gondolok.

 

 

Egy nagyon egyszerű dologról lenne szó,de az F-J sor celláihoz az adatokat készen kapom meg,és a teljesen véletlenszerű sorrendben vannak az adatok. pl a képen Alma,Körte,Barack stb.. sorrend van,a következőben már egy teljesen másik sorrend lép fel. 

Tehát amiben a segítséget kérem,hogy képes legyen a tábla magától kikeresni hogy melyik sorban van az az adat amit keresek pl a C5ös cellához,ami most a J5ös cellában van,de következő alkalommal lehet a J8asban lesz,utána a J5ösben.

 

Elég bután sikerült elmagyaráznom,de lényegében valami kereső függvényre lenne szükségem,ami kikeresi melyik sorban van pl az Alma,és az adatokat onnan kitudja ezután keresni.

pimre Creative Commons License 2024.02.27 0 0 37873

Kicsit megkésve mégis találtam megoldást arra a problémámra,  hogy "létezik-e, hogy nincs visszaállítási lehetőség a VBA ablakok alapértelmezett elrendezésére?". Közzéteszem, hátha másnak is szüksége lehet rá.

 

Tegnap feltetemezt a kérdést az az Ozgrid oldalra (https://forum.ozgrid.com/forum/index.php?thread/1233674-reset-excel-vba-screen-to-the-initial-state/), és reggelre kaptam választ: "You should be able to reset them by deleting the Dock entry in the registry at HKEY_CURRENT_USERSoftwareMicrosoftVBA7.1Common"

 

Töröltem a Dock bejegyzést, és helyreállt a kívánt eredeti állapot.

Előzmény: Fferenc50 (37833)
_Nyuszi Creative Commons License 2024.02.24 0 0 37872

Tudom, hogy nem mai a kérdés, de esetleg még egy tipp a korábbi megoldás mellé:

Én fel szoktam venni egy segédoszlopot, ami valahogy így néz ki:

=HA(VAGY(A1="";B1="";C1="");IGAZ;"")

Ezt mondjuk az F oszlopba beírva "IGAZ" értéket kapsz, ha valamelyik cella a háromból (A1, B1, C1) üres, egyébként üres marad a cella. Erre autoszűrővel szűrve könnyen megtalálom, hol vannak üres adatok.

Persze ez csak akkor működhet, ha van lehetőség plusz oszlop felvételére.

Előzmény: djuice (37863)
VízÜgyes Creative Commons License 2024.02.21 0 0 37871

Megtaláltam a megoldásokat, leírom hátha szükséges lesz még rá valakinek.

Szóval a táblázat oszlopokba ha megváltoztatom a képletet, akkor amikor beírom a cella mellett megjelenik egy kis ikon, ahol kiválasztható, hogy az oszlopképlet legyen az új.

A formázási problémát pedig az egész oszlop (nem csak a táblázatoszlop) formázásának megváltoztatásával tudtam megváltoztatni.

Előzmény: VízÜgyes (37839)
djuice Creative Commons License 2024.02.21 0 0 37870

Nyomtatóbeállításra kérdezem. Tudom hogy megjegyzi az előző állapotot, de egy tucat munkalapfülnél ezt egyenként kellett végigkattintani. Ráadásul a kolleginák kinyomtak így száz oldalakat pocsékba, mert ők se, én se gondoltam, hogy a nyomtatóbeállítások még ráadásul munkalaponként is eltérőek lehetnek! :(

Előzmény: Fferenc50 (37869)
Fferenc50 Creative Commons License 2024.02.21 0 0 37869

Szia!
Mire gondolsz?

Ha arra, hogy minden munkalapot 1 oldal széles 1 oldal magasan nyomtasson, akkor 

1. Kijelölöd az összes munkalap fület (shift egér ha egymás utáni, ctrl egér ha van közte más is)

2. A Lapelrendezés menű  Méret beállítás csoportjában beállíthatod  a szélességet - magasságot, méretet

Ez így minden egyes munkalapra érvényes lesz.

Ha viszont a nyomtatón szeretnél egyoldalas nyomtatást, azt a nyomtató beállításoknál kell előzetesen kiválasztani és addig a beállítás marad, amíg meg nem változtatod újra.

Üdv.

 

Előzmény: djuice (37866)
arkilaszlo Creative Commons License 2024.02.21 0 0 37868
Előzmény: djuice (37866)
Garashan Creative Commons License 2024.02.21 0 0 37867

Tölts fel valahova egy anonimizált verziót. Ha látjuk, hogy eddig mit csináltál és mit is szeretnél csinálni, akkor könnyebben segítünk.

Előzmény: KingSide (37865)
djuice Creative Commons License 2024.02.21 0 0 37866

A munkalapok nyomtatására nincs olyan lehetőség, hogy egyszerre mindre legyen érvényes az egy oldalas nyomtatás?

KingSide Creative Commons License 2024.02.20 0 0 37865

Sziasztok,
Legyetek szívesek segítsetek.
Terem órarendet kellene készítenem, amit aztán kinyomtatunk és a terembe kiragasztunk.
A munkalapon megvan a teremszám, kezdési dátum és időpont, tantárgynév, oktató. A dátumból számítottam hét napját.
Beleteszem egy kereszttáblába (nem túl elegáns, de majd szétszedem termenként) sorok a kezdés időpontja, az oszlopok a hét napjai.
A tárgynév+oktató összefűzését belehúzom az értékhez, ahol mindenképpen számított cellák vannak, így darabszámot jelenít meg.
Hogyan tudnám az értéknél a cellák szöveges értékét megjeleníteni? Szóval nekem oda a tárgynév és oktató kellene.
Köszönöm szépen!

Fferenc50 Creative Commons License 2024.02.19 0 1 37864

Szia!

Nézd meg légy szíves az Adatok - Speciális (leánykori nevén irányított) szűrőhoz tartozó súgót. Ebben lehet vagy kapcsolatot is megadni szűrőfeltételként.

Üdv.

Előzmény: djuice (37863)
djuice Creative Commons License 2024.02.19 0 0 37863

Sziasztok!

Ezt hogyan csinálnátok?

 

Vannak egy listában nevek s hozzá taj-szám, személyigazolvány-szám és adószám.

Bizonyos embereknek valami hiányzik, van akinek több minden is.

Próbáltam szűrőket rakni az oszlopokra, de ugye ezzel az a baj, hogy akinek nincs taj-száma, de van adószáma és én a hiányzó adószámokra szűrők, akkor nem lesz benne mindenki olyan, akinek bármi más adata is hiányzik.

Ezeket hogy lehetne legegyszerűbben egységben kezelni?

_Nyuszi Creative Commons License 2024.02.19 0 0 37862

Szia!

 

"A mutatott utasítás (...)"

Tudom, mert ha működne, nem kérdeznélek titeket. :)

 

Ez lesz a kulcsmondat szerintem: "Direktben cella tartalmat nem lehet változóként használni."

 

A dictionary-s részt nézem, köszönöm!

 

Előzmény: Fferenc50 (37860)
Fferenc50 Creative Commons License 2024.02.19 0 0 37861

További lehetőség:

Létrehozol egy Dictionary változót, amelyben kulcsok szerint lehet elhelyezni és módosítani a kulcsok tartalmát:

Dictionary object | Microsoft Learn

Először fel kell töltened a Dictionaryt  kulcs - érték párosokkal.

A kulcs lehet a változó neve, ehhez rendelheted az aktuális értéket.

A változó nevét - a kulcsot - így már kiolvashatod a cellákból, illetve a kulcs alapján számolásokat is tudsz végezni vele.

Üdv.

Előzmény: Fferenc50 (37860)
Fferenc50 Creative Commons License 2024.02.19 0 0 37860

Szia!

Nem egészen értem. Mit jelent ez:

"azaz a cella tartalma és a változó nevei megegyeznek"

Egy cella tartalma nem lehet név és érték is egyúttal.


A mutatott utasítás 

 "CBool(Munka3.Cells(i, 5).Value) = True"

pedig nem ad semminek értéket.

A CBool utasítás átalakítja a paraméter értékét logikai értékké, a következők szerint:

Szöveg esetén hibajelzés (Type mismatch

0 esetén FALSE

Bármilyen más szám (negatív is!) esetén TRUE

Ha változónak szeretnél értéket adni, akkor annak a formája változónév = érték. Direktben cella tartalmat nem lehet változóként használni.

Egy lehetséges megoldás:

If cella.value (vagy text)="Kalap" then Kalap=valami (esetedben TRUE/False).

Ha mégsem jól értettem a kérdést, légy szíves tegyél fel egy példafájlt elérhetően.

Üdv.

Előzmény: _Nyuszi (37858)
pimre Creative Commons License 2024.02.19 0 1 37859

Kösz, de nem. Időközben megtaláltam a megoldást itt: https://www.extendoffice.com/documents/excel/5117-excel-active-cell-top-screen.html

A képlet, ami nem csak használni engedi a cellát, hanem meg is mutatja a képernyőn az a következő: Application.Goto ActiveCell, Scroll:=True

 

Előzmény: XtraP (37857)
_Nyuszi Creative Commons License 2024.02.19 0 0 37858

Köszi!

Azt hiszem, rosszul fogalmaztam meg.

Valami ilyesmit szeretnék:

for i = 5 to 82

    CBool(Munka3.Cells(i, 5).Value) = True

    (...)

Next i

 

Tehát a változó neveit felsorolom egymás alatt egy-egy cellában, és az éppen aktuális változó értékét szeretném igazra állítani (azaz a cella tartalma és a változó nevei megegyeznek). A tömb sajnos nem jó, mert később ezt logikai egyenletekben szeretném felhasználni és a változó neve sokkal-sokkal beszédesebb, mint a tömb egy-egy elemére hivatkozás.

Előzmény: Fferenc50 (37855)
XtraP Creative Commons License 2024.02.19 0 0 37857

Csak két tipp:

a) a munkalap "Set ws = ..." formában lett megadva?
b) nem lehet, hogy maga a munkalap nem az aktív? Azaz elsőként esetleg egy ws.Select ..?

Előzmény: pimre (37856)
pimre Creative Commons License 2024.02.19 0 0 37856

Egy egészen alapvetőnek látszó feladatot nem tudk megoldani. Munkalapokat másolok át egy kész munkafüzetből. Az egyik munkalapon háromszázvalahanyadik sor látszik.  Ugyanakkor a lekérdezésekkel kiderül, hogy valójában az A1 az aktív. Viszont ez nem látszik

A későbbi panel rögzítéshez szükségem lenne, hogy az első sort lássam, mert az N3 cellán állva szeretném a rögzítést. 

Kiválasztani, írni bele, olvasni, minden további nélkül tudnék, de képtelen vagyok elérni, hogy ráálljon a vezérlés.

A ws.Range("A1").Select parancs ellen nem tiltakozik, csak éppen nem áll rá. 

 

Kézzel persze meg tudom oldani, de programból kellene.  Már órák óta keresgélek, de nem találok megoldást.

Fferenc50 Creative Commons License 2024.02.18 0 0 37855

Szia!

Nem kell túlkomplikálni:

(Amennyiben szöveges érték van a cellában, akkor célszerűbb a Text tulajdonságot használni a Value helyett.)

 

KeJ_1=Munka3.Cells(23, 5).Text = "KeJ_1" 

Az összehasonlítás eredménye True/False lesz.

 

Üdv.

Előzmény: _Nyuszi (37854)
_Nyuszi Creative Commons License 2024.02.18 0 0 37854

Sziasztok!

Én is kérdeznék egyet: hogyan tudok a cella tartalmából a tartalomnak megfelelő változónak értéket adni?

Egy példa:

If Munka3.Cells(23, 5).Value = "KeJ_1" Then KeJ_1 = True

Ilyenből lenne kb. 90-100, a cella koordinátáját léptetném, az majd változó lesz.

A változók már léteznek, valami olyasmire gondoltam, mint a CBool(Munka3.Cells(23, 5).Value) = True, de ez _Nyúlván nem működőképes.

 

Tudtok valami ötletet erre?

XtraP Creative Commons License 2024.02.18 0 0 37853

Mi lehet az oka annak, hogy a VBA program alábbi utasítása néha nem törli a teljes tartományt?

 

MthSheet.Rows("1:13").Delete

 

Fizikailag ugyanarra a munkalapra ráeresztve kb 5-ből egyszer nem 13, csak 12 sort töröl, és hogy cifrázzam a dolgot, a "bennfelejtett" sor mindig a hajdani tizedik.  

 

Az alábbi verzió pontosan ugyanígy önállóskodik:

 

MthSheet.Rows("1:13").Select

Selection.Delete 

 

A 10-es sorban természetesen nem találok semmi extrát (az a sor amúgy üres is eredetileg, csak a teszteléshez felöltöttem mind a 13 sor első celláját, hogy lássam, melyik ragad bent) - arról nem beszélve, hogy "többnyire" azzal a sorral is megbirkózik.

 

Mi lehet a dolog mögött?

 

pimre Creative Commons License 2024.02.18 0 0 37852

Egész megdöbbentő és érthetetlen jelenséget tapasztaltam programírás közben:

 

Oszlopszámokból képzek oszlopneveket a következő függvény segítésével (az elvet Jimmytől kaptam évekkel ezelőtt):

 

Function oszlopnev(oszlszam As Long) As String 
Dim cellastring As String
cellastring = Cells(1, oszlszam).Address(rowabsolute:=True, columnabsolute:=False)
oszlopnev = Left(cellastring, InStr(cellastring, "$") - 1)
End Function

 

Évek óta használom, tökéletesen működik. Igazából most is, csak meglepetésemre az eredményt a VBA képernyőn nem jól jeleníti meg.

A cél a 41 és 41, valamint a 36 és 37 oszlopszámok összegét per jellel elválasztva betenni az immediate ablakban látható képletbe egy későbbi számítás alapjául. 

 

Meglepetésemre a "szoveg" változó fölé állva csak a képlet első fele jelenik meg, az immediate ablakban látszik a teljes képlet. Mielőtt az utóbbit lekérdeztem, hosszasan keresgéltem az okát, hogy hol hibáztam el az összefűzést, mire kiderült, hogy a képlet a szándékom szerint sikerült, csak nem látszik.

Érdekes módon az értékadás után a munkalap megfelelő cellájában szintén hibásan jelenik meg a képlet. Később a munkalapon már a jó adat látszik.

Ehhez hasonló összefűzögetést elég sokat csinálok ugyanebben a programban, és mind rendben van, ennek az egynek a kivételével.

 

Még annyit, hogy karakterenként megnéztem, nincs-e benne valami rejtett karakter, de semmi. 

 

Találkoztatok már hasonlóval?

 

 

Delila10 Creative Commons License 2024.02.16 0 0 37851

Teljesen jó az elképzelésed, én csak a felesleges részeket vettem ki a makródból, a felépítésen nem változtattam.

Előzmény: maciti (37850)
maciti Creative Commons License 2024.02.16 0 0 37850

Szuper! Köszi!

Igazán profi munka...

Én meg csak úgy "parasztosan" írtam...

Köszi még egyszer!

Előzmény: Delila10 (37849)
Delila10 Creative Commons License 2024.02.15 0 0 37849

Szia!

 

Klassz, de megpróbáltam kicsit egyszerűsíteni a makrókat a Module2-ben.

https://data.hu/get/14109334/Kimutatas_proba_1.xlsm

Előzmény: maciti (37848)
maciti Creative Commons License 2024.02.14 0 0 37848

Sziasztok!

Egy sorba rendezéssel, és formázással megoldódott, ha érdekel valakit…

link:

https://data.hu/get/14108770/Kimutatas_proba.xlsm

 

Előzmény: maciti (37846)
Eredő Vektor Creative Commons License 2024.02.14 0 1 37847

De hisz elmenti a munkafüzettel együtt. Megtalálod az Cellák Formázása / Szám / Egyéni (Valahol a lista legalján kell lennie)

Előzmény: Frenki02 (37840)
maciti Creative Commons License 2024.02.13 0 0 37846

Köszi!

Egy kicsit furán néz ki, mert nem egészen erre vágytam...
Ha nincs jobb ötlet akkor megszokjuk!

 

Előzmény: Delila10 (37845)
Delila10 Creative Commons License 2024.02.13 0 0 37845

A hossz mezőt át kell tenned az oszlopokhoz a kimutatásban.

Előzmény: maciti (37844)
maciti Creative Commons License 2024.02.13 0 0 37844

Sziasztok!

Segítségeteket szeretném kérni, az alábbi excel problémával kapcsolatban. Van egy néhány soros adatbázis, és abból készítenék egy rendszerezett táblázatot, mely hasonlóan néz ki mint egy kimutatás. Nagyon jó is lenne, addig amíg nincsenek azonos rekordok, mert azokat összevonja. Persze a kimutatásnak az a feladata, gondoltam ki lehet valahogy kapcsolni ezt az értékmezők számolásait, de nem sikerült. Tud valaki segíteni ez ügyben, vagy más megoldás is jó lenne, ami hasonlóan néz ki…

Előre is köszönöm…

 

minta:

 

https://data.hu/get/14108024/Kimutatas_proba.xlsx

m54-b Creative Commons License 2024.02.11 0 0 37843

Köszönöm!

 

Reméltem tudja az Excel, és ráérek bezáráskor foglalkozni vele.

Előzmény: Delila10 (37842)
Delila10 Creative Commons License 2024.02.11 0 1 37842

Egy eseményvezérelt makrót adhatsz a laphoz, ami a példa szerint az AX1 cellába írja be az utolsó bevitel helyét, és idejét.

 

Private Sub Worksheet_Change(ByVal Target As Range)
   Application.EnableEvents = False
   Cells(1, "AX") = Target.Address & " " & Format(Now, "yyyy.mm.dd hh:mm:ss")
   Application.EnableEvents = True
End Sub

Előzmény: m54-b (37841)
m54-b Creative Commons License 2024.02.10 0 0 37841

Létezik olyan vba változó, hogy melyik volt az utolsó módosított cella?

Frenki02 Creative Commons License 2024.02.09 0 0 37840

Segítséget szeretnék kérni.

Ha létrehozok egy új számformátumot, pl. "db" azt hogyan tudom elmenteni akár hozzárendelni egy kis parancsikont, hogy ne kelljen a későbbiekben újra előállítani?

VízÜgyes Creative Commons License 2024.02.09 0 0 37839

Igen, alapvetően így van, és próbáltam is ezt, de nem működik, marad a régi képlet.

Egyébként valószínűleg nem ugyanaz a verzióm van, mert nekem ezt így nem engedi. Formázás táblázatként lépés után tudok rá táblázatként hivatkozni.

De van ahol egyszerűen elneveztem a tartományt és úgy hivatkozom rá, ott is ugyanez történik.

Előzmény: Delila10 (37837)
VízÜgyes Creative Commons License 2024.02.09 0 0 37838

Nekem az összes táblázatom úgy működik, hogy be van képletezve, és ha sort szúrok be, bizonyos cellákba automatikusan bekerül a képlet, bármiféle makró nélkül. Azt gondolom, hogy azért, mert táblázatként van definiálva.

Egyébként most is azt csinálom, hogy amikor beszúrom a sorokat felhúzom a képleteket, hogy átírja a régi rosszat az új jóra, és épp ennek szükségességét akarom elkerülni.

Előzmény: pimre (37836)
Delila10 Creative Commons License 2024.02.08 0 0 37837

Ha átalakítod az adataidat tartalmazó területet táblázattá (a területen állva Beszúrás, Táblázat), megszűnik ez a gondod.

 

A táblázattá alakított tartományban 1 cellába beírt képletet az egész oszlop örökli, még a formátumát is, akár az aljára, akár a közepére szúrsz be új sort.

Előzmény: VízÜgyes (37834)
pimre Creative Commons License 2024.02.07 0 0 37836

Miért kellene beszúráskor bármit is beírnia az új sorba? Ha az kell. akkor a felette lévő képletet lehúzhatod, vagy az alatta lévőt bemásolhatod. Honnan kellene tudnia az Excelnek, hogy milyen képletek vannak az oszlop többi cellájában, és hogy te azok közül melyiket szeretnéd látni az új sorban? (Az más, hogy te tudod, hogy mindegyik azonos, ő nem tudja)

Egyébként nekem az furcsa, hogy nálad bármit betesz az új sorba. Nem fut véletlenül valami makró a munkafüzetben?

Előzmény: VízÜgyes (37834)
pimre Creative Commons License 2024.02.07 0 0 37835

Valamit javult a helyzet, bár így sem az igazi. Az ablakok látszólag egymáson vannak, de nem úgy rögzülnek, mint ahogy az alapállapot volt:

 

 

Azért köszönöm.

 

És bosszantó,hogy erre nem gondoltak Redmondban, vagy ha igen, akkor nem tették elérhetővé. És, hogy az alapállapot visszaállítása csak újrateleptéssel oldható meg.

Előzmény: Fferenc50 (37833)
VízÜgyes Creative Commons License 2024.02.07 0 0 37834

Sziasztok!

 

Tudnátok segíteni abban, hogy miért van az, hogy táblázatokban sor beszúrásakor automatikusan nem azt a képletet írja be, ami az oszlop többi cellájában van, hanem egy korábban használt képletet, mintha beégett volna neki? És ugyanez a helyzet a formázással is, sorok beszúrásakor az új sorokba tesz be automatikusan egy korábbi feltételes formázást.

Illetve ha tudja valaki, hogy ez mitől van, megoldást is tudna rá adni?

 

Köszi!

Fferenc50 Creative Commons License 2024.02.07 0 0 37833

Szia!

Sajnos nincs "alapértelmezés" beállítási lehetőség.

Némi kis macerával ismét beállíthatod a neked kellemes helyzetet.

Javaslat:

1. Jobb egérgomb - hide  minden ablakon (benne állva, nem a címén).

2. Egyenként: ablak - view  - jobb egérgomb az ablakon  mint fent - dockable elől pipa kivéve. Ezután mozgathatod, méretezheted az ablakot. Ha a "helyén van" jöhet a következő ablakra ugyanez.

Excel bezáráskor - ha üres munkalapod volt akkor is megkérdezi - nem kell menteni, megőrzi a beállítást.

Remélem, sikerül.

Üdv.

Előzmény: pimre (37832)
pimre Creative Commons License 2024.02.06 0 0 37832

A VBA-ban egy rossz mozdulattal elmozdítottam a helyéről a Locals ablakot, aztán, ahogy próbálgattam helyreigazítani (régebben sem sikerült hasonló esetekben) egyre rosszabb lett. Most éppen egymás alatt van a 3 ablak.

 

Az alapértelmezés, ahogy általában használni szeretem, ez (a laptopomról mentve):  

 

 

A mostani állapot az asztali gépemen:

 

 

Baromi kellemetlen. Létezik, hogy nincs visszaállítási lehtőség az alapértelmezett elrendezésre?

 

 

 

pimre Creative Commons License 2024.02.05 0 0 37831

Ha egy cellán belül akarod megcsinálni, akkor természetesen sehogy. Illetve csak makróval. Ugyanis nincs olyan függvény, ami a cella tartalmát módosítja, és visszamásolja saját magára.

 

Segédoszloppal megoldható:

 

Ha A1-ben van az adat, akkor a B1-ben a következő legyen

 

=JOBB(A1;1)&BAL(A1;HOSSZ(A1)-1)

 

Aztán visszamásolhatod a B tartalmát az A-ba.

 

Előzmény: Kexcel9 (37829)
Fferenc50 Creative Commons License 2024.02.05 0 0 37830

Szia!

Pl.

=JOBB(A1;1) & BAL(A1;HOSSZ(A1)-1)

Üdv.

Előzmény: Kexcel9 (37829)
Kexcel9 Creative Commons License 2024.02.05 0 0 37829

Sziasztok!

 

Milyen függvényt használjak ahhoz, hogy egy cellában az utolsó karakter kerüljön az első helyre?

 

Köszi!

Dangit Creative Commons License 2024.02.04 0 0 37828

Koszonom szepen!

 

Teljes siker

Előzmény: Fferenc50 (37821)
webhifi1 Creative Commons License 2024.02.04 0 0 37827

Sziasztok!

Adott egy excel táblázatom amelyben L2:L100 között felsorolt nevek vannak.

Egy makró segítségével létrehozok adatelemzést és fenti tartományban lévő neveket használva a helyes cellába be is illeszti azokat ezzel nincs is gondom.

A makró utolsó fázisaként a munkalapfüleket szeretném átnevezni az L2:L100 tartomány nevei szerint úgy hogy az adatok ha változnak akkor a munkalapfül átnevezése is kövesse le a tartalmat azaz ne a scriptben tárolt vágólap tartalma alapján legyen átnevezés hanem az oszlop adatai szerint amelyek változnak és ezt kövesse le.

 

 

Delila10 Creative Commons License 2024.02.03 0 0 37826

Jól gondolod.

 

 

A C12 jelentése, hogy az aktuális (képletet tartalmazó) oszloptól 12-vel balra lévőre hivatkozik. Lehet negatív is a szám, amivel előző oszlopra hivatkozhatunk.

Ugyanígy az R után is lehet érték, ami plusz érték esetén lentebbi sort jelent, negatívnál fentebbit.

Érték megadása nélkül az adott sorra (R), vagy oszlopra (C) hivatkozunk.

Előzmény: pimre (37825)
pimre Creative Commons License 2024.02.03 0 0 37825

Hú, ez nagyon jó!!! Köszönöm.

Ez megoldott azt, amin már több mint egy napja nyűglődöm eredmény nélkül.

 

A formulaképlettel ugyan találkoztam már, de nem mélyedtem el az értelmezésében. Most majd utánaolvasok. Talán itt: https://excelchamps.com/formulas/r1c1/, de ha tudsz jobbat, akkor azt is köszönöm.

Mert egyelőre nem teljesen világos, hogyan lesz az RC12-ből $L3, és a C12-ből $L:$L, illetve, ahogy most írok világosodik, hiszen ha az R ott van érték nélkül az aktuális sort jelenti, a C12 meg az oszlopszámot, de ha az R nincs előtte, akkor a teljes oszlopot. Ugye?

 

Előzmény: Delila10 (37820)
pimre Creative Commons License 2024.02.03 0 0 37824

Köszönöm, ez így talán működne, de jól látom-e, hogy a képlet helye és a célterület ugyanazon a munkalapon kell, hogy legyen? Amikor megpróbáltam másik munkalapra tenni a képlet helyét, akkor a célterület kijelölésénél hibát kaptam. Ez meglehetősen korlátozhatja a módszer alkalmazását.

Előzmény: m54-b (37819)
Delila10 Creative Commons License 2024.02.03 0 0 37823

Fferién kívül még két módszert ismerek arra, hogyan lehet bevinni egy képletet helyesen makróba.

  1. Beviszem a képletet, majd lapfülön jobb klikk, Beszúrás, Nemzetközi Makrólap. Kapok egy új lapot Makró1 névvel. Ide bemásolom a képletet és a hivatkozási tartományát. Angolul jelennek meg a képletek, ezzel már tudok valamit kezdeni.

     2. A legkényelmesebb módszer: beírom a képletet egy cellába. Enterezés után újra erre a cellára állok, makrórögzítés, Enter a cellán. Leállítás után az igényeimnek megfelelően módosítom pl. a tartományt. Ez az R1C1 módszert alkalmazza, nem ronthatom el az idézőjelekkel.

Előzmény: pimre (37816)
Fferenc50 Creative Commons License 2024.02.03 0 0 37822

Szia! 

A VBA nézet Immediate ablakában lekérdezheted a képlet VBA-s formáját:

Ráállsz a cellára, majd az ablakban:

? ActiveCell.Formula (enter)

Itt láthatod a képletet. Amikor beírod a makróba, a következőre kell figyelned:

Range("A1:A98").Formula="=a kapott képlet, úgy, hogy az idézőjeleket meg kell duplázni,végén pedig"

Ahogyan látod, egy menetben lehet egész tartományra képletet megadni, csak a hivatkozások megfelelő rögzítésére kell ügyelned.

Üdv.

Előzmény: pimre (37816)
Fferenc50 Creative Commons License 2024.02.03 0 0 37821

Szia!

Szerintem a Részösszeg függvényt kellene használnod 109-es függvényszámmal. Ilyenkor csak a szűrés után fennmaradó értékeket veszi figyelembe.

A Szum függvény függetlenül a szűréstől, mindig mindent figyelembe vesz.

Üdv.

Előzmény: kalotailaszlo (37815)
Delila10 Creative Commons License 2024.02.03 0 0 37820

Szia!

 

Sub Keplet()

   Dim aktlap As String, aktoszlop As Integer, usor As Integer

 

   aktlap = "Munka1"

   aktoszlop = 2  'B oszlopba írja a függvényt

 

   'eddig van adat a Teljes lista lap AL oszlopában

   usor = Sheets("Teljes lista").Range("AL" & Rows.Count).End(xlUp).Row

 

   ’1 lépésben bemásolhatjuk a teljes aktoszlop-ba a képleteket

   Range(Cells(3, aktoszlop), Cells(usor, aktoszlop)).FormulaR1C1 = "= INDIRECT(""'Teljes lista'!$AL"" & MATCH(RC12,'Teljes lista'!C12,0))"

End Sub

Előzmény: pimre (37816)
m54-b Creative Commons License 2024.02.03 0 0 37819

Sub masolas()

    Range("B3").Select 'itt van a képlet
    Selection.Copy
    Range("B8").Select 'ide másol
    Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Selection.AutoFill Destination:=Range("B8:B12"), Type:=xlFillDefault
End Sub

 

Vagy nagyon nem értem?

Előzmény: pimre (37818)
pimre Creative Commons License 2024.02.03 0 0 37818

Kösz, de ez nem jó. Akkor az  "INDIREKT(" részt tekinti adatnak, és az aposztroftól kezdődőt pedig megjegyzésnek értelmezi.

 

De most találtam valamit. Az a gyanúm, hogy munkalap függvényként felismeri az INDIREKT-et, viszont VBA függvényként az INDIRECT-et nem.

 

Lehet,hogy a Referencesből hiányzik valami. Nekem ez van bejelölve, és nem tudom, mi kellene hozzá:

 

 

Ha viszont ez a helyzet, akkor nem tudom, van-e garancia arra, hogy más helyen, más környezetben elérhető lesz-e a függvény.

 

Akkor talán marad a Copy-Paste, ha találok rá megoldást. Ezt holnap megpróbálom egy segéd munkalappal. Hacsak nem kapok jobb ötletet.

Előzmény: m54-b (37817)
m54-b Creative Commons License 2024.02.03 0 0 37817

Szerintem

aktlapws.Cells(3, aktoszlop) = "INDIREKT

oda is kell egy idézőjel.

Előzmény: pimre (37816)
pimre Creative Commons License 2024.02.03 0 0 37816

A következő gondom van. Egy több munkalapot tartalmazó Excel fájlban van egy úgynevezett teljes lista, és vannak hozzátartozó munkalapok. A teljes listában a többi munkalap valamennyi rekordja szerepel, ami pedig összeköti őket, az az L oszlopban szereplő azonosító. Tehát amikor egy munkalapra szeretnék bemásolni egy adatot, akkor a munkalap L oszlopában lévő azonosítót keresem meg a teljes listában, és a negtalált sor megfelelő adatát olvasom ki, és helyezem el a munkalapon.

 

Az erre használt függvény, amit a korábbi években kézzel (Copy-Paste) másoltam be a munkalapok 3. sorába (majd húztam végig lefelé, kitöltve a teljes oszlopot a teljesből átvett értékekkel) így nézett ki: 

 

 = INDIREKT("'Teljes lista'!$AL" & HOL.VAN($L3;'Teljes lista'!$L:$L;0);1) ' Itt lehet, hogy hibát követtem el, hogy az aktuális munkalap L3 cellája előtt nem adtam meg a munkalap hivatkozást saját magára, de a rendszer elfogadta, és jól működött a dolog.

 

A komplett feladatot egy sokszáz soros makró kezeli, és mivel idén szeretném kiadni a kezemből a feladatot, ezt a másolást is a makróban szeretném automatizálni. Viszont órák óta képtelen vagyok megtalálni a helyes szintaxist. és a szerkesztő vagy a képleten belül talál hibát, vagy azt állítja, hogy  sub or function not defined. AKár C-vel, akár K-val írom az INDIREKT-et:

 

aktlapws.Cells(3, aktoszlop) = INDIREKT("'Teljes lista'!$AL" & HOL.VAN(aktlapws.Cells(3, "L"), "'Teljes lista'!$L,$L", 0), 1)

 

Elkeseredésemben arra is gondoltam, hogy az eredeti - kézi - megoldást imitálva alkalmazom, de a Copy részt nem tudom megoldani tehát, hogy a vágólapra kerüljön a formula.

 

Mit ronthatok el? 

kalotailaszlo Creative Commons License 2024.02.03 0 0 37815

Sziasztok!

 

=Szum(l6:l1500) formulaval összegezte meg az értéket de mihelyst szeletelon felsorolast valtok, az ertek a cellaban nem valtozik. Segitseg! ☺️

local75 Creative Commons License 2024.01.31 0 0 37814

Sziasztok!

 

Hogyan lehet egyesíteni az ablakokat hogy az Excel munkafüzetek az ablakfülek segítségével egyetlen ablakon belül jelenjenek meg?

 

A ChatGPT szerint van rá mód, de nem találom egyik módszert sem amit ír.

 

 

 

verzió: Microsoft® Excel® LTSC MSO (2305 buildverzió16.0.16501.20002) 64 bites

 

GPT: "A leírt verziószám alapján a Microsoft Excel 2023 Long-Term Servicing Channel (LTSC) verzióját használod."

MM10 Creative Commons License 2024.01.28 0 0 37813

És ebben a helyzetben már kapcsolgatni sem bírom őket

Előzmény: MM10 (37812)
MM10 Creative Commons License 2024.01.28 0 0 37812

Nagyon szépen köszönöm,egy utolsó kérdésem még lenne. A Jelölő négyzetet miért nem jelölőnégyzetként jeleniti meg a tábla? Már az elején is problémám volt vele,de megoldottam,most viszont kilépés utáni újra megnyitásnál már megint nem jelölőnégyzetként jeleniti meg. A kikapcsolt négyzetek helyén "FALSE" ,a bekapcsolt négyzetek helyén pedig a "TRUE" jelenik meg,tehát a helyzetüket írja le ahelyet hogy megjeleníteni őket

Delila10 Creative Commons License 2024.01.28 0 0 37811

=HA(VAGY(C4="A";C4="B";C4="C");3;HA(VAGY(C4="D";C4="E");4;HA(VAGY(C4="F";C4="G");5;"")))

Angolban HA -> IF, VAGY -> OR

Előzmény: MM10 (37810)
MM10 Creative Commons License 2024.01.28 0 0 37810

Köszönöm. Még olyan kérdésem lenne,hogy HA képlettel hogy tudok több lehetőséget megadni?

pl =IF(C4="A",;3)
ez így tökéletesen műkődik,de hogyan tudok mellé csatolni más lehetőséget is,pl nem csak akkor lesz 3 ha c4=A ha nem c4="A" és "B" és "C" akkor ;3.ha c4="D","E";akkor;4,c4="F","G",akkor =;5. Ezt meglehet oldani egy képletbe és egy cellába beépíteni?

Delila10 Creative Commons License 2024.01.28 0 0 37809

Szia! Esetleg:

Private Sub CheckBox1_Click()

    If CheckBox1 Then

        CheckBox1.BackColor = &HFF0000

    Else

        CheckBox1.BackColor = &HE0E0E0

    End If

End Sub

 

Private Sub CheckBox2_Click()

    If CheckBox2 Then

        CheckBox2.BackColor = &HFF0000

    Else

        CheckBox2.BackColor = &HE0E0E0

    End If

End Sub

Előzmény: MM10 (37808)
MM10 Creative Commons License 2024.01.27 0 0 37808

Sziasztok. Az lenne a kérdésem hogy lehetséges e egy cellán belül több jelölőnégyzetet berakni,és hogy ezeket a jelölönégyzeteket színezni valamilyen módon? Arra gondolo,hogy pl a négyzetet kipipálás helyett beszínezni különböző színekre

Fferenc50 Creative Commons License 2024.01.26 0 0 37807

Szia!

Makróból és beállításból szerintem nem.

Viszont a Fájlkezelőben ráállsz - jobb egérgomb - Tulajdonságok - Biztonság - A tiltás feloldása négyzetet bepipálod -- OK. Ezt természetesen a felhasználónál kell megtenni, ami lehet, hogy bonyolultabb lesz neki, mint engedélyezni a makrókat a kérdés után.

Ha vannak/voltak adatkapcsolatok az eredeti fájlban és nem szeretnéd a másolatban, akkor mentés előtt a kapcsolatokat törölni kell, pl.

Do While Activeworkbook.Connections.Count > 0:Activeworkbook.Connections(1).Delete:Loop

Üdv.

Előzmény: pimre (37806)
pimre Creative Commons License 2024.01.26 0 0 37806

Makróval megnyitok egy makrókat tartalmazó fájlt, és a átmásoltatom más néven más helyre, majd egy-két módosítás után mentem. Megoldható-e programból, hogy az új fájl első megnyitásakor ne figyelmeztessen a makrók letiltására, és ne kérje a felhasználótól az engedélyezést, hanem tekintse úgy, hogy az már megtörtént?

proszim Creative Commons License 2024.01.25 0 0 37805

Köszönöm.

Előzmény: Delila10 (37801)
Delila10 Creative Commons License 2024.01.24 0 0 37804

 

Szívesen. :)

Előzmény: Agko (37803)
Agko Creative Commons License 2024.01.24 0 0 37803

Nagyon köszönöm a segítségedet, így már tökéletes!

Előzmény: Delila10 (37793)
Delila10 Creative Commons License 2024.01.23 0 0 37802

A diagramcímre kattintva a szerkesztőlécen beírod: =B1

Előzmény: Delila10 (37801)
Delila10 Creative Commons License 2024.01.23 0 0 37801

Kijelölöd az A2:F14 tartományt (címsortól decemberig), a Ctrl gombot nyomva tartva kijelölöd a C2:C14, E2:E14, és G2:G14 tartományokat. Ezzel a % oszlopokat kivetted a kijelölésből.

Beszúrás, diagram, oszlopdiagram.

Rákattintasz a legmagasabb oszlopra. Az első kattintásra az összes hónap max oszlopai lesznek kijelölve. Még egy klikk az oszlopon, akkor már csak a maximumot tartalmazó oszlop van kijelölve, majd jobb klikk, adatfelirat hozzáadása.

 

Előzmény: proszim (37799)
Delila10 Creative Commons License 2024.01.23 0 0 37800

Egy cellába beírom a képletet, legyen ez az I3.

=INDEX(A2:F17;1;HOL.VAN(MAX(B17:F17);A17:F17;0)) & " " & MAX(B17:F17) & " Ft"

 

A diagram címét kijelölve a szerkesztőlécen beírom: =Munka1!$I$3

Előzmény: proszim (37799)
proszim Creative Commons License 2024.01.23 0 0 37799

Köszi a hszt.

Szóval lentebb van a táblázat, annak a legnagyobb értéke b3-asban a 971.000 és ezt kellene kjjratni a diagram januári bal első (barna mintás) oszlopa fölé, hogy megjelenjen a 971.000 ugye.

Ezek már a megoldások, ezt megkaptam, de hogy hogyan jutok el oda, az nem vili.

Előzmény: Delila10 (37797)
proszim Creative Commons License 2024.01.23 0 0 37798
Előzmény: Delila10 (37797)
Delila10 Creative Commons License 2024.01.23 0 0 37797

A B1 cella képlete: =HA(MAX($B$2:$H$14)=MAX(B2:B14);MAX($B$2:$H$14);"-"), amit jobbra másolhatsz.

A Ha függvény hamis ágába a "-" helyett írhatsz ""-t is.

 

 

Előzmény: proszim (37795)
Delila10 Creative Commons License 2024.01.23 0 0 37796

Laphoz rendelve

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Row >= 2 Then

        Target.Font.Color = 1

        Cells(Target.Row - 1, Target.Column).Font.ThemeColor = xlThemeColorDark1

    End If

End Sub

Előzmény: Agko (37794)
proszim Creative Commons License 2024.01.23 0 0 37795

Szia mindenki

 

Hogy kell megoldani?

  • A legnagyobb havi bevétel értékét 10 pontos félkövér betűkkel írja az azt ábrázoló oszlop fölé!
  • Odáig jutottam, hogy mindegyik oszlop fölé kiteszi az értéket ( van ugye egy táblázat hozzá) De nekem csak a legnagyobb értéket reprezentáló oszlop fölé kellene.

Egy oszlopdiagramról van szó természetesen.

Köszi

Agko Creative Commons License 2024.01.23 0 0 37794

Szia! Köszönöm szépen, kipróbáltam, működik tökéletese. Esetleg azt meglehetne oldani, hogy ha egy sorral lejjebb lépek, a már beolvasott vonalkód ne legyen látható?Mert ha ott marad, beolvashatja még egyszer az olvasó. Amúgy bevételezéshez kell ez a dolog. Hálásan köszönöm a segítséget.

Előzmény: Delila10 (37793)
Delila10 Creative Commons License 2024.01.22 0 0 37793

Nincs vonalkód beolvasóm, így nem tudom kipróbálni.

A kódot tartalmazó oszlopban a karakter színét fehérre kell változtatni, mint (gondolom) a háttéré.

A makrót a laphoz kell rendelni. Lapfülön jobb klikk, Kód megjelenítése. Ezzel bejutunk a VB szerkesztőbe. A jobb oldalon kapott üres felületre kell bemásolni a makrót.

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Selection.Font.Color = 1

End Sub

 

A kattintással kiválasztott cellában a karakter fekete lesz.

Előzmény: Agko (37792)
Agko Creative Commons License 2024.01.22 0 0 37792

Köszönöm szépen a gyors segítséget, kipróbálta, a makró működik tökéletesen, de sajnos, ha felnagyítom a cellákat,  a vonalkód olvasó nem olvassa be, így nem használható sajnos.

Esetleg arra van megoldás, hogy a vonalkód csak akkor lenne látható, ha ráállok a cellára?

 

Előzmény: Delila10 (37790)
E.Istvan Creative Commons License 2024.01.22 0 0 37791

Menüben "Adatok" fül és "Irányított". Ez az irányított szűrés.

Meg kell adni az eredeti táblát. A szűrési feltételeket egy másik táblázatban, majd azt, hogy hol jelenjen meg a szűrt táblázat.

Előzmény: webhifi1 (37788)
Delila10 Creative Commons License 2024.01.21 0 0 37790

Nem tudom, mit akarsz kezdeni a beolvasott értékekkel.

A lenti makró a tartomány T oszlopának szűrt értékeit átmásolja a Munka2 lap A oszlopába. Ott megemeled a sorok magasságát, és nem ugrik beolvasáskor a sor.

 

Sub QR_Szurt_sorok()

    Dim usor As Integer

    Sheets("Munka2").Columns(1).Delete

    usor = Range("T" & Rows.Count).End(xlUp).Row

    Range("T2:T" & usor).SpecialCells(xlCellTypeVisible).Copy Sheets("Munka2").Cells(1)

End Sub

 

A makrót a tartományod lapjáról kell indítanod, a füzetet makróbarátként kell mentened.

 

Előzmény: Agko (37789)
Agko Creative Commons License 2024.01.21 0 0 37789

Sziasztok!

Szeretnék megoldást találni egy problémámra, ami megkönnyítené a munkámat. Van egy nagy adatbázisom úgy kb 16 ezer sornyi tétel és 20 oszlop adattal. az utolsó oszlop egy generált vonalkódot tartalmaz. Mivel egymás után sorban vannak, a vonalkód olvasóval nagyon nehéz leolvasni, mert sokszor az alatta lévő kódot olvassa le, így sok a hibalehetőség. Van arra lehetőség, hogy a leszűrt adatok egyesével legyenek láthatóak, majd a beolvasás után a lefelé nyíl lenyomása után a következő tételre ugorjon?

 

 

webhifi1 Creative Commons License 2024.01.20 0 0 37788

Ettől féltem. Sharepoint file:( Makró nem engedélyezett. Azonban lementve kipróbálom köszönöm!

Előzmény: Fferenc50 (37787)
Fferenc50 Creative Commons License 2024.01.20 0 0 37787

Szia!

Értem én, hogy mit szeretnél, azonban munkalapról függvénnyel ez nem érhető el. 

Makróval működik, a feltételeket egy tömbben kell megadni.

Egy makró:

Sub Makró1()
ActiveSheet.UsedRange.AutoFilter Field:=5, Criteria1:=Array("3,25", "5,4", "6,59"), Operator:=xlFilterValues
End Sub

 

Így hosszabb feltételt is megadhatunk:

Sub Makró2()
ActiveSheet.UsedRange.AutoFilter Field:=5, Criteria1:= _
Array("11,047", "11,6", "13,56", "14,6", "14,7", "16,32", "16,6", "17,1", "17,11", _
"18,6", "19,6", "21,27", "22,67", "24,86", "25,41", "26", "27,33", "3,25", "4,62", "5,4", _
"6", "6,59", "7", "7,6", "7,61", "7,9", "8,96", "9,517"), Operator:=xlFilterValues
End Sub

 

A makrót egy modulba kell bemásolnod a VBA nézetben:

Alt +F11 - Insert - Module

Field:=5 helyére annak az oszlopnak a számát írd, amelyben szűrni szeretnél.

A Criteria1:= Array(....) jelenti azt, hogy tömb lesz a paraméterben. Ha hosszabb a feltétel sorozat akkor az aláhúzás karakterrel lehet jelezni, hogy egy sorba tartozik amit beírtál - a hosszabb feltételes sorban láthatod.

Az első makró eredménye:

Üdv.

Előzmény: webhifi1 (37786)
webhifi1 Creative Commons License 2024.01.20 0 0 37786

A lényeg pontosan az lenne, hogy egy kinyert formátum alapján egyszerre megadhassam a listázandő tételeket. 

 

Pl.: 82725;82726;93526;43728;....tetszőleges darabszám alapján adott oszlopban szűrve csak ezek a sorok jelenjenek meg

Előzmény: Fferenc50 (37785)
Fferenc50 Creative Commons License 2024.01.19 0 0 37785

Szia!

Alakítsd táblázattá, utána adj hozzá szeletelőt. Azon szépen végig tudod kattintgatni a szükséges értékeket.

Üdv.

Előzmény: webhifi1 (37784)
webhifi1 Creative Commons License 2024.01.19 0 0 37784

110 tételnél ez kissé időigényes:) Vágólapra tudom tenni  szűrendő adatokat. Azonban amikor 3000 adatból  100 db kell nincs rá idő.

 

Előzmény: Fferenc50 (37783)
Fferenc50 Creative Commons License 2024.01.19 0 0 37783

Szia!

Kiveszed a pipát az összes kijelölése elől.

Utána bepipálod azokat a tételeket, amelyeket látni szeretnél.

Üdv.

Előzmény: webhifi1 (37782)
webhifi1 Creative Commons License 2024.01.19 0 0 37782

A sárga mezőbe szeretnék megadni egyszerre akár tíz értéket is 

Előzmény: Fferenc50 (37781)
Fferenc50 Creative Commons License 2024.01.19 0 0 37781

Szia!

Bocsi, milyen szűrőlistára gondolsz?

Autoszűrőben meg lehet adni a listából több értéket is.

Speciális szűrőben szintén, egymás alatt irva szűrési feltételekben.

Üdv,

Előzmény: webhifi1 (37780)
webhifi1 Creative Commons License 2024.01.19 0 0 37780

Sziasztok!

 

Excel szűrőlistában a kereső mezőbe egyszerre több adatot szeretnék szűrni. Lehetséges ez? Amennyiben igen hogyan? Köszönöm!nem csak egy hanem több feltételt is meg szeretnék adni. Nem egyesével hanem egyszerre beírnám. Pl a 8751;8766 adatot keresem. Mi az elválasztójel a két kritérium esetén ebben a kereső mezőben?

Agko Creative Commons License 2024.01.14 0 0 37779

Nagyon szépen köszönöm!!!! Tökéletes.

Előzmény: pimre (37778)
pimre Creative Commons License 2024.01.14 0 0 37778

Ha A1-ben van az eredeti, akkor =BAL(A1;4) &"-" & KÖZÉP(A1;5;3) & "-" & JOBB(A1;4)

Előzmény: Agko (37777)
Agko Creative Commons License 2024.01.14 0 0 37777

Sziasztok!

Segítséget szeretnék kérni, hogy az alábbi formátumból : Z010078K001 hogyan tudok ilyen: Z010-078-K001 formátumot létrehozni.

Köszönöm!

Ketele69 Creative Commons License 2024.01.09 0 0 37776

Köszönöm!

Előzmény: Fferenc50 (37775)
Fferenc50 Creative Commons License 2024.01.09 0 0 37775

Szia!

Egy segédoszlopba kiveszed a dátumokból a napot. Képlet pl. =NAP(A1), végighúzod.

Ezután erre a segédoszlopra alkalmazod az autoszűrőt, kiveszed az 1 elől a pipát.

Üdv.

Előzmény: Ketele69 (37774)
Ketele69 Creative Commons License 2024.01.08 0 0 37774

Sziasztok!

Van egy dátum oszlopom, amelyből szeretném leválogatni a nem elsejével kezdődő dátumokat.

Az autószűrős - egyenkénti - kijelölésen kívül van gyorsabb megoldás? Sok-sok évről van szó....

 

Köszönöm,

 

Redlac Creative Commons License 2024.01.08 0 0 37773

Tökéletes, köszönöm :-)

 

Előzmény: Delila10 (37772)
Delila10 Creative Commons License 2024.01.07 0 0 37772

Ez meg minden kis- és nagybetűt híven ad vissza.

 

 

Bevitel G2, lista A oszlop.

Előzmény: Redlac (37771)
Redlac Creative Commons License 2024.01.07 0 0 37771

Köszönöm, ez tényleg nagyon jó :-)

 

közben szembesültem vele, hogy vannak olyan szavak is a listában, amikben változó a kis- és nagybetű...pl. ArrivaBus Kft.

De közben meg azt látom, hogy jellemzően az első betű szokott kicsi maradni, mivel a bevitelnél csak lenyomja a felhasználó a kezdőbetűt és így kicsivel kezdve jelenik meg az adott szó.

 

Akkor az lenne a célszerű, ha megadnám a listában szereplő szavak kisbetűvel kezdődő verzióját és azt javíttatnám a makróval.

Előzmény: Delila10 (37769)
m54-b Creative Commons License 2024.01.06 0 0 37770

Előzmény: Redlac (37767)
Delila10 Creative Commons License 2024.01.06 0 0 37769

Kiegészítettem az előző utasítást.

 

Target = UCase(Left(Target, 1)) & LCase(Right(Target, Len(Target) - 1))

 

Ez akkor is működik, ha bekapcsolt CapsLock-nál vitték be az adatot.

Előzmény: Delila10 (37768)
Delila10 Creative Commons License 2024.01.06 0 0 37768

Szia!

 

A bevitel helye nálam G2. A laphoz rendelt eseményvezérelt makró:

 

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$G$2" Then _
Target = UCase(Left(Target, 1)) & Right(Target, Len(Target) - 1)
End Sub

Előzmény: Redlac (37767)
Redlac Creative Commons License 2024.01.06 0 0 37767

Sziasztok!

 

Az Érvényesítés --> Lista beállításnál meg tudok adni egy listát, amiből választhat a felhasználó.

Azonban a kiválasztásnál a kis és nagybetűk között nem tesz különbséget. Tehát, ha a listában "Budapest" van írva, akkor manuálisan be lehet írni a "budapest" szót és azt - hibajelzés nélkül - tovább is engedi.

 

Meg lehet oldani, hogy csak a teljesen karakterhelyes szót fogadja el?

Szili1974 Creative Commons License 2024.01.04 0 0 37766

Sziasztok!

 

A következő "probléma" megoldásában szeretném a segítségeteket kérni.

 

Le szeretném védeni a cellákat, hogy ne lehessen felülírni a bennük lévő képleteket, szövegeket viszont az egyéni sorrend beállítást szeretném meghagyni a felhasználónak. De ha bekapcsolom a lapvédelmet, akkor a sorrendbe állítást sem engedi.

Próbáltam már, hogy kipipálom a "Rendezés" és az "AutoSzűrő" használatát, de akkor sem engedi az egyéni sorrend beállítást.

 

Van esetleg erre valakinek valami ötlete, megoldása?

 

Előre is köszönöm!

 

Üdv, Szilárd

Delila10 Creative Commons License 2024.01.03 0 0 37765

Szia!

A DARABHA, régebbi verziókban a DARABTELI függvény alkalmas erre. A súgó megmutatja az alkalmazásukat.

Előzmény: Ketele69 (37764)
Ketele69 Creative Commons License 2024.01.03 0 0 37764

Kedves Fórumtársak!

 

Először is BÚÉK Mindenkinek!

 

Az alábbiakban kérnék tanácsot.

 

Van egy változó rekordszámú "A" oszlopom, ami egy Kimutatás varázslóval előállított tábla érintett oszlopára hivatkozva tartalmaz adatokat. (1-100-ig).

 

A kérdés, hogy melyik szám, hányszor szerepel. (Fontos, hogy kizárólag azoknak a számoknak a darabszáma jelenjen meg a leválogatásban, amelyeket az "A" oszlop aktuálisan tartalmaz!) 

 

Próbáltam a feladatot továbbra is Kimutatás varázsló segítségével megoldani, de nagyon alap szinten kezelem a kimutatásokat, ezért inkább függvénnyel szeretném az adatokat kinyerni.

 

Köszönöm,

 

   

Redlac Creative Commons License 2024.01.03 0 0 37763

Értelek és köszönöm a segítségedet :-)

Előzmény: Fferenc50 (37762)
Fferenc50 Creative Commons License 2024.01.03 0 0 37762

Szia!

Még annyit tennék hozzá, hogy bármelyik modulban lehet publikus változót definiálni és láthatja minden eljárás, ha a teljes "névvel" hivatkozol rá, ami így néz ki: modulnév.változónév.

Vagyis ha a Module1-ben van egy Public valt1 nevű változó, akkor azt a többi modulban Module1.valt1 formában lehet elérni.

Üdv.

Előzmény: pimre (37761)
pimre Creative Commons License 2024.01.03 0 0 37761

Ja és azt nem mondtam, de nyilván egyértelmű, hogy a képen látható szubrutin automatikusan lefut a munkafüzet megnyitásakor, tehát megnyitja a munkafájlt, és értéket ad a Public változóknak.

Előzmény: pimre (37760)
pimre Creative Commons License 2024.01.03 0 0 37760

Félreértettél. Így kell kinéznie a ThisWorkbooknak, és akkor látja minden modul és minden procedura:

 

Előzmény: Redlac (37757)
Delila10 Creative Commons License 2024.01.03 0 0 37759

Helyes. A különböző modulokban lévő makrók elején meg kell hívnod a Start-ot.

Előzmény: Redlac (37758)
Redlac Creative Commons License 2024.01.03 0 0 37758

Nem, most igyekszem letenni a userformot, és csak hasonlót alakítok ki a munkalapon :-)

 

De az általad megadott gondolatból kiindulva szokás szerint remek lett, köszönöm :-)

 

1. Egy modul tetején lefoglaltam a Globális változókat

2. Az első rutin lett a Sub Start(), ezen belül Set-tel beállítottam, amiket kellett, és az első parancs ezután ebből a modulból indul.

3. A Thisworkbook Workbook_Open() részben pedig meghívom a Start-ot.

Előzmény: Delila10 (37756)
Redlac Creative Commons License 2024.01.03 0 0 37757

Nos, ha a Thisworkbook elejére teszem a Public változók meghatározását, akkor más modul nem "látja".

De ha egy sima modul elejére teszem, akkor a modulban lévő procedúrák látják, de a set-et procedúraként meg kell adni.

Ha a "Private Sub Workbook_Open()" részbe teszem a setet, akkor nem jó.

Előzmény: pimre (37755)
Delila10 Creative Commons License 2024.01.03 0 0 37756

Gondolom, UserFormot tartalmaz a fájlod.

Felveszel egy indítógombot. Ennek a makrójánál foglalod le a változóknak a helyet.

 

Option Explicit

Global WsSt As Worksheet, WsA As Worksheet, WsE  As Worksheet, WF As WorksheetFunction

 

Sub Start_Click()

    Set WsSt = Sheets("Startlap")

    Set WsA = Sheets("Adatok")

    Set WF = Application.WorksheetFunction

End Sub

 

 

 

A formon már simán hivatkozhatsz a változóidra.

 

Private Sub ComboBox1_Change()

    Munkakor = "Munkaröre: " & WF.VLookup(ComboBox1.Value, WsA.Range("A1:B11"), 2, 0)

End Sub

 

Private Sub ComboBox2_Change()

    Torzs = "Törzse: " & WF.VLookup(ComboBox2.Value, WsA.Range("D1:E8"), 2, 0)

End Sub

 

Előzmény: Redlac (37750)
pimre Creative Commons License 2024.01.02 0 0 37755

Egyébként az induló kérdésedre nem választoltam. "Hol és hogyan kellene úgy deklarálnom valamiket, hogy az egész munkafüzetben az értékek elérhetőek legyenek? Egyáltalán lehet egész munkafüzetre vonatkozóan vagy csak modulszinten lehet meghatározni?"

 

A kérdés első felére a küldött mintám már megadja a választ. A Programon kívül deklarálod, tehát a Sub hívás előtt. A deklaráció célja az, hogy ne kelljen minden függvényhíváskor paraméterként átadni a változót a függvénynek. 

Ezen túlmenően a public deklaráció a az egyes munkalapokon létrehozott subrutinokbna is érvényes.

 

Azt, hogy ne kelljen mindig megadni set-el megadni, azt úgy oldhatod meg, hogy a Project képernyőn a Thisworkbook-ra lépsz, és oda teszed a programot Private Sub workbook_Open() használatával, ami megnyitáskor automatikusan elindítja a programot , és ezzel értéket ad a változóidnak. A többi függvény mehet a modulokba, vagy a munkalapokra.

 

 

Előzmény: Redlac (37754)
Redlac Creative Commons License 2024.01.02 0 0 37754

Sub-on belül működik a "set", de az lett volna a cél, hogy az adott modul elején csak egyszer kelljen "set"-elni és több sub esetén azt mindegyik sub-ra "értse".

Előzmény: pimre (37753)
pimre Creative Commons License 2024.01.02 0 0 37753

Meg is nyitottad az Új form.xlsm fájlt?

 

Nézd meg ezt, nálam működik:

 

Option Explicit
Public wv As WorksheetView
Public Wb As Workbook
Public Wa As Worksheet

 

Sub teszt()
Workbooks.Open Filename:="D:\Dokumentumok\Letöltések\Új form.xlsm"
Set Wb = Workbooks("Új form.xlsm")
Set Wa = Wb.Worksheets("Adatok")
End Sub

 

Persze a public Wh-t javítsd Wa-ra, de nem ez volt a hiba oka.

Előzmény: Redlac (37752)
Redlac Creative Commons License 2024.01.02 0 0 37752

Igen, adtam, de a "set" nem tetszik neki ezen a részen.

 

Option Explicit
Public wv As WorksheetView
Public Wb As Workbook
Public Wh As Worksheet
Set Wb = Workbooks("Új form.xlsm")
Set Wa = Wb.Sheets("Adatok")

Előzmény: pimre (37751)
pimre Creative Commons License 2024.01.02 0 0 37751

A Wa beállítás előtt a Wb-nek adtál értéket?

Előzmény: Redlac (37750)
Redlac Creative Commons License 2024.01.02 0 0 37750

Sziasztok!

 

BUÉK az egész csoportnak :-)

 

Nem teljesen értem a globális/publikus deklarálást, ebben kérnék némi segítséget.

 

Hol és hogyan kellene úgy deklarálnom valamiket, hogy az egész munkafüzetben az értékek elérhetőek legyenek? Egyáltalán lehet egész munkafüzetre vonatkozóan vagy csak modulszinten lehet meghatározni?

 

Public wv As WorksheetView
Public Wb As Workbook
Public Wa As Worksheet

 

Eddig elvileg jó, de hogyan tudnám beállítani ezeket?

 

Ha ez a rész alá beírom, hogy "Set Wa = Wb.Sheets("Adatok")" az nem jó. 

 

Előre is köszönöm a segítséget

 

Delila10 Creative Commons License 2023.12.23 0 0 37749

Szia!

 

Egy módszer, ami látszólag egyesíti vízszintesen a cellákat:

 

Eredmény:

 

Előzmény: trixxy97 (37746)
pimre Creative Commons License 2023.12.22 0 0 37748

Az egyesítéssel egyébként ajánlott óvatosan bánni, kellemetlen következményei is lehetnek a későbbiekben.

 

De ha már, akkor miért nem jó az, ha kijelölöd az egyesített területet egérrel, majd az Igazítás csoportban az Egyesítés gombra kattintasz. Újabb verziókban mér csak az ikon látszik, az "Egyesítés" szó nem:

 

Előzmény: Fferenc50 (37747)
Fferenc50 Creative Commons License 2023.12.22 0 0 37747

Szia!

Csak makróval!

Bár nem igazán értem, miért kell vízszintesen cellákat egyesíteni. 

Üdv.

Előzmény: trixxy97 (37746)
trixxy97 Creative Commons License 2023.12.22 0 0 37746

Sziasztok!

Kérlek, segítsetek egy excel függvénnyel kapcsolattal (ha van ilyen). Teljesen laikusként kérdezek, és remélem érthetően magyarázom, hogy mi a feladatom... Üres cellák vízszintesen.. az egyikbe beírok egy szöveget, és a tőle jobbra levő x számú cellával egyesíti az én cellámat. Nem az adatokat kellene összevonni, üres cellákat kellne egyesíteni. Pl beírom, hogy cellla3, akkor az adott cellát a  tőle jobbra található 2 cellával egyesíti, és az egyesített (korábban 3) cellában annyi legyen, hogy cella3.. Hogyan lehet ezt a legegyszerűbben megvalósítani az excelben?

Köszönöm előre is:)

Fferenc50 Creative Commons License 2023.12.14 0 0 37745

Szia!

Vagy bármilyen a szövegben nem szereplő karakter lehet elválasztó karakter, ebben az esetben egy cellába kerül ugyan a beolvasás, de utána az Adatok - Szövegből oszlopok - tagolt típust választva, egyéb elválasztójelnek beírva a sajátodat, szétbontja cellákra a szöveget.

Üdv.

Előzmény: Peti618 (37743)
Garashan Creative Commons License 2023.12.14 0 0 37744

Szia!

 

Szerintem a tabulátort. Ha jegyzettömbből illesztek be szöveget, akkor ott is a tabulátor az új oszlop karaktere.

Előzmény: Peti618 (37743)
Peti618 Creative Commons License 2023.12.14 0 0 37743

Sziasztok!

 

az lenne a kérdésem, hogy data mátrix kód tartalomba milyen karaktert kell írni ahhoz, hogy ha kézi kódolvasóval beolvasom, akkor az excelbe külön cellába kerüljön a kód tartalom részei?

 

Zebra designer programmal lenne a kód generálva adatbázisból és nyomtatva, ezt a tartalmat kellene excelbe be illeszteni kézi olvasóval. Egy kód tartalom egy sor de külön oszlopba szeretném az egyes részeket az excelben.

 

Üdv

m54-b Creative Commons License 2023.12.12 0 0 37742
Balu424 Creative Commons License 2023.12.07 0 0 37741

egtaláltam, de nem ment fel. Ügyfélszolgálat meg ilyesmi kellett volna hozzá, így abbahagytam az egészet

Előzmény: Fferenc50 (37740)
Fferenc50 Creative Commons License 2023.12.07 0 0 37740

Szia!

Milyen verziójú Exceled van?

A Solver bővítmény betöltés az Excelben - A Microsoft ügyfélszolgálata

Talán így sikerül megtalálnod.

Üdv.

Előzmény: Balu424 (37739)
Balu424 Creative Commons License 2023.12.07 0 0 37739

szia

Köszi szépen. Tegnap este megpróbáltam feltenni a Solver bővítményt, de az excelem nem engedte. Letöröltem úraraktam, de semmi eredmény.

Nekiálltam kockáspapíron kimatekozni, igaz 2 órámba tellt, de sikerült. Lehet ezzel sokkal hamarabb ment volna

 

Azért köszönöm a segítségedet :)

Előzmény: Fferenc50 (37738)
Fferenc50 Creative Commons License 2023.12.05 0 0 37738

Szia!

Használd a Solver bővítményt. Ha nem látod, akkor Fejlesztőeszközök - Excel bővítmények - ott megtalálhatod.

Ezután felviszed a számlákat egy oszlopba, pl. az A oszlopba.

Az összeget helyezzük el a D1 cellába.

A D1 cella képlete =SZORZATÖSSZEG(A1:A100;B1:B100)  - magyarázat alább lesz. 

Ezután meghívod a Solvert:

Adatok - Solver (a menüszalag végén lesz).

A megjelenő párbeszédpanel kitöltése:

Célérték beállítása: A cella, ahol az eredményt szeretnéd kapni - a példában D1

Cél értéke: Értéket kiválasztod, a kockába beírod a kívánt értéket.

Változó cellák módosításával: B1:B100

Vonatkozó korlátozások - Hozzáadás  - Cellahivatkozás B1:B100 középre bin - megjelenik a korlátozó feltétel bináris

Hozzáadás. Majd mégse.

Ezután rákattintasz a Megoldás gombra.

Ha van olyan kombináció, amely kiadja a pontos összeget, akkor a Solver megadja. Ha nincs, akkor variálnod kell a számla összegekkel.... :(

Magyarázat:

A B oszlop a szorzatösszeg súlyait adja, ami vagy 0 vagy 1, attól függően, hogy az A oszlopban levő tétel részt vesz-e az összeg képzésben.

Tehát azok a számlák kellenek, amelyek mellett 1 van a B oszlopban.

Az A - B oszlopot addig kell a képletben figyelembe venni, ameddig az A oszlopban értékek vannak, tehát a 100 helyére az A oszlopban levő utolsó adat sorát kell írnod.

Bocsi, a képen B-C oszlop van és az A1 a cél cella.


Kb. így néz ki az induló állapot.

Az eredmény pedig így:

Remélem sikerül.

Üdv.

Előzmény: Balu424 (37737)
Balu424 Creative Commons License 2023.12.05 0 0 37737

sziasztok

 

Lenne egy érdekes kérdésem. Létezik olyan excel függvény, amely egy adag (pár darabtól max 30 db-ig) értékből összeállít egy olyan számot, amely egyenlő vagy a lehető legközelebb van egy adott számhoz?

 

Kicsit világosabban:  Pályázat bevalláshoz van összegyűjtöttem egy csomó számlát (többet mint kellene). Aztán ma kiderült, hogy az adott támogatási összeget pontosan el kell költeni, nem lehet sem több, sem kevesebb (ez esetben a fennmaradt összeget vissza kell fizetni).

 

Hogyan tudnám összeválogatni a számlákat, hogy az adott érték jöjjön össze (még azért holnap rákérdezek, hogy mekkora a tűréshatár, mert szerintem lehetetlen eltalálni ezt az értéket)

 

Ha szerintetek hülyeség vagy lehetetlen, akkor is írjatok.  Köszönöm.

Tutti a Frutti Creative Commons License 2023.12.04 0 0 37736

Ezt csak most láttam, egy perce küldtem a régire egy levelet.

Előzmény: Garashan (37735)
Garashan Creative Commons License 2023.12.04 0 0 37735

Van egy másik e-mail címem is: a felhasználónevem utána kukaccal a https://garaland.hu/ domain név. Azért írom ilyen f*szul, hogy a keresőrobotok ne spameljék tele.

Előzmény: Tutti a Frutti (37734)
Tutti a Frutti Creative Commons License 2023.12.04 0 0 37734

OK, csak nagyon hirtelen tűntél el, igaz, engem meg a világvégével meg a közelgő karácsonyi lezárásokkal tartottak sakkban.

Most meg a kuglid keményített be, nem engedi megnézni a fájlokat, hogy regisztráljak, meg vegyek új PC-t újabb böngészőhöz, ráadásul a levelezőrendszert spam listára tette, mail egy idő után visszajött "biztonsági okokból" nem írhatok kuglira, más megoldást kell találni.

Előzmény: Garashan (37733)
Garashan Creative Commons License 2023.11.29 0 0 37733

Nem igazán szokásom minuszolgatni, az nem tőlem jött. Általában egy-egy plusz szoktam nyomni egy beszélgetést lezáró utolsó kommentre, ami hozzám szól.

Ilyen esetben, amúgy bátran lehet keresni emailben is engem. Publikus az email címem.

Előzmény: Tutti a Frutti (37732)
Tutti a Frutti Creative Commons License 2023.11.29 0 0 37732

Köszönöm, majd megnézem.

 

Csak furcsa volt, hogy többet egy betűt se írtál, és jött egy minusz, az volt a látszat, hogy megsértődtél és elvonultál. ;)

Előzmény: Garashan (37718)
Garashan Creative Commons License 2023.11.28 0 0 37731

Frissítettem a dokumentumot.

Most már lehet bejegyzéseket létrehozni, valamint működik a fájlba való kiírás is.

A link továbbra is a következő: https://drive.google.com/file/d/1-obXBrYV2VRf-9EyDhNR36O7wnemL6Uf/view?usp=sharing

 

Egyelőre 1 db felhasználó "van regisztrálva" Teszt Elek néven. A próba adatok során viszont lett egy "Kis Béla" és egy "Józsi" is.

 

Nézd meg, hogy ilyenre gondoltál-e, illetve, hogy van-e értelme tovább fejleszteni a munkafüzetet.

Előzmény: Garashan (37718)
A.Feri Creative Commons License 2023.11.28 0 0 37730

Szia! 

 

Sikerült megcsinálnom, de nem tudtam még a korcsoportos keresést is megcsinálni.

Ezt még gyakorolnom kell! :) 

 

Köszönöm a segítséget! 

A.Feri Creative Commons License 2023.11.28 0 0 37729
pimre Creative Commons License 2023.11.28 0 3 37728

Szia, ha van felhő tárhelyed pl. Google Drive, vagy Microsoft Onedrive, akkor fel tudod másolni, és a linket elküldeni. Ha ez nem megy, akkor kattints a nevemre, ott megtalálod az email címemet - Ami nálam nyilvános- , és oda is tudsz küldeni levelet, és tudod csatolni a fájlt.

 

Még valamit: Ha válaszolsz egy hozzászólásra, akkor az adott hozzászólás jobb oldalán találsz egy visszahajló nyilat, és erre kattintva kiderül, hogy melyik hozzászólásra válaszolsz.

 

 

Itt most még könnyű áttekinteni, de hosszabb beszélgetésnél sokat segít, ha látjuk, hogy kinek válaszolsz. Előre is kösz, ha erre figyelsz.

Előzmény: A.Feri (37727)
A.Feri Creative Commons License 2023.11.27 0 0 37727

Köszönöm szépen a segítséget! 

 

Nem sikerült még, de biztos én hibáztam valamiben! 

Elküldeném a dokumentumot, de nem tudom ide cstolni! 

 

Még átnézem, hol hibáztam

 

 

pimre Creative Commons License 2023.11.27 0 0 37726

Egyszerűsítés:

 

Átgondoltam, és végső soron nem is szükséges új munkalapra írni a súlyhatárokat. Írhatod őket a táblázatod utáni részbe, mondjuk az AA és AB oszlopokba. Ezzel egyszerűbb is lesz a képlet:

 

=XKERES(H2;$AA$2:$AA$12;$AB$2:$AB$12;;1;1)

 

 

Előzmény: pimre (37724)
Fferenc50 Creative Commons License 2023.11.26 0 0 37725

Szia!

Nézd meg légy szíves az FKERES függvényt. A súlyhatárokat nagyság szerint rendezed és mellé a súlykategóriát.

Ezután az FKERES negyedik paraméterét 1 -re (vagy IGAZ-ra) állítva megkapod a kért eredményt.

A táblázat kb. így néz ki (csak egy példa):

Üdv.

Előzmény: A.Feri (37721)
pimre Creative Commons License 2023.11.26 0 0 37724

A feladatot meg lehetne oldani nagyon bonyolult, egymásba ágyazott HA függvényekkel. Nem javaslom, mert áttekinthetetlen lenne.

 

Viszont megoldható egy segédtáblázattal, amelynek segítségével az XKERES függvény intézi a besorolást. A teendőd a következő:

  

1. Hozz létre a munkafüzetben egy másik munkalapot. Én ezt Súlycsoportoknak neveztem. Ebbe sorold fel a súlycsoportokhoz tartozó súlyhatárokat (szerintem az első - a 20-as akár el is maradhat, hiszen ez alattit nem vesztek figyelembe.:

 

 

Az utolsó adat a 200 helyett olyan érték legyen, amit biztos nem ér el senki.

 

 

2. Az alaptáblázatban pedig az SCs oszlopba ez a képlet kerüljön: =XKERES(H2;Súlycsoportok!$A$2:$A$12;Súlycsoportok!$B$2:$B$12;;1;1), amit aztán húzz lefelé az összes versenyző SCs oszlopában.

 

Tesztelten a lenti példákon. Működik:

 

 

 

Előzmény: A.Feri (37721)
A.Feri Creative Commons License 2023.11.26 0 0 37721

Elnézést ha nem voltam konkrétabb! 

 

 

Súlyemelő verseny jegyzőkönyvet szerkesztek.

Vannak pl nőiversenyzők, és súlycsoportok szerint vannak csoportosítva.

Amennyiben egy sportolót bemértünk és a testsúlya mondjuk 39,5 kg akkor a súlycsoportja 40kg! Amennyiben a testsúlya 40,01 kg, akkor a következő súlycsoportba kell sorolnia. 

 

Milyen függvénnyel tudom automatizálni a táblázatomat? 

 

 Köszönöm

 

pimre Creative Commons License 2023.11.26 0 0 37720

Nekem ebből nem derül ki, hogy mit is szeretnél. 

Talán egy olyan táblázatra gondolsz, ahol az oszlopokban vannak a súlycsoportok, és a sorokban a résztvevők?

És azt szeretnéd, hogy a résztvevők súlyát beirva automatikusan jelenjen meg, hogy melyik oszlopba (súlycsoportba) tartozik?

Előzmény: A.Feri (37719)
A.Feri Creative Commons License 2023.11.26 0 0 37719

Szia!

 

Segítséget kérnék, egy súlycsoport meghatározó táblázat létrehozásában. 

Példa: 

 

Súlycsoportok: 

 

Női serdülő 

36

40

45

49

55

59

64

71

76

+76

 

A súlcsoportok 20 tol 36ig; 36,01 töl 40ig... 

 

Köszönöm

 

 

Garashan Creative Commons License 2023.11.23 0 0 37718

Szia!

Kicsit elfoglalt voltam az elmúlt 2 hétben. Elnézésedet kérem. Ma nekiálltam és a címke kezelő részt elkezdtem csinálni.

Valami hasonló kinézetet tudnék az egésznek elképzelni.

https://drive.google.com/file/d/1-obXBrYV2VRf-9EyDhNR36O7wnemL6Uf/view?usp=sharing

A két fájlnak egy mappában kell lennie. Illetve a database nevű fájl nem is nevezhető át más névre.

A makró a kék "körre" kattintva indítható. Nyilván a makrók futtatását engedélyezni kell.

Tartalmaz néhány minta adatot. Az adatok elején lévő számmal nem kell foglalkozni, az az úgynevezett ID, az minden esetben egyedi és nem is ismétlődhet. Csak azért jelenítettem meg, mert így egyszerűbb elvégezni az adatbázis műveleteket. Ellenben ha zavaró, akkor meg tudom oldani másképpen is.

 

Az "Új" gombra kattintva tudsz létrehozni új címkét. Minimum 3 karakternek kell lennie a címke nevének. A címkék nem ismétlődhetnek.

Az "Átnevezés" gombra kattintva tudod átnevezni a címkét. Ha véletlenül kattintasz rá, akkor be kell írni a címke mostani nevét és akkor nem nevezi át. Itt is érvényes, hogy nem egyezhet meg másik címkével, illetve minimum 3 karakternek kell lennie.

A "Törlés" gombra kattintva tudod törölni a címkéket. Feldob egy figyelmeztetést, hogy a művelet nem vonható vissza és mindenhonnan törli a címkét. Vagyis nem csak a címkét törli, hanem az összes hivatkozást is, ami rá mutat. Ilyen hivatkozás például az adott bejegyzéshez hozzárendelt címke is.

 

Ha te is ilyesmire gondoltál, akkor majd folytatom.

 

A bejegyzésekhez egyelőre 4 mezőt hoztam létre.

-ID: egy belső azonosító szám

-szoveg: maga a bejegyzés szövege

-datum: a bejegyzés dátuma (itt megbeszélés tárgya, hogy kézzel legyen beállítható, vagy a létrehozás dátuma kerüljön ide)

-letrehozo: a bejegyzést létrehozó felhasználó neve (ha nincs ilyenre szükség, akkor törölhető is)

Előzmény: Tutti a Frutti (37717)
Tutti a Frutti Creative Commons License 2023.11.23 -1 0 37717

Ennyi?

 

Előzmény: Garashan (37696)
Gaben16 Creative Commons License 2023.11.23 0 0 37716

A Onedrive-s megosztás nem az igazi, mert a megosztott linkre kattintáskor a webes Excel indul el.  Ami egyrészt eléggé korlátolt, másrészt azonnal ment mindent, és a felhasználók ezt nem igazán szeretik, én sem.

Azt meg lehet oldani, hogy onedriveos megosztott excel file Excel 365 vastag klienssel legyen szerkeszthető?

Előzmény: Fferenc50 (37715)
Fferenc50 Creative Commons License 2023.11.23 0 0 37715

Szia!

A Onedrive a felhőbeli tárhely, azt tudja mindenki látni, akár egyszerre is módosítani. 

Üdv.

Előzmény: Gaben16 (37714)
Gaben16 Creative Commons License 2023.11.23 0 0 37714

Hogyan lehet egy, a munkahelyem lokális hálózati meghajtóján lévő Excel táblázatot közös használatra megosztani? Az Excel korábbi verzióiban ez működött, de most egységesen az Excel 365 verzió lett telepítve. Ebben már nem jön fel csak a megosztás megosztásának a megszüntetése. Csak Onedrive meghajtón engedélyezné, de az nem lenne a legjobb. Van valami megoldás?

kiki71 Creative Commons License 2023.11.14 0 0 37713

Hamis helyére egyszerűen csak B. Egyenlőség az elmondásod szerint kizárva, tehát felesleges az újabb ha függvény.

Előzmény: Fferenc50 (37712)
Fferenc50 Creative Commons License 2023.11.14 0 0 37712

 

Előzmény: Fferenc50 (37711)
Fferenc50 Creative Commons License 2023.11.14 0 0 37711

Szia!

Mit értesz azon, hogy nem működik? Helytelen adatot ír ki vagy hiba az eredmény?

Milyen Excel verziót használsz?

Magyarban magyar függvénynevet (HA) használj.

A határolójel lehet, hogy nem vessző, hanem pontosvessző.

Stb... 

Magyarban ez =HA(G1>H1;"A";HA(H1>G1;"B")) működik.

Még egy kis segítség:

Ha a szerkesztősorban az fx-re kattintasz, akkor megmutatja a függvény állapotát és beírhatod a jó értékeket:

Üdv.

Előzmény: MM10 (37710)
MM10 Creative Commons License 2023.11.14 0 0 37710

Sziasztok.

 

Egy egyszerű if képletről lenne szó amivel problémába ütköztem.
Először is azt szeretném kérdezni,ez így miért nem műkődik? =IF(g1>h1,"A",IF(h1>g1,"B"))

 

illetve ha ezt így nem tudom megoldani,akkor hogyan tudnám? g1 és h1 semmilyen esetben nem lehet egyenlő,így annak a beépítésére nincs szükségem a képletben

 

előre is köszönöm a segítséget

 

Tutti a Frutti Creative Commons License 2023.11.12 -1 0 37709

Hát, vannak fenntartásaim, programozók állandóan azt bizonygatják, hogy mit nem lehet megoldani adatbázissal, de ha meggyőzöl, nézzük meg, mire jutunk. :-))

 

Irj egy rövid példát, hogy te hogyan gondolod a gyakorlatban, vagy Te írtál egy nagyon "lebutított" vázlatot, vagy én bonyolítom túl a végtelenségig.

 

Igen, csak szöveges adatról van szó, csak az embereknél kellenek kapcsolódó adatok, mint elérhetőség (jellemzően mél cím, vagy mobiltelefon), illetve a munkaköre. Valamint az egyéb adatok, hogy adott feladattal megbízott személy, vagy adott főnök rokona, vagy más cégnél lévő üzleti kapcsolata, de azok talán első körben nagyon bonyolultak lennének.

 

Az jutott még eszembe, hogy a "jegyzőkönyv" két részből áll, az egyik, amit írtam, kezdettől zárásig leírás, hogy mi történt és kik szóltak, hozzá, valamint az is benne van, hogy a gyűlés közben mely fontos személy jött, vagy ment el. Mellette van egy jelenléti ív, amit mindenki aláír, aki ott volt, de a leírásban látható, ha az illető csak pl. tíz percre ugrott be, mert egy kérdésben szükség volt rá, a többi nem érdekelte.

Előzmény: Garashan (37696)
Andyyy42 Creative Commons License 2023.11.12 0 0 37708

Szia,

az átméretezés rendben működik, köszönöm szépen! :)

A szűrök viszont nem frissülnek vmiért, nem követik le a táblázat adatait. :-(

 

Ellenben ha minden táblázat átméretezés után, makróval feldobálom a szűrőket, akkor az úgy igazából rendben működik, kivéve azt a kis optikai problémát, hogy így lehetnek nagy szűrőkben egy-egy gombok csak, de az alapjuk viszont megmarad nagynak. De ezt a részét el tudom igazából most már engedni :-) Mégsem annyira néz ki rosszul, mint azt elsőre gondoltam.

 

Szóval köszönöm szépen! 
Így már elboldogulok szerintem:-)

 

Mindenkinek köszönöm még1x! :-)

 

Szép vasárnapot!

Előzmény: Fferenc50 (37706)
Fferenc50 Creative Commons License 2023.11.11 0 0 37707

Szívesen.

Előzmény: Ketele69 (37705)
Fferenc50 Creative Commons License 2023.11.11 0 0 37706

Szia!

A szűrés újrafuttatása előtt nem kell szerintem törölni a Rendszerezett Adat munkalapon levő táblázatot

Ezt a makrót futtasd a szűrés után:

Sub modos()
With Munka2.ListObjects("Táblázat1")
If Munka2.Cells(Rows.Count, 1).End(xlUp).Value <> "" Then
.Resize Range(.Range.Cells(1, 1), Munka2.Cells(Munka2.Cells(Rows.Count, 1).End(xlUp).Row, _ .Range.Columns.Count))
Else
.Resize Range(.Range.Cells(1, 1), .Range.Cells(1, 1).End(xlToRight).End(xlDown))
End If
End With
ActiveWorkbook.SlicerCaches("Szeletelő_Eladó_Megye").RequireManualUpdate = False
End Sub

Az első rész hozzáigazítja a táblázatot az újra szűrt adatokhoz. Az utolsó sor pedig frissíti a Slicereket.

Megjegyzések:

1. Munka2 = a Rendszerezett Adat munkalap programozási neve (Codename), használható a Sheets("név") helyett.

2. A "With --- End With között részben a With sorban levő objektumra hivatkozhatunk a . (pont)-tal. Rövidebb és gyorsabb is a programirás és futás.

3. A Resize változtatja meg a táblázat méretét 

Remélem sikerül, amit szeretnél.

Ha kérdésed lenne, írj bátran.

Üdv.

Előzmény: Andyyy42 (37704)
Ketele69 Creative Commons License 2023.11.11 0 0 37705

Köszönöm szépen, remekül működik!

 

Előzmény: Fferenc50 (37695)
Andyyy42 Creative Commons License 2023.11.11 0 0 37704

Szia,

 

Itt egy példa, gyorsan netről szedtem le egy adatokkal lévő excelt.
(Fórum példa)

Szóval az "Alap Adat" fülre töltjük be a rendszerből kiimportáld adatokat, excelbe tölti le, értékként. (AlapAdat 5000 sor + 57 oszlop)
Ez a példában 57 oszlopból áll.

A "Rendszerezett Adat" fülön már történt egy irányított szűrés, hogy csak azokat hozza át amiben "Tehermentes" és "Légzsák" "IGAZ", de csak az 57 oszlopból nekem elég 8 oszlop adatsora, a többi felesleges. (Így  a Rendszerezett Adat 1229 sor + 8 oszlop) 

Az így kapott "letisztított adatsorban" kell különböző szeletelőket használnom, példában 3-at. (Eladó Megye + Beadás Nap Neve + Beadás Hónapja)

És ezeket használva szűrünk ki adatokat. 
Ezek a szeletelős megoldás azért kell, hogy aki nem ért az excelhez, az is tudja a szeletelőkkel szűrni az adatokat. (Az alapadatot VBA - makróval töltetem be - szóval az egy gombnyomás nekik + az irányított szűrést is makrógombbal oldom meg, az a második gombnyomás nekik)

 

Ahhoz, hogy szeletelőim legyenek, az irányított szűréssel megkapott adatsort táblázattá kell alakítanom előtte.


Na ez így rendben is van eddig.

 

De ha holnap új adatsort töltök be az Alap adat fülre, akkor borul minden.
(Fórum példa2)
AlapAdat 50 sor + 57 oszlop
Rendszerezett Adat az irányított szűrést követően 11 sor + 8 oszlop

 

És így ekkor a szeletelelőkben megjelent az "üres" adatra szűrés opció, mivel a táblázat megtartotta az eredetei méreteit, amit a szeletelők továbbra is kezelnek.
És ezekre nem lenne szükségem. Ez történik, ha korábban nagyobb adat volt benne és az új adatbetöltésnél kevesebb adatsor szerepel.

És küldök egy harmadik verziót is (Fórum példa3), amikor korábban kevesebb adat szerepelt benne, de aztán több adatsor került betöltésre.
Itt sem működnek jól a szeletelők, mert csak az eredeti táblázat méretében lévő adatokat szűrik, holott most több adatot hozott az irányított szűrés.


https://data.hu/get/13947523/Forumra_pelda.xlsx
https://data.hu/get/13947524/Forumra_pelda2.xlsx
https://data.hu/get/13947525/Forumra_pelda3.xlsx

 

Előzmény: Fferenc50 (37699)
Fferenc50 Creative Commons License 2023.11.11 0 0 37703

Szia!

Nekem úgy tűnik, hogy a Slicernek nincs automatikus méretezése sajnos.

Így minden Slicert nekünk kell méretezni.

Üdv.

Előzmény: Andyyy42 (37702)
Andyyy42 Creative Commons License 2023.11.11 0 0 37702

"Alapvetően nekem az kellene, hogy a 2-es munkalapon lévő adat (ami táblázat formátumban van) lekövesse a forrásadat változásait (1-es munkalap), mind tartalomban, mind méretben"
- azzal kiegészítve, hogy ugye nem kell minden oszlop a 1-es munkalap adataiból, csak egy része (erre használom az irányított szűrőt)

Előzmény: Andyyy42 (37701)
Andyyy42 Creative Commons License 2023.11.11 0 0 37701

Alapvetően nekem az kellene, hogy a 2-es munkalapon lévő adat (ami táblázat formátumban van) lekövesse a forrásadat változásait (1-es munkalap), mind tartalomban, mind méretben

 

Szóval valahogyan összekapcsolni őket.

 

Egyébként úgy megcsináltam, hogy a 2-es munkalapon sima Fkeresel bekerestem az 1-es tábla adatait, de így ugye kénytelen voltam a 2-es tábla függvényeit oszloponként nagyon sok celláig lemásolni, mivel nem ismerem előre, hogy az 1-es munkalapban mekkora adat lesz

így viszont a 2-es munkalap rengeteg üres cellát hoz eredményül, amit optikailag el tudok tüntetni, hogy ne látszódjon, de a slicer viszont érzékeli őket, mint üres cella = üres adat és beteszi opciónak, mint szűrőfeltétel és az is hülyén néz ki

Előzmény: Andyyy42 (37700)
Andyyy42 Creative Commons License 2023.11.11 0 0 37700

erre én is gondoltam már és ez lesz akkor, ha mást nem tudok/tudunk kitalálni
Csak ezzel azért nem tökéletes mert a slicer-ben lévő szűrési "gombok" száma, függ attól, hogy a szűrendő adatban mennyi féle különböző adat van
(például 1-12-ig is lehet, ha csak a hónapokat vesszük).

És ugye makróval nem tudom a slicer méretét a benne lévő gombok darabszámohoz igazaítani, csak egy fix méretre tudom elkészíteni őket a makróval, így viszont minden slicert mindig a lehető legtöbb opcióhoz kell méreteznem, mert nem tudhatom előre mennyi "gomb" lesz majd benne.

 

Így alakulhat olyan szitu, h nem fog jól kinézni, mert egy baromi nagy slicerben lesz 2 gomb.

 

De alapvetően ez lesz egyébként, ha máshogy nem megy.
(csak szeretném, ha igényesen is nézne ki, a funkció mellett :-) )

Előzmény: _Nyuszi (37698)
Fferenc50 Creative Commons License 2023.11.11 0 0 37699

Szia!

"Az egyik munkalapon rendszerből lekért adatsor van (nem táblázatos formában), különböző adatokkal."

Ez milyen módon kerül a munkalapra, milyen lekérdezéssel? 

A lekérdezett adatok mindegyikére szükség van a későbbiekben?

Irányított szűrés helyett nem lenne jobb egy kimutatás létrehozása, amit a forrás változása esetén csak frissíteni kell? A kimutatáshoz ugyanúgy lehet slicereket létrehozni.

Esetleg egy mintafájlt adhatnál - természetesen nem éles adatokkal - , amivel esetleg jobban tudnánk gondolkodni.

Üdv.

Előzmény: Andyyy42 (37697)
_Nyuszi Creative Commons License 2023.11.11 0 0 37698

Hülye ötlet, de...

Mi lenne, ha a makró futtatásakor a slicereket törlöd és újra létrehozod? Nem a slicer lesz dinamikus, de így le tudod követni a változásokat.

Az ötlet elméleti, sosem használtam őket (sőt, az angol nevét sem, rá kellett keressek, hogy miről van szó), de ez működhetne, nem?

Előzmény: Andyyy42 (37697)
Andyyy42 Creative Commons License 2023.11.11 0 0 37697

Sziasztok,

 

A lentiekre lenne vkinek  megoldása?

 

Van egy excel munkafüzet, két munkalappal
Az egyik munkalapon rendszerből lekért adatsor van (nem táblázatos formában), különböző adatokkal.
Ez az adatmennyiség minden egyes lekérésnél módosul.
(Ezen a munkalapon van még hozzáadott oszlop, ami a bekért adatokból nyer ki további infókat.)


A másik munkalapon már csak azokat az adatokat jelenítem meg, ami nekünk kell, ezt irányított szűrővel teszem meg (makrósítva).
Aztán a leszűrt adatmennyiséget táblázattá alakítva 4-5 hozzáadott slicer-rel használjuk.

Szóval a második munkalapon, már az eredeti adat egy leszűkített változata szerepel, amiben slicer-rekkel "kedvünkre" tudunk további szűréseket végezni.

 

És itt jön a probléma:
Amennyiben változik az alap adatmennyiség az első munkalapon (ez lehet több is vagy kevesebb is, szóval nem folyamatosan nő), a második munkalapon lévő makrósított irányított szűrő nem tudja lekövetni, hiszen a slicerek miatt azt az adatsor táblázattá kellett alakítani.

Amennyiben nem alakítom táblázattá, akkor ugye le tudom követni az irányított szűrést a makróval, de akkor meg nincsenek meg a  slicer-ek, hiszen azok táblázathoz kapcsolódnak.

Illetve fontos kritérium a második munkalapon ne maradjanak üres sorok, hogy a slicerek ne hozzanak üres mezőre történő szűrési opciót.
azaz, ha az irányított szűrés után a leszűrt adatom 10 soros, akkor a slicerek azt lekövessék, ha 100 soros, akkor a slicerek, azt kövessék le.

És mindezt automatizálva kellene megoldani, hogy az excel az első munkalapra befrissített adat után, a második munkalapon a már irányított szűréssel leszűrt adatokat mutassa, és az ehhez tartozó slicerek is módosuljanak (például, ha hónapban csak két hónap van akkor csak azt a két hónapot hozza fel a sliceren belül, ha 12 hónap van, akkor meg mind a 12 hónapot)

 

 

Szóval az kellene, hogy az első munkalapra betöltött változó adatmennyiséget a második munkalap mindig lekövesse, de táblázat formában, hogy a slicerek is dinamikusak maradjanak.

Ez megoldható?

 

 

Garashan Creative Commons License 2023.11.10 0 0 37696

Szeretem a kihívásokat!

Ha gondolod és pontosítunk, hogy mit is szeretnétek pontosan, akkor Excelben megpróbálom megoldani a problémátokat.

Van gyakorlatilag kész makróm, amivel Access adatbázist tudok manipulálnia. Kiolvasni, hozzáírni.
Ha megbeszéljük, hogy pontosan mihez, milyen adatokat szeretnétek elmenteni kereshetően, akkor nem olyan nagyon bonyolult a dolog. A lényeg, hogy jól legyen felépítve az adatbázis szerkezete.

 

Ha jól értem, akkor egy gyűlésnél több bejegyzés is születik. Mindegyik kap egy az adott gyűlésre jellemző címkét.

Úgymond a fő bejegyzés kb. a mikor, hol és kik voltak jelen valamint a napirendi pontok felsorolásából áll.

Utána napirendi pontonként külön bejegyzések jönnek. Ez már két címkét kap. Az egyik a gyűlés címkéje, a másik az adott napirendi pontra jellemző címke.

Ezzel le is zártuk úgymond az első körös adatrögzítést.

Majd pl. amikor jön egy e-mail Józsi bácsitól az elektromos kapu javításával kapcsolatban, akkor az rögzítésre kerül a saját címkéjével. Ami már létezik, mert a gyűlésen szó volt róla, hogy meg kell javítani.

A címkékre tudunk szűrni adatbázisban, mert akkor azok egyediek lennének. A szűrés eredményeit pedig ki tudjuk írni egy sima TXT fájlba. Így ha a közgyűlés "jegyzőkönyve" kell, akkor a gyűlés címkéjére keresünk rá és akkor gyakorlatilag a bevezetőt és a napi rendi pontokat is kiírná a fájlba. De ha az elektromos kapu javításának a folyamata érdekes számunkra, akkor annak a címkéjére keresünk rá. Ekkor csak a közgyűlés adott napirendi pontja kerülne a fájlba írásra, ahol erről volt szó, valamint Józsi bácsi árajánlata. Ha pedig már kivitelezésre is került és ez rögzítésre is került az adatbázisban, akkor természetesen az is bele lenne írva. Utána azt a fájlt ki tudnátok nyomtatni.

Az egyszerűség jegyében csak szövegszerű tartalmakat tudna kezelni. Amennyiben fontos lenne, hogy pl. képeket is tudjon kezelni, akkor lehet, hogy az is megoldható, de az már bonyolítja a helyzetet, mert akkor már nem elég sima txt fájlba kiírni a keresés eredményeit.

Előzmény: Tutti a Frutti (37692)
Fferenc50 Creative Commons License 2023.11.10 0 0 37695

Szia!

Egy segédoszlopot feltöltesz egyesekkel (1). Nálam ez az AC oszlop, a sorszám az AD oszlopban van.

Ezután a sorszám oszlopban a képlet:

=RÉSZÖSSZEG(109;$AC$1:$AC2)

Ezután bekapcsolod a szűrőt, (itt a dátum 2021) az eredmény:

A RÉSZÖSSZEG függvény 109-es paramétere ugyanis csak a szűrt tartományra érvényesíti az összesítést.

A segédoszlop természetesen a táblázattól függetlenül és elrejtve is működik, arra vigyázz, hogy a szűrés érvényesüljön rá.

Üdv.

Előzmény: Ketele69 (37694)
Ketele69 Creative Commons License 2023.11.10 0 0 37694

Sziasztok!

 

Van egy adatbázisszerűen felépülő táblám, az oszlopfejlécekben autószűrővel. Az első oszlop sorszám. Ha leszűröm az adatokat a sorszám persze elállítódik. Létezik megoldás arra, hogy a sorszámozás mindig  frissüljön a szűrésnek megfelelően?

 

Köszönöm,

 

local75 Creative Commons License 2023.11.10 0 0 37693

Bármelyik rendszer is volt az, a titkárnőn nagyon sok múlott.

Amit felsoroltál, azt mind meg lehet csinálni Excelben, vagy például a Trelló segítségével.

A felhasználón múlik hogy mit hoz ki a rendszerből, és mennyire alapos.

 

Előzmény: Tutti a Frutti (37692)
Tutti a Frutti Creative Commons License 2023.11.10 0 0 37692

Megnyugodtam, hogy nem bennem van a hiba, mert látom a későbbi hozzászólásokból is, hogy egészen másmiről írnak.

 

Biztos, hogy nem adatbázis volt, Access-t többször, mysql-t egyszer láttam, azt csak programozó tudja kezelni, aki nagyon utálja az egyedi feladatokat.

 

Leírtam, hogy mit láttam, de álljon itt újra, hátha segít:

 

Először nekiült és begépelte az aznapi gyűlést, hogy mikor és hol volt és kik voltak jelen, mik voltak a tervezett napirendi pontok, majd napirendi pontonként az egyes résztvevők beszámolóit, majd a kérdéseket és válaszokat.

 

Ezt szövegfájlként kinyomtatva eltette.

 

Majd, amikor valamit kérdeztek tőle, hogy pl. fél éve volt valami feladat, és az hogyan áll, akkor matatott valamit, majd kinyomtatott egy olyan szövegfájlt, amiben már az szerepelt, hogy pl. fél éve egy gyűlésen döntés volt valamiről, majd egy héttel később hasonló gyűlésen másik döntés volt a résztvevőkről és költségvetésről, stb. és még olyanok is voltak, hogy pl. Piftuka egy ismerőse telefonált valamikor, hogy megszerezte a kért dolgot és küldi postán Piftuka részére a céghez utánvétellel, stb.

 

Tehát az egész úgy nézett ki, mintha egy szövegfájl lenne, de minden bekezdés a különböző gyűlések bekezdéseiből és más, csak általa ismert dolgokból - pl. telefonüzenet, vagy postai küldemény - állt.

 

Biztos, hogy nem programozott semmit, csak a különböző szövegeket látta, ezért volt a tipp, hogy valami iktatórendszer lehetett - csakhát iktatórendszerbe csak postát és üzeneteket irnak, gyűlések jegyzőkönyveit nem.

Előzmény: Garashan (37681)
Fferenc50 Creative Commons License 2023.11.10 0 0 37691

Induló ablak

Eredmény:

Előzmény: Fferenc50 (37690)
Fferenc50 Creative Commons License 2023.11.10 0 0 37690

Szia!

Fejlesztőeszközök-Excel bővítmények - bepipálod a Solver bővítményt.

Ezután az Adatok menücsoportban megjelenik a Solver.

Előkészítés a Solver használatához:

1. Egy üres munkalap A oszlopába átmásolod az adott nyitott értékeket.

2. A munkalap B oszlopába kerülnek a súlyok - 0 vagy 1 lesz az értékük, most hagyd üresen.

3. A munkalap C1 cellájába kerül ez a képlet: =SZORZATÖSSZEG(A1:A5;B1:B5)

Rákattintva párbeszéd panelt kapsz, így néz ki a példámmal kitöltve:

 

Tehát a Solver a B oszlop celláit fogja 0 és 1 értékre állítani, annak érdekében, hogy a C1 cella értéke a megadott legyen.

A korlátozásokat a Hozzáad gombbal tudod bevinni, FONTOS hogy bináris legyen a korlátozás.

A megoldás gombra kattintva megmutatja az eredményt - vagy azt mondja, hogy nincs megoldás.

Ha van megoldás, ezt látod:

Remélem, sikerül megoldanod.

Üdv.

Nyáúkász Creative Commons License 2023.11.10 0 0 37689

Sziasztok!

Tudnátok segíteni, hogy hogy tudnám megtekinteni, hogy egy összeg milyen elemekből áll?
Egyik partnerünk kifizette néhány számláját, de csak a végösszeget látom, és szeretném tudni, hogy ez a végösszeg pontosan milyen elemekből tevődik össze?
Tehát van esetleg arra lehetőség, hogy lehívom a nyitott tételek listáját, és valahogy lekérem belőle azon összegek kombinációját, amik kiadják az utalt végösszeget?

 

Előre is köszönöm!

Eredő Vektor Creative Commons License 2023.11.07 0 0 37688

Ez adatérvényesítéssel lehetséges szerintem. Ugyanis az adatérvényesített celláknál be lehet "karikázni" az érvénytelen adatot tartalmazó cellákat.

Előzmény: Ketele69 (37686)
Fferenc50 Creative Commons License 2023.11.07 0 0 37687

Szia!

Szerintem ikonkészlettel csak egymáshoz viszonyított relatív értékeket/adat sávokat lehet feltételes formázással megjeleníteni, egy adatkörön belül, ugyanúgy, ahogyan színskálákkal is.

Képlet esetén ikon lehetőséget nem látok. 

Üdv.

Előzmény: Ketele69 (37686)
Ketele69 Creative Commons License 2023.11.06 0 0 37686

Sziasztok!

Feltételes formázás/ikonkészlet/képlettel témakörben kérnék tanácsot.

 

Az "A" oszlopban kizárólag azokat a cellákat szeretném megjelölni pl. egy piros körrel, melyek megfelelnek annak a kritériumnak, hogy =ÉS(B$1>0;A$1>B$1)

 

Tudom, hogy van más módszer, amivel kijelölhető/színezhető az egész cella, de most kifejezetten arra vagyok kíváncsi, hogy ez ikonkészlettel megoldható-e?

 

Köszönöm,

local75 Creative Commons License 2023.11.06 0 0 37685
local75 Creative Commons License 2023.11.06 0 0 37684

Nem tudom jól hámoztam-e ki a mondandódból, de azt gondolom a Trello a segítségetekre lehet.

 

Bár mostanában már nem igazán használom, helyette Figmát használok jegyzetelésre, és mindenre is.

Csapatmunkára a legjobb választás mindkettő.

Érdemes elmélyülni bennük. PC-re, iPadre, mobilra is elérhető mindkettő. A FigJam-ben pencillel is jegyzetelhettek, és valós időben láthatjátok egymás tevékenységét.

A printelés módját, és lehetőségét ellenőrizni kell, ha ez fontos.

Előzmény: Tutti a Frutti (37678)
hellsing Creative Commons License 2023.11.04 0 0 37683

Szerintem egy ticketing rendszer kell nektek. Alapból ügyfélszolgálatoknak találtak ki, de ezeket használják a szoftverek hibakövetésére is (pl. Bugzilla). Ezekbe bárki (jogosult) felvihet témákat, hozzárendelhet felhasználókat, akik kommentelhetik, vagy rögzíthetik a jegy státuszának változásait (pl. új hiba, személyhez rendelve, több infó kell, javítva, ellenőrizve stb.) vagy bármilyen más munkafolyamat lépéseit.

 

Ha van belső szerveretek, még külsős tárhelyet sem kell bérelni, mert alig kell erőforrás. Ha nincs, az sem  katasztrófa, kb. évi 10-20eFt-ból megvan. A szoftverek, amelyeken fut, mind ingyenesek (Apache webszerver, MySQL adatbázis). A fejlesztés tényleg sokba kerülhet, de ha nem akartok sok extra fícsört, akár nevetségesen olcsó is lehet (a CodeCanyon-on pl. 16$-tól vannak kész rendszerek). Már csak kell valaki, aki párszor ennyiért telepíti és beállítja.

Előzmény: Tutti a Frutti (37678)
_Nyuszi Creative Commons License 2023.10.31 0 1 37682

Neked válaszolok, hogy egyben maradjon a thread, de a vitaindítóhoz szól:

Webes fórum, mint pl. ez?

Egy ingyenes weboldal ingyenes fórummotorral, ahol tudsz tagelni (akár szögletes zárójellel, akár hashtaggel), és arra keresni.

Ezt egyszerre többen is tudjátok szerkeszteni, rendezhető, törölhető, kereshető.

Előzmény: Garashan (37681)
Garashan Creative Commons License 2023.10.30 0 0 37681

Az első bekezdésre reagálva, azért nem annyira drága a dolog. Lehet bérelni is tárhelyet.

 

Én elvesztettem a fonalat, hogy pontosan mit is szeretnétek. Szerintem ugyan arról beszélünk amúgy.

Maradva az adatbázisnál, vannak korlátai, de messzemenőleg nem olyan szűkek, mint azt gondolnád. Lehet bennük komplett szöveges dokumentumokat is tárolni. Adattípus szerint 65.000, 16.800.000 vagy 4.300.000.000 karakter tárolására van lehetőség. Ha csak feljegyzéseknek kell, akkor szerintem untig elég a 65.000 is.

Ezt megfelelő programmal pedig úgy jeleníted meg ahogy szeretnéd.

Tovabbá annyi témakört rendelsz hozzá, amennyit szeretnél.

 

Ha DOS-os volt az alap program, akkor szinte biztosan Windowson futott a "megbuherált" változata. A WIN98-ig, ha nem csal az emlékezetem, akkor futott szinte az összes ahhoz képest nem túl öreg dos-os program. Maga a WIN98 is DOS alapú volt még.

Előzmény: Tutti a Frutti (37680)
Tutti a Frutti Creative Commons License 2023.10.30 -1 0 37680

Köszönöm a választ.

Többször ki lettünk oktatva, hogy mi buta felhasználók vagyunk és hülyék az IT-hez, ilyet csak mérnökök tudnak megtervezni és rendszerterv kell hozzá jó sok pénzért és persze felhő meg webszerver, szóval, milliós az induló költség.

 

De az biztos, hogy nem adatbázis, mert ott meg vannak szabva, hogy milyen adatbázisban milyen adatokat lehet bevinni és milyen formában.

Olyat használják külön a pénzügyesek, van külön a könyvelőknek, meg a bérelszámolóknak és vannak, akik excelt használnak rengeteg munkafüzettel.

 

A szuper megoldás az olyan szöveges valami volt, amiben tetszőlegesen tudta összekapcsolni a különböző adatokat, és mindig gyorsan ki tudta deríteni, hogy mi mivel volt összefüggésben.

Ráadásul úgy, hogy egyben voltak a beírások, és mégis, amikor szükség volt rá, akkor a kapcsolatok révén úgy tudta kinyomtatni a különböző beírásokat, mintha egyetlen szövegfájl lett volna.

 

Próbáltunk szöveges fájlokat csinálni, de amikor ötven fölé mentünk, már nem tudtuk, hogy melyikben mi van, és nem lehetett őket összekötni, csak fizikailag másolni a tartalmak egy részét.

 

Félfüllel hallottam, hogy talán valami régi DOS-os, még az 1990-es években kötelezővé tett iktatóprogramnak volt valami megbuherált változata, de biztos, hogy windowsos vagy linuxos volt, nem DOS-os.

 

Hihetetlen dolgokat tudott vele pillanatok alatt kideríteni, csak néztünk.

 

Előzmény: Garashan (37679)
Garashan Creative Commons License 2023.10.28 0 0 37679

Van sejtésem róla, hogy mit is szeretnél. Hogy őszinte legyek nem tudok ilyen jellegű programról.

De el tudok képzelni egy webes programot, ami ezt tudja. Az én olvasatomban ez viszonylag primitív program.

Ha jól értem az kell, hogy legyen egy adatbázis, amiben rögzítésre kerül, hogy ki, mikor, mit és melyik témához ír hozzá. Aminek kell hogy legyen egy rögzítő lapja és egy lekérdező lapja.

Ezt meg lehet oldani PHP és SQL alapon netes felületen. Ennek előnye, hogy ha publikus szerveren van, akkor bárhonnan és bármikor írható/olvasható. Ha helyi hálón van, akkor viszont kell egy szerver, ami ezt kiszolgálja, de "csak cégen belül" lesz elérhető.

Netes alapon egyszerre több eszközön is mehet az adatbevitel és az olvasás is.

 

De egyszerű excel dokumentumban is nyilvántartható. Akkor viszont egyszerre csak egy ember tudja szerkeszteni. (Kivéve Office 365 esetében). Ha vállalati közös tárhelyre van mentve, akkor többen is hozzáférhetnek és többen is szerkeszthetik egy időben. Viszont ügyelni kell rá, hogy ne írják felül egymás adatait.

 

Vagy lehet kombinálni a kettőt. Van egy adatbázis fájl, ami céges szerveren van és az tartalmazza az adatokat. Ehhez hozzá lehet férni excelben írt makrókkal és lehet azokat írni/olvasni.

Előzmény: Tutti a Frutti (37678)
Tutti a Frutti Creative Commons License 2023.10.28 0 0 37678

Előre is elnézést kérek az off témáért, nem találtam megfelelő fórumot és a beírások tömegét olvasva úgy látom, itt az értelem uralkodik, ezért kérdezem:

 

Létezik "elektronikus titkárnő", vagy olyan program, amivel azonnal lehet mindenféle témához hozzáírni az aznapi fejleményeket, és ha kell, témánként látni, hogy csak abban a témában mikor mi történt?

 

Most abba a helyzetbe kerültünk, hogy elvesztettük a titkárnőt, akinek egyetlen jegyzetfüzete volt, abba írt mindent, de utána mégis mindig minden ügyről volt nyomtatott kimutatása, mikor mi történt.

 

Hasonló program kellene, az összejövetelen valaki beírja, hogy adott témákban mi történt, és később a beírásokat már a témákban lehet látni időrendi sorrendben.

 

 

Garashan Creative Commons License 2023.10.25 0 0 37677

Meg itt vagyunk mi is, legalább mi is gondolkodunk problémákon.

 

Igaz a végső megoldáshoz most nem járultam hozzá, mert még úton voltam hazafelé. De ez egy nagyon segítőkész közösség.

Előzmény: kiki71 (37676)
kiki71 Creative Commons License 2023.10.25 0 0 37676

Az előbb küldted már és le is mentettem ezt a linket. Nem  ismertem. :)

Előzmény: Fferenc50 (37675)
Fferenc50 Creative Commons License 2023.10.25 0 0 37675

Szia!

Excel Visual Basic for Applications (VBA) reference | Microsoft Learn

Itt találhatsz elég jó angol nyelvű anyagot a VBA-ról.

Sokat segít még a makró rögzítés is.

Üdv.

Előzmény: kiki71 (37673)
kiki71 Creative Commons License 2023.10.25 0 0 37674

Tökéletesen és gyorsan működik. KÖSZÖNÖM a segítséget.

Dim rng As Range
Set rng = ActiveSheet.UsedRange
With rng
.RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38), Header:=xlYes
End With

Előzmény: Fferenc50 (37672)
kiki71 Creative Commons License 2023.10.25 0 0 37673

Köszönöm. Kipróbálom és jelentkezem. Úgy szoktam meg openai-val :). Sajnos nem nagyon találok neten fellelhető okulási anyagot hozzá. Ezt dobta a gép.

Előzmény: Fferenc50 (37672)
Fferenc50 Creative Commons License 2023.10.25 0 0 37672

Szia!

Miért kell összefűzni, ez rengeteg időt követel. Az ismétlődések eltávolításánál felsorolhatod (akár) az összes oszlopot is:

ActiveSheet.Range("$A$1:$AL$7271").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33 , 34, 35, 36, 37, 38), Header:=xlYes

Így csak azokat a sorokat törli, ahol minden cella tartalma egyezik.

Üdv.

Ps: Próbáld makrórögzítéssel megoldani amit csinálsz kézzel, abból sokat lehet tanulni.

Előzmény: kiki71 (37671)
kiki71 Creative Commons License 2023.10.25 0 0 37671

Nem tudom, hogy egyértelmű volt-e, hogy csak azok a sorok duplikációját kellene teljesen törölni, amelyik soroknál minden cella egyezést mutat egy másik sorral.

Előzmény: kiki71 (37670)
kiki71 Creative Commons License 2023.10.25 0 0 37670

Ezzel próbálkoztam. :)

Dim utolsoSor As Long

utolsoSor = Cells(Rows.Count, "A").End(xlUp).Row
Dim RangeToCheck As Range
Set RangeToCheck = Range("A1:AL" & LastRow)
Columns("AM:AM").formula = "=A1&B1&C1&D1&E1&F1&G1&H1&I1&J1&K1&L1&M1&N1&O1&P1&Q1&R1&S1&T1&U1&V1&W1&X1&Y1&Z1&AA1&AB1&AC1&AD1&AE1&AF1&AG1&AH1&AI1&AJ1&AK1&AL1"
RangeToCheck.RemoveDuplicates Columns:=Array(39), Header:=xlYes ' Az 39. oszlop tartalmazza az egyesített értékeket
Columns("AM:AM").ClearContents

Előzmény: Fferenc50 (37669)
Fferenc50 Creative Commons License 2023.10.25 0 0 37669

Szia!

A Range RemoveDuplicates tulajdonságát használhatod.

Range.RemoveDuplicates method (Excel) | Microsoft Learn

Üdv.

Előzmény: kiki71 (37667)
Garashan Creative Commons License 2023.10.25 0 0 37668

Akkor a kódot kell még optimalizálni.

Előzmény: kiki71 (37667)
kiki71 Creative Commons License 2023.10.25 0 0 37667

Köszönöm. Igen ezt próbáltam már, sokkal gyorsabb lett, mint nélküle, de így is jóval lassab, mint Menüből.

Előzmény: Garashan (37666)
Garashan Creative Commons License 2023.10.25 0 0 37666

A kódot nem ismerve én a következőt mondanám.

 

Rögtön a kód elejére: 

Application.ScreenUpdating = False

Application.Calculation = xlCalculateManual

 

A kód végére pedig:

Application.ScreenUpdating = True

Application.Calculation = xlCalculationAutomatic

 

Ezzel letíltod a képernyő frissítését és átállítod manuális frissítésre a függvényeket.

Majd a kód végén ismét engedélyezed a képernyő frissítését és visszaállítod automatikusra a függvények számolását.

Előzmény: kiki71 (37665)
kiki71 Creative Commons License 2023.10.25 0 0 37665

Jól sejtettem, hogy a dátummal van a gond és az általad átírt kóddal tökéletesen működik (az első változatot próbáltam ki, másik kettőt még meg kell értenem (tanulom a VBA-t)). Köszönöm mindenkinek a gyors segítséget, kb 1hónapja kűzdöttem vele.


Lenne még egy kérdésem esetleg hátha erre is tudtok megoldást:
Ismétlődések eltávolítása nagy adathalmazból.

Volt rá egy kódom amit kiokoskodtam, de nagyon lassú volt. Ugyan ennél az adathalmaznál a Menű -> Ismétlések eltávolítása pillanat alatt megoldotta. Ezt, hogyan lehetne lekódolni, hogy ilyen gyors legyen?

Előzmény: Fferenc50 (37662)
kiki71 Creative Commons License 2023.10.25 0 0 37664

Kipróbálom, Utánna jelentkezem. :)

Előzmény: Fferenc50 (37662)
kiki71 Creative Commons License 2023.10.25 0 0 37663

Ugyanezt a metódust használtam egy másik részen (igazából azt kopiztam le), de ott nem dátumot, hanem szöveget szűrtem és ott is A1-van és ott működik. ezért gondolom, hogy A1-el nincs gond.


Range("A1").Select
If ActiveSheet.AutoFilterMode Then
ActiveSheet.AutoFilterMode = False
End If
ActiveSheet.Range("A1").AutoFilter Field:=4, Criteria1:="*SZÖVEG*"
Dim adatTartomany As Range
Dim masolniTartomany As Range
Set adatTartomany = ActiveSheet.AutoFilter.Range
Set masolniTartomany = adatTartomany.SpecialCells(xlCellTypeVisible)

Előzmény: Eredő Vektor (37661)
Fferenc50 Creative Commons License 2023.10.25 0 0 37662

Szia!

Az alap probléma az, hogy a dátumot az Excel makróban az amerikai "stíl" (MM/DD/YYYYY") szerint kell megadni, bármilyen formátumban és nyelven van is az adott táblázatban. Ez sajnos némi trükközést - függvény többszörözést - igényel. Ráadásul a szűrőben szöveg formátumban használandó. Az általad mutatott feltétel így hozható létre makró által "ehetően":

Dim startDate As String
Dim endDate As String

startDate = Replace(Format(DateSerial(2022, 1, 1), "MM.DD.YYYY"), ".", "/")
endDate = Replace(Format(DateSerial(2023, 1, 1), "MM.DD.YYYY"), ".", "/")
ActiveSheet.Range("A1").AutoFilter Field:=1, Criteria1:=">=" & startDate, Operator:=xlAnd, Criteria2:="<" & endDate

DE létezik ennél egyszerűbb lehetőség is időszakok szűrésére. Ilyenkor a Criteria2 paramétert kell használni az alábbi formátumban:

Also used as single criteria on date fields filtering by date, month or year. Followed by an Array detailing the filtering Array(Level, Date). Where Level is 0-2 (year,month,date) and Date is one valid Date inside the filtering period.

Vagyis 2022 éves szűrés:

ActiveSheet.Range("$A$1").AutoFilter Field:=1, Operator:= xlFilterValues, Criteria2:=Array(0,  "12/31/2022")

Szűrés november-decemberre:

ActiveSheet.Range("$A$1").AutoFilter Field:=1, Operator:= xlFilterValues, Criteria2:=Array(1, "11/30/2022", 1, "12/31/2022")

A szűrendő tartományt természetesen nem árt megadni egzaktul, de az Excel képes "kitalálni", amennyiben pl. az A1 cella része a tartománynak, akkor az egész tartományt fogja szűrni.

Üdv.

Előzmény: kiki71 (37658)
Eredő Vektor Creative Commons License 2023.10.25 0 0 37661

Tehát az "A1" helyett egy teljes tartományt kell megadnod pl. "A1:H1000"

Kipróbálás nélkül, de úgy látom ez a gond.

Előzmény: Eredő Vektor (37659)
pimre Creative Commons License 2023.10.25 0 0 37660

Olvastad a többi észrevételt is?

Előzmény: kiki71 (37658)
Eredő Vektor Creative Commons License 2023.10.25 0 0 37659

Nincs Range, amely azt a tartományt képviseli, amelyre az autoszűrő vonatkozik.

Előzmény: kiki71 (37658)
kiki71 Creative Commons License 2023.10.25 0 0 37658

Erről lenne szó.

Van egy fejléces excel táblázat. 5.oszlop dátumokat tartalmaz. Feladat, szűrés makróval  2022-es dátumokra és szűrt adat sorok másolása. Az oszlop tartalmaz 2022es dátumokat.

Makró kód:
Application.Workbooks(2).Worksheets(5).Activate
Range("A1").Select
If ActiveSheet.AutoFilterMode Then
ActiveSheet.AutoFilterMode = False
End If
Dim startDate As Date
Dim endDate As Date
startDate = DateSerial(2022, 1, 1)
endDate = DateSerial(2023, 1, 1)
ActiveSheet.Range("A1").AutoFilter Field:=5, Criteria1:=">=" & startDate, Operator:=xlAnd, Criteria2:="<" & endDate

Ez egy másik próbálkozás, de ezzel is ua.:
'ActiveSheet.Range("A1").AutoFilter Field:=5, Criteria1:=">=2022.01.01", Operator:=xlAnd, Criteria2:="<2023.01.01"

 

Hiba jelenség leírása:

Szűrés a fejlécen bekapcsol, szűrés ikon az oszlopon ott van, szűrés ikonon megnézve a szűrést, tartalmazza a szűrés feltételt, de nincsenek szűrt adatok. Szűrt oszlop ikon jó helyen van. Szűrésbe belépve, rányomok egy OK-ot a szűrésre, megjelennek a szűrt adatok.Ugyanez a kódrészlet, ugyanebben a makróban egy másik helyen szöveges szűréssel működik. Dátum oszlop egyedi formátumban van, de átállítva dátum formátumra is fenn áll a hiba.
Csatoltam egy excelt amiben a kód lefutása utáni állapot van.

 

https://drive.google.com/file/d/1S_cn0ECEcla0DXUOs3gUhrh3axSnyga_/view?usp=drive_link

Előzmény: Garashan (37638)
Eredő Vektor Creative Commons License 2023.10.25 0 0 37657

szia, ezt egy egyszeru weblekerdezes excelben egy az egyben hozza. Csak reszlegesen tudtam visszalvasni, elnezest ha elmegyek valami mellett…

Előzmény: m54-b (37633)
Garashan Creative Commons License 2023.10.23 0 0 37656

u.i.: Csak letöltés után lesz működő képes. A drive-ban nem hiszem, hogy lefutnának a makrók :-)

Előzmény: Garashan (37655)
Garashan Creative Commons License 2023.10.23 0 0 37655

Szia!

Itt egy 0.9-es verzió. Még van benne egy-két hiba, de elvileg használható: https://drive.google.com/file/d/1F3Q2kVfxO3rSRw34mqc22ozPDkoQVtKd/view?usp=share_link

F10-el tudsz belépni a menübe és a működéséhez szükséges, hogy engedélyezd a makrókat a dokumentumban.

Illetve az F11 gomb alapértelmezett funkcióját is letiltottam, mert sokszor félre ütöttem és arra hibát dobott...

Előzmény: Garashan (37654)
Garashan Creative Commons License 2023.10.22 0 0 37654

Szia!

Ha még olvasod a fórumot, akkor elkezdtem írni hozzá egy makrót. Kicsit másképpen fog működni, mint ahogyan eredetileg szeretted volna, de szerintem így is jó lesz.

Előzmény: MM10 (37615)
Garashan Creative Commons License 2023.10.21 0 0 37653

Gépen rájöttem erre a trükkre ma, de most, hogy írtad telefonon is működik. Én az egyszerűség jegyében Chromeot használok telefonon és gépen is.

 

A Word körlevél készítőjét üzemorvosi beutaló készítésére használtam. Illetve én töltöttem ki a megfelelt papírokat is. Be volt víve egy adatbázisba a dolgozók összes lényeges adata és volt egy logikai mező, hogy ki az aktív dolgozó. Akkor egy kattintással lehetett nyomtatni a beutalókat és a megfelelt papírokat is. Az üzemorvos olyan lusta volt, hogy a megfelelt papírokat se szerette kitölteni... Mondjuk 3 alkalmazott volt velem együtt, plusz a főnök.

Előzmény: m54-b (37652)
m54-b Creative Commons License 2023.10.21 0 0 37652

"Sokszor nem látszódik a kurzor."

 

Valamelyik topikban azt olvastam, hogy a választerületen kívülre kattintva, majd vissza, akkor megjavul. Firefox alatt még nem tapasztaltam.

 

A Word körlevélkészítője szerintem egész jó.

Előzmény: Garashan (37649)
m54-b Creative Commons License 2023.10.21 0 0 37651

Boldog ember vagy. /Boldog ember vagy? :-)  /

Előzmény: XNC (37648)
m54-b Creative Commons License 2023.10.21 0 0 37650

Átlag Jánosnak persze nincs telepítve a Notepad++, így ezt az utat kell bejárnia. Ha a beillesztett számok nem csak mellékes adatok, hanem számolni is kell velük, akkor pedig természetes, hogy ez a módszer kell, mert nem mindegy milyen tizedesjelölő van a szövegben.

Előzmény: Fferenc50 (37646)
Garashan Creative Commons License 2023.10.21 0 0 37649

Írtam ide egy szép hosszú hozzászólást, de az index fórum nem szerette volna, hogy elküldjem... Valamiért kiléptetett és elment a fenébe az egész...

Illetve a napokban szórakozik számítógépen is és telefonon is. Sokszor nem látszódik a kurzor. Nem tudom, hogy mit csináltak vele.

 

Nagy vonalakban ez a makrónak egy részlete.

A Thunderbird parancssoros paraméterezése itt van: https://kb.mozillazine.org/Command_line_arguments_-_Thunderbird

Ami nekünk fontos az a leírás alapján az attachment paraméter. A szimpla macskakörmök közé kerülnek a csatolmányok, amiket vessző választ el kötelező jelleggel. Emiatt volt a hiba, mert a mappa nevében lévő vesszőt csatolmány elválasztónak vette. Ha jól emlékszem, akkor hibát írt ki felugró ablakban a Thunderbird és a body részt be se vette.
Végül a body rész sincs már használva, mert a message részben TXT fájlból van beolvasva maga az üzenet. Ott meg lehetett formázni HTML kódokkal azt. Van valahol egy sor, hogy if message<>"" then body="" End if. Ez nem okoz problémát neki.
A wait függvényre azért van szükség, mert kb. 3 secundom alatt töltődik be a Thunderbird új e-mail ablakja és utána kell, hogy "lenyomódjon" az enter a levél elküldéséhez.

A Wordre rátérve. Szerintem az első számítógépünkön is márt volt '98 vége felé. Jóformán sohasem használtam a nélkül, hogy ne látnám a rejtett karaktereket. Egyszerűen frusztrál, ha ki van kapcsolva. Amúgy az NP++-t azért szeretem, mert jóval gyorsabban megnyílik, mind a Word és rögtön eldobja az összes felesleges formázását a szövegnek. Így nem kell még pluszban mindent kijelölné, az egeret lökdösni, hanem rögtön mehet a CTRL+A&C és már a vágólapon van a szöveg eltüntetett formázással.
Ha a volt munkahelyemen valakinek magyaráztam számítógép kezelési alapokat, akkor törekedtem arra, hogy minél kevesebb lépésből és egyszerűbben legyen megoldható egy probléma. Már az feladta a leckét és 8 év alatt amíg ott voltam, nem tudtam megtanítani, hogy ALT+Enter az új sor cellán belül, nem pedig 999999 space. Szóval reménytelen volt kicsit is összetettebb dolgokat megtanítani.
Ezért próbáltam meg mindent makrókkal megoldani, amik elvégzi a felhasználó helyett a feladatokat, mert akkor csak a nyers adatokat kell bevinni és mindent elvégez a makró. De sajnos ez se jött össze minden esetben, pedig megpróbáltam a lehető leszájbarágósabban leírni minden lépést. De a számlázó programból való adatkinyerésnek is változott az oszlop sorrendje hébe-hóba és hiába írtam le, hogy mi legyen a sorrend és mi az ami egyáltalán nem kell, nem sikerült elmagyarázni. A vevők listájánál egy-két fontos oszlop volt nálunk: nyilván a neve, adószáma, vevőcsoportja és ha hivatkozni akartam rá Excelben, akkor a vevőkódja. (Mivel néha változtattak nevet, így egyszerűbb volt egy kód-név adatlapot csinálni, mint utólag módosítani mindenhol a régi nevet az újra). De akkor a fejlesztők egyszer csak gondoltak egyet és megjelenítettek számunkra teljesen felesleges oszlopokat is: levelezési cím, fax, weboldal, cégjegyzékszám, bankszámlaszám, hitelkeret, stb. Nagy részük ki sincs töltve, mert felesleges infók lennének vagy a kutyát se érdekli. De a fejlesztők gondolnak egyet és kirakják a listába plusz oszlopként, ahol összekuszálják a meglévő oszlopaink sorrendjét. De van rá lehetőség, hogy legalább elrejtsük.

Előzmény: m54-b (37636)
XNC Creative Commons License 2023.10.21 0 0 37648

"(nem is tudják mi az)"

.

Én tudom mi az, de nem használom.

Akkor most mi van?

.

:)

Előzmény: m54-b (37634)
m54-b Creative Commons License 2023.10.21 0 0 37647

Igen, ez igaz, de eredetileg van "10-4" formáról is szó, nem csak a tizedes jelölés a gond.

Előzmény: Fferenc50 (37646)
Fferenc50 Creative Commons License 2023.10.21 0 0 37646

Bizonyára félreérthető voltam az első hozzászólásban. Ott az általad megadott linken levő táblázat bemásolását próbáltam bemutatni az elválasztójel megváltoztatásával, azzal, hogy nem lett dátum egyetlen számból sem, hanem a tizedespontos szám került be.

Vagyis copy-paste történt.

Azt már nem mutattam be, ami a mostani hozzászólásban volt, hogy simán vissza lehet állítani a tizedesvesszőt és marad számként az érték, ezt most pótoltam. Még annyit kiegészítésül, hogy a módszer alkalmazható akkor is, ha ilyen tizedespontos számokat tömegesen szeretnénk kézzel bevinni.

Üdv.

Előzmény: m54-b (37644)
Fferenc50 Creative Commons License 2023.10.21 0 0 37645

Szia!

Szerintem pont nem kanyarodtunk el. Hiszen itt is copy-paste van. 

"időnként dátummá varázsol egyes számokat."

Nem időnként és nem csak a copy-paste, hanem minden olyan esetben, ahol általános cellaformátum van és dátumként értelmezhető adat kerül bele. Pl. ha 8.5-öt írsz be, akkor bizony dátum lesz a cellában.

Viszont a bemutatott esetben, amikor a módosított tizesjellel beolvassuk az értéket, utána visszaállíthatjuk a rendszer szerinti elválasztót és a pontok helyén megjelenik a tizedesvessző:


Tehát ez megoldás a copy -> paste problémára, nem kell Notepad++ vagy Word-be másolás!

Üdv.

 

Előzmény: m54-b (37644)
m54-b Creative Commons License 2023.10.21 0 0 37644

Természetesen lehet. Nagyon elkanyarodtunk az eredeti kérdéstől ;-) a copy-paste időnként dátummá varázsol egyes számokat.

 

Garashan Notepad++ megoldása lett a nyerő.

Előzmény: Fferenc50 (37643)
Fferenc50 Creative Commons License 2023.10.21 0 0 37643

Lemaradt a kép az előzóből:

Üdv.

Előzmény: Fferenc50 (37642)
Fferenc50 Creative Commons License 2023.10.21 0 0 37642

Szia!

Szerintem a 2007-es Office-ban is lehet módosítani a rendszerbeállítások szerinti elválasztókat. 

A négyzetből kiveszed a pipát, a tizedesvesszőt átállítod pontra:

Ezután az eredmény:

Üdv.

 

Előzmény: m54-b (37634)
m54-b Creative Commons License 2023.10.21 0 0 37641

Természetesen ahogy pimre mondja, az első sor törölve.

 

Előzmény: m54-b (37640)
m54-b Creative Commons License 2023.10.21 0 0 37640

ActiveSheet.Range("A1").AutoFilter Field:=1, _
   Criteria1:=">12/01/2022", Operator:=xlAnd, Criteria2:="<01/01/2023"

Nekem így működik (Office 2007, magyar nyelvű).

Előzmény: kiki71 (37637)
pimre Creative Commons License 2023.10.21 0 0 37639

Azért javaslom, hogy a makrót abban a környezetben mutasd be, ahol használod. Feltételezem, hogy a makrót nem abban a munkafüzetben indítod, ahol az adatok vannak, ezért az Excel VBA csoportban írt mintádban rögtön az első sor hibaüzenetet ad, ha azt a belinkelt munkafüzeteden belül próbálom indítani: 

 

Application.Workbooks(2).Worksheets(5).Activate

Természetesen a Workbooks(2) nélkül működik: Application.Worksheets(5).Activate

 

Az egyebeket majd, ha küldöd a teljes anyagot.

 

Előzmény: kiki71 (37637)
Garashan Creative Commons License 2023.10.21 0 0 37638

Szerintem többen is tudunk. Miről lenne szó?

Előzmény: kiki71 (37637)
kiki71 Creative Commons License 2023.10.21 0 0 37637

Sziasztok. Láttam, hogy van Excel VBA csoport is, de ott nem kaptam választ problémámra. Esetleg itt tud na valaki segíteni Excel VBA programozásban? Ha igen, akkor megírom miről lenne szó.

m54-b Creative Commons License 2023.10.20 0 0 37636

A Wordben, ha bekapcsolod a rejtett szimbólumok megjelenítését (¶) sok ilyen problémát kiküszöbölhetsz.

 

A Wordben is egyszerű az összes formázás törlése.

 

Makrókat abban is lehet írni. De tény, hogy nagyon másra vannak!

 

A parancssorban a fájlnév idézőjelek nélkül van? Érdekes. Windows Servert én már nem használok, a W10 parancssora elvárja az idézőjelbeni fájlneveket, és a Word makrók is, mert a szóköz is gondot okoz neki. Idézőjelek közt mehet a szóköz, és a vessző is.

 

Előzmény: Garashan (37635)
Garashan Creative Commons License 2023.10.20 0 0 37635

Nekem a Notepad++ az egyik első program amit telepítek. Nálam az egyik legalapabb a számítógépes munkavégzéshez. A Word-öt nem szeretem ilyen szinten, mert van benne csomó haszontalan funkció, miközben rengeteg hasznos nincs benne. Nyilván a kettő programot össze se lehet hasonlítani, mert teljesen másra van, hiába szövegszerkesztő mindkettő.

Ha kell egy gyors jegyzet, akkor azt is NP++-ba írom fel, el se kell menteni, mert csinál neki ideiglenes fájlt és a program bezárása, majd újranyitása után is ott van.

 

Apropó, ha már Word. Az előbb futottam bele egy problémába. Volt munkahelyemnek segítettem be EPR+KVTD bevallás elkészítésébe. A jó előbb sikerült a végére pontot tenni. A lényeg, hogy már nem rendelkezem a jogosult ügyfélkapus adatokkal, így megkértem volt kolléganőmet, hogy írja már bele egy dokumentumba az asztalra. Ő Wordbe írta bele. Én naivín kimásoltam, majd beillesztettem az ÁNYK-ba, de nem akarta elfogadni a jelszót. Egy kis telefonálgatás után kiderült, hogy a jelszónak jónak kell lennie. Mivel távoli asztalra voltam bejelentkezve és hogy biztosan átjön-e az éteren a CTRL+C, így beillesztettem az itthoni gépemre NP++-ba. Kb. nálam megszokás ilyen esetben az automatikus CTRL+A&C és úgy illesztettem be az ügyfélkapuba és el is fogadta. Visszalépve a távoli asztalra ott is bemásoltam NP++ba és ki is másoltam. Utána már ott is elfogadta. Én arra gondolok, hogy a Wordből való másolnál bekerül a sor végére egy felesleges CRL, LF karakter sor. Amit bevitt a jelszó mezőbe, amikor közvetlenül a Wordből másoltam. Az NP++ pedig nem teszi oda automatikusan, csak ha kijelölöd az új sor karaktert is.

 

Amúgy többek között ezért is szeretem, mert eldob minden felesleges formázást. És hozzá is készíthetők makrók.

Anno szintén a volt munkahelyemen csináltam árjegyzék kiküldő Excel táblázatot, mivel a Thunderbird levelező meghívható parancssorból így adta magát az automatizálás. A magyar karaktereket viszont nem igazán csipázta, így át kellett őket konvertálni html kóddá. Pl az á-ból lett "&aacute;". Minden magyar karakterhez csináltam egy kicserélő makrót az NP++-ban, így könnyű volt a szövegben minden karakter módosítani. Végül Excelesítettem azt a lépést is, sok-sok egymásba ágyazott helyette függvénnyel. 
Ami még feladta a leckét, az a mappa nevekben lévő vessző. A cégnél Windows Server fut és Windows 10 munkaállomások vannak. Viszont eszembe jutott (mert még volt szerencsém használni anno), hogy kompatibilitási okokból a régi windosokban benne maradt a DOS-os 8.3-as fájlnév formátum. Kis utána járással kiderült, hogy manapság ez már a MS Serveren le van tiltva, mert felesleges helyet és erőforrást foglalna ezek legenerálása. De ideiglenesen be lehetett kapcsolni a generálást, úgy hogy az ne automata legyen és annak az egy mappának adtam 8.3-as fájlnevet. A dolog érdekessége még, hogy nem kellett betartani az eredeti 8.3-as formátum generálási szabályait, hanem "szabadon" adhattam meg bármit. Ez alatt azt értem, hogy a "TextFile1.Mine.txt” a szabályok szerint "TEXTFI~1.TXT" lett volna, de én akár "alma.txt" nevet is adhattam neki. Csak nem fájlról volt szó, hanem mappáról, de a lényeg ugyan az. Majd kikapcsolva a generálást megmaradt az egy darab legenerált 8.3-as mappanév.
Erre csak egy dolog miatt volt szükség, túl sok hivatkozást kellett volna átírni, ha megváltoztatjuk a mappa nevét, viszont logikailag onnan kellett csatolni a csatolmányt. Viszont a parancssor a vesszőt paraméter elválasztó karakternek vette és nem tudta csatolni a vesszős nevű mappából a fájlokat. Próbálkoztam jó pár megoldással, hogy a vesszőt másként adjam meg, de vagy nem edte meg a parancssor vagy vesszőként értelmezte.

Előzmény: m54-b (37634)
m54-b Creative Commons License 2023.10.20 0 0 37634

Nekem nem így működik (2007-es Office).

 

Jelenleg ezen a keresésen kiadott táblázaton kísérletezek https://www.google.hu/search?q=%C3%A1tlag%C3%A9letkor+orsz%C3%A1gonk%C3%A9nt&sca_esv=575251062&ei=Kc8yZdrbK9eG9u8PgKi32AQ&oq=%C3%A1tlag%C3%A9letkor&gs_lp=Egxnd3Mtd2l6LXNlcnAiDsOhdGxhZ8OpbGV0a29yKgIIATIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgAQyBRAAGIAEMgUQABiABDIFEAAYgARI8kZQvwZYixtwAXgBkAEAmAFXoAGnBKoBATe4AQPIAQD4AQHCAgoQABhHGNYEGLADwgIKEAAYigUYsAMYQ-IDBBgAIEGIBgGQBgk&sclient=gws-wiz-serp

 

Ahogy már leírtam, próbáltam -szerintem- mindent, eddig a kerülő megoldás -a csere másra- jött be. De a Notepad++ jobbnak tűnik!

Azzal legfeljebb az a gond, hogy nincs mindenkinek feltelepítve (nem is tudják mi az).

Előzmény: Fferenc50 (37632)
m54-b Creative Commons License 2023.10.20 0 0 37633

Kákán is csomót keresés:

 

Webről letöltött táblázat, Notepad++ba

 

 

majd onnan a cellaformázott Excelbe

 

 

 

(Persze, kijelölöm az összeset, és egyiken a "Hiba mellőzése". Kevesebb munka, mint az eddigiek.)

 

Előzmény: m54-b (37631)
Fferenc50 Creative Commons License 2023.10.20 0 0 37632

Szia!

Szerintem ha a forrásformátum megőrzése opciót használod, akkor helyesen/esetleg szövegként fogja beimportálni a táblát. 

Üdv.

Előzmény: m54-b (37629)
m54-b Creative Commons License 2023.10.20 0 0 37631

"A nyers adatokat én Notepad++-ból nyertem."

 

Ez egy nagy ötlet! Köszönjük minden szenvedő nevében!

Előzmény: Garashan (37628)
Garashan Creative Commons License 2023.10.20 0 0 37630

Apósom volt a postása. Így volt szerencsém találkozni vele élőben három éve. Alá irattam a saját példányomat is, valamint édesapámét is. Így még nagyobb értéket képviselnek a szememben a könyvek.

Előzmény: Delila10 (37625)
m54-b Creative Commons License 2023.10.20 0 0 37629

Köszönöm!

(Nekem a copy-paste a gond. Találok a weben egy táblázatot, azt raknám be az Excelbe.)

Előzmény: Fferenc50 (37627)
Garashan Creative Commons License 2023.10.20 0 0 37628

Kipróbáltam. Jól emlékeztem, a módszer működik.

 

Előre beállítottam a B oszlopon a Cella formátumot szövegre. Majd beillesztettem a nyers adatokat. Minden maradt az eredetiben.

 

Az A oszlopban általános volt a cella formátum. Ott át is konvertálta a dátumszerű szövegeket dátummá.

 

A nyers adatokat én Notepad++-ból nyertem. Az megegyezik a csak szöveg beillesztési móddal.

 

Előzmény: m54-b (37626)
Fferenc50 Creative Commons License 2023.10.20 0 0 37627

Szia!

Egész sorokat egyben beolvasni, majd utána Adatok - szövegből oszlopok - 3 lépésben lehet állítani az adott oszlop formátumát.

Üdv.

Előzmény: m54-b (37626)
m54-b Creative Commons License 2023.10.20 0 0 37626

Kevés.

A tizedespontot tartalmazó, és dátumnak is nézhetőt dátumnak rakja be, a kötőjelest is.

Én azt szoktam, hogy Wordbe rakom, ott (ha nem zavaró a végeredményben) lecserélem a tizedespontot vesszőre, a "-"-t "_"-ra. Ha gond, akkor marad az átbogarászás, utólag.

 

Aposztrófot előre nem lehet berakni, majd copy-paste. (Vagy nem tudok róla.)

Előzmény: Garashan (37623)
Delila10 Creative Commons License 2023.10.20 0 0 37625

Helló!

 

Mindnyájan ezen nőttünk fel.

 

XNC Creative Commons License 2023.10.20 0 1 37624

 .... és igazad van!

.

cellaformázás-ig volt biztos a dolgomban.

De megoldás lehet az is ha egy ' jelet ír a rublika elejére.

.

Látszik, hogy nagyon régen használtam már Excelt.

Előzmény: Garashan (37623)
Garashan Creative Commons License 2023.10.20 0 0 37623

Ez nem biztos, hogy megoldja a problémát. Már beillesztéskor átkonvertálja dátummá és akkor számszerűleg más lesz.

 

Szerintem az egész oszlopnak a formátumát szövegre kell állítani még beillesztés előtt.

Előzmény: XNC (37622)
XNC Creative Commons License 2023.10.20 0 0 37622

Jobbklikk - cellaformázás:  ##-##

Most, a Te esetedben.

Előzmény: CsRob1 (37621)
CsRob1 Creative Commons License 2023.10.20 0 0 37621

Sziasztok! Bizonyos adatok Excelbe történő beillesztésekor vagy importálásakor az Excel a dátumnak vélt karaktersorokat dátumformátumban írja be. Pl. a 10-12 (telefonszám mellék) helyett dec. 10 -t jelenít meg dátumformátumban. Hogyan lehet ezt a funkciót kikapcsolni? Excel 2007

Eredő Vektor Creative Commons License 2023.10.20 0 0 37620

Szia,

Lapfülek színezgetésével és megfelelő elnevezésével közelíthető a téma max. szerintem.

Amúgy összerakhatsz egy munkalaphierarchiát egy külön munkalapon úgymond félmanuálisan. Több lehetőség van erre - de beépített opció nincs. A munkalapok között pedig egy-egy hivatkozásra kattintva lehet ugrálni. Megfelelő szintű excel tudással egész jól meg lehet egy ilyet csinálni.

Előzmény: MM10 (37607)
Garashan Creative Commons License 2023.10.20 0 0 37619

Tudtommal nincs rá lehwtőség. Az Excelhez léteznek addonok (amit ők addin nek neveznek...). Maximum ha ott létezik ilyen megoldás.

De mint azt m54-b is írta makróval lehet hasonlót csinálni. Egy külön munkalapra. Esetleg gombnyomásra felugró ablak.

Előzmény: MM10 (37615)
m54-b Creative Commons License 2023.10.20 0 0 37618

Egy munkalapon felsorolod a kívánt csoportokat, és klikkre, egy makróval elrejted a fölöslegeseket?

Előzmény: MM10 (37614)
pimre Creative Commons License 2023.10.20 0 0 37617

"Azt tudod tenni, hogy az xx... és az yy... munkalapokat külön-külön munkafüzetekben tartod." Amikor ezt írtam, nem láttam a pár perccel korábbi beírásodat, hogy pont ezt akarod elkerülni.

 

Előzmény: pimre (37616)
pimre Creative Commons License 2023.10.20 0 0 37616

"...azt szeretném,ha az "xx,xx stb" nevű munkalapjaim tudnám valamilyen módon egy mappában helyezni..."

 

A mappa a számítástechnikában azt jelenti, hogy bizonyos szempont szerint összetartozó fájlokat tudunk benne egy csoportba tenni, így egy kattintással láthatóvá tenni őket. Aztán mappákat is lehet csoportosítani, ilyenkor az ebben lévő mappákat almappának nevezzük.

 

Viszont az Excel munkafüzet egyetlen fájl, így a mappa fogalma nem értelmezhető ezen belül. A munkalapok nem csoportosíthatók az általad kívánt módon. Azt tudod tenni, hogy az xx... és az yy... munkalapokat külön-külön munkafüzetekben tartod.

 

Előzmény: MM10 (37607)
MM10 Creative Commons License 2023.10.20 0 0 37615

És ezt hol vagy hogyan tudom megcsinálni?

Előzmény: Garashan (37613)
MM10 Creative Commons License 2023.10.20 0 0 37614

Szia. Csoportosítani szeretném a munkalapjaimat. Azért lenne erre szükségem mert nem 7-8 munkalapról van szó egy fileon belül,és csoportosítás nélkül már néha nehézkes megtalálni amelyikben épp dolgozni szeretnék,de nem szeretném külön fileon menteni ezeket a munkalapokat. 

Amire szükségem lenne egy olyan csoportosítás ahol pl alul ahol a munkalapok vannak tudnék valamilyen csoportokat létrehozni,egy legördülő menüt akár, és ott felsorolja melyik munkalapok vannak az adott "csoportban" 

Előzmény: Fferenc50 (37612)
Garashan Creative Commons License 2023.10.20 0 0 37613

Én úgy értettem, hogy egy legördülő menüben csoportba foglalja a munkalapokat. Ilyen csoportból meg létrehoz többet.

Előzmény: Fferenc50 (37612)
Fferenc50 Creative Commons License 2023.10.19 0 0 37612

Szia!

Mit értesz egybehúzás alatt és miért lenne erre szükséged?

Üdv.

Előzmény: MM10 (37610)
Garashan Creative Commons License 2023.10.19 0 0 37611

Nem lehet őket csoportosítani legjobb tudomásom szerint. Maximum valami addonnal.

Előzmény: MM10 (37610)
MM10 Creative Commons License 2023.10.19 0 0 37610

Igen azt tudom,de így csak sorrendet állítok. Egybehúzni nem tudom ezek szerint a munkalapokat sehogysem?

Fferenc50 Creative Commons License 2023.10.19 0 0 37609

Szia!

Tudtommal fájlon/munkafüzeten belül nem lehet mappákat használni.  Viszont a munkafüzeten belül úgy csoportosítod a munkalapokat, ahogyan csak szeretnéd  - megfogod a lapfület és áthúzod oda, ahol szeretnéd ha lenne.

Üdv.

Előzmény: MM10 (37607)
MM10 Creative Commons License 2023.10.19 -1 0 37608

a képet nem mellékelte,így feltöltöttem,mégha talán annyira nem is mérvadó: https://imgur.com/a/fwR81st

MM10 Creative Commons License 2023.10.19 0 0 37607

Sziasztok. Azt szeretném kérdezni hogy tudom e valahogy külön csoportosítani a munkalapjaimat. Képen lévő példával élve azt szeretném,ha az "xx,xx stb" nevű munkalapjaim tudnám valamilyen módon egy mappában helyezni ugyan így az összes többi munkalapjaimmal eljárva csoportosítani egybe azokat. A legegyszerűbb megoldás az lenne ha a csoportosításokat egyszerűen több file-al oldanám meg,de egybe szeretném ha meglennének. Megoldható? 

Garashan Creative Commons License 2023.10.14 0 0 37606

Nagyon szívesen, örülök, hogy tudtam segíteni.

Előzmény: neofrix baszmacs (37605)
neofrix baszmacs Creative Commons License 2023.10.14 0 0 37605

Ezt könnyebb volt megérteni, mint az előzőt. :)  Kicicomáztam, az Összesítés lapra tettem egy kis korrekciós lehetőséget, ha mondjuk valaki ciklus közepén hagyja ott a szakkört, akkor ott le lehet nullázni. Itt van. Kipróbáljuk az osztályfőnökkel, remélem, szeretni fogja. Köszönöm a segítséget még egyszer!

https://docs.google.com/spreadsheets/d/1oJqiP_elKOHskD57CTo8HFBPkNWJYye7_vd71bh_VUw/edit?usp=sharing

Előzmény: Garashan (37603)
neofrix baszmacs Creative Commons License 2023.10.12 0 0 37604

Nagyon köszönöm, a hétvégén megpróbálom megérteni, és megírom, hogy sikerült-e. :) 

Előzmény: Garashan (37603)
Garashan Creative Commons License 2023.10.12 0 0 37603

Frissítettem a táblázatot. Ha bármi kérdésed van, vagy további segítségre van szükséged, akkor nyugodtan keress.

Előzmény: neofrix baszmacs (37602)
neofrix baszmacs Creative Commons License 2023.10.12 0 0 37602

Köszönöm még egyszer a szakkörnyilvántartó táblázatot. Működik, tudom formázgatni, fejlécezgetni, megvédeni a számolt cellákat, de van egy probléma, amivel nem tudok mit kezdeni.

A szakköröket elvileg valóban heti órarend szerint tartják, de ebbe folyton belerondít valami: ünnepek, iskolai kirándulás, a tanár betegsége stb., így gyakran elmarad egy-egy. Ezért a szakkörök megtartása nem egyszerűen az eltelt idő függvénye, hanem a tanár jelzi, hogy megvolt a négy szakkör, lehet fizetni a következő adagot. Ahogy az elején írtam:

"Ha megvolt a négy foglalkozás - akár ott volt a gyerek, akár nem - akkor az osztályfőnök jelzi, hogy most be kell fizetni az adott szakkör következő díját, és kezdődik az egész elölről."

Tehát valami olyan bemenet kéne, hogy "Szakkör1 - x alkalom fizetendő". Hogy mikor telt el az x alkalom, azt nem is kell nyilvántartani, majd a következő "Szakkör1 - x alkalom fizetendő" bemenet előírja a következő fizetést. Az x az nem mindig négy, például év végén lehet, hogy csak kettő.

Esélyem sincs, hogy ezt magam megcsináljam, de ha megcsinálnád, örömmel hozzájárulnék a közben elvesztegetett energiáid pótlásához. :)

 

Előzmény: Garashan (37586)
pimre Creative Commons License 2023.10.11 0 0 37601

Nincs mit, érdekelt a megoldás,szívesen foglalkoztam vele.

Előzmény: Param2121 (37600)
Param2121 Creative Commons License 2023.10.11 0 1 37600

Azért jöttem vissza, hogy beírjam, hogy rájöttem, hogy cellamásolásokkal megoldható a feladat, a megoldásod nagyon elegánsnak tűnik, gratulálok és nagyon köszönöm, hogy foglalkoztál vele!

 

 

Előzmény: pimre (37599)
pimre Creative Commons License 2023.10.11 0 0 37599

Nem is kell makró:

 

Feltételezve, hogy az 1. sor címsor, és a 2. sortól kezdődnek az adatok, akkor a következő a teendő:

 

A C2 oszlopba írd a következő függvényt: =INDIREKT("A" & (SOR()-2)*3+2)

A D2-be:                                                =INDIREKT("A" & (SOR()-2)*3+3)

Az E2-be:                                               =INDIREKT("A" & (SOR()-2)*3+4)

 

(A C, D és E helyett bármely másik 3 oszlop lehet a célterület, a lényeg, hogy egymást követő oszlopok legyenek)

 

Majd ezt a 3 oszlopot húzd le végig.

Előzmény: pimre (37598)
pimre Creative Commons License 2023.10.11 0 0 37598

"Van lehetőség csoportos transzponálásra?" Ilyen nincs.

 

De pontosítsunk. Ilyesmiről lenne szó?:

 

 

Ez makróval megoldható Excelben. 

 

Ha nem ilyen a munkafüzeted, akkor mutass legalább egy képet arról, amire gondolsz!

 

Előzmény: Param2121 (37596)
Garashan Creative Commons License 2023.10.11 0 0 37597

A libre office-t nem ismerem, de biztosan(?) lehet ahhoz is makrót írni.

Ha van benne makró rögzítő funkció, akkor 1 alkalommal meg kell csinálni a transzponálást, majd azt paraméterezve kell rá írni egy ciklust.

Előzmény: Param2121 (37596)
Param2121 Creative Commons License 2023.10.11 0 0 37596

Nem excel, libreoffice calc, de lehet excel fájl is, ha kell.;)

 

Van lehetőség csoportos transzponálásra?

Adott egy kb. 600 soros lista, hármasával kellene őket transzponálni, vagyis kb. 200 soron három oszlopba kell elrendezni őket.

Kétszázszor transzponálni három soronként kézzel elég macerás lenne.:-(

Garashan Creative Commons License 2023.10.10 0 0 37595

Funfact nálam MS Office Professional Plus 2021 verzió ketyeg, ha lehet hinni a névjegynek akkor 32 bites verzióban. (Bár emlékeim szerint 64 bites verziót vásároltam és telepítettem...)

Mindez MS Windows 10 64 bit alatt.

Előzmény: pimre (37593)
CsRob1 Creative Commons License 2023.10.10 0 0 37594

Ez okozhat problémákat a gyakorlatban, ha egy ilyen egyszerű esetben is van eltérés. Persze itt látom, hogy nincs hiba, noha az ellenőrző cella hibát jelez (értéke eltér 0-tól, ezért a feltételes formázás miatt színnel jelzi a hibát) 

Előzmény: pimre (37593)
pimre Creative Commons License 2023.10.10 0 0 37593

Bizony, a lebegőpontos számábrázolás okoz ilyeneket. Éppen 10 éve találkoztam ugyanezzel a jelenséggel, és ezt más is megerősítette. Például: https://forum.index.hu/Article/viewArticle?a=127906061&t=9009340

 

Előzmény: CsRob1 (37592)
CsRob1 Creative Commons License 2023.10.10 0 0 37592

Sziasztok! Ez hogy lehetséges? Excel 2007

2 db 30 tizedesig megegyező szám különbsége a 12. tizedesnél eltér 0-tól.

A B2 cella egy másik táblázatra hivatkozik, és az értéke egy másik munkalapon korábban beírt érték 1000-el való osztás, majd szorzás után. A zöld szám egy másik táblázatba beírt érték, ami értékbeillesztéssel került a D2 cellába. Az itt látható értékek formátuma szám.

 

 

local75 Creative Commons License 2023.10.10 0 0 37591

Ja, és nevezhető bérletrendszernek is hogy emészthető legyen. :)

bár én is kártyát írtam..

Előzmény: neofrix baszmacs (37589)
local75 Creative Commons License 2023.10.10 0 0 37590

Nem exceles megoldás, csak azért mertem javasolni, mert ilyen esetekben van létjogosultsága. :)

És ha jobban belegondolunk, néha jobb a dolgokat nem túlbonyolítani.

Magamból kiindulva, soha nincs olyan hogy egy táblázatom eléri a tökéletes végleges változatát, mindig elcseszem a csinosítgatással és a továbbfejlesztéssel az időt.

Előzmény: neofrix baszmacs (37589)
neofrix baszmacs Creative Commons License 2023.10.10 0 0 37589

A jó öreg kartotékrendszer! :) Kösz a tippet, az én szívemnek kedves, és lehetett volna így kezdeni. De ha már nagy pofával bemondtam az online megoldást, nem mehetek oda egy marék színes papírral. :)  

Előzmény: local75 (37588)
local75 Creative Commons License 2023.10.10 0 0 37588

Mi van ha a tanárnő készíttet kis kártyákat, mint egy teniszklubban?

4 alkalmas kártya, és a szakkörvezetőnek szignózni kell az alkalmakat, vagy készíttethet perforáltat, melyet leszakítanak. (kb. 100 Ft/bérlet)
Faék egyszerű, kevesebb feladat.

Előzmény: neofrix baszmacs (37585)
neofrix baszmacs Creative Commons License 2023.10.10 0 1 37587

Köszönöm szépen, úgy látom, a lényeget megcsináltad, azt hiszem, ebből már össze tudok hozni valamit amivel mindenki boldog lesz. Az adatvédelem tényleg problémás lehet, azt fogom a tanárnőnek javasolni, hogy csak ő használja, a nem fizető szülőket pedig nyektesse privátban. Még egyszer köszönöm, délután nekilátok, remélem bírok vele.

Előzmény: Garashan (37586)
Garashan Creative Commons License 2023.10.09 0 0 37586

Szia!

Szerintem ez megoldható Exelben.
Én valahogy így csinálnám meg: https://docs.google.com/spreadsheets/d/1unuB4vbkVliNr015j2Oupb_iwWV3mv9XzUnfSL2qvhU/edit?usp=sharing

 

Amit kezel a táblázat:

  • Egy szakkör lehet több alkalommal is hetente és alkalmanként számolja a díjat.
  • Egy tanuló több szakkörre is járhat
  • A szakkörök minden esetben szeptember elsejével indultak
  • A tanuló bármikor kiléphet egy szakkörből év közben is, de az addigi befizetéseit is kezeli a táblázat

Biztosan meglehet csinálni elegánsabban is, de hirtelen ennyit sikerült összehozni.

 

Én a tanárnő helyében nem osztanám meg a többi szülővel a táblázatot, mert az adatvédelmi okokból kifolyólag aggályos lenne.

Előzmény: neofrix baszmacs (37585)
neofrix baszmacs Creative Commons License 2023.10.09 0 0 37585


Tudnátok segíteni? Befutottam az erdőbe tátott szájjal....

A gyerek osztályfőnöke láthatóan nem tudja kezelni a tíz kölök szakkörbefizetéseit, én hülye meg azt mondtam hogy csinálok neki egy on-line táblázatot hozzá. Már bánom.

Először Google spreadsheet-ben akartam, de rájöttem, hogy itt több a dimenzió, mint kettő, ráadásul a Google spreadsheet-ben Pivot tábla sincs, csak a fizetősben. Néztem ingyenes on-line adatbáziskezelőket, pl. seatable.io, de nem tudok velük se egy rendes relációt, se egy használható űrlapot létrehozni. Nem is adatbáziskezelőnek néznek ki ezek, hanem felhízlalt Excel-tábláknak. Persze simán lehet, hogy csak én nem értek hozzá.

Van valakinek ötlete, miben, hogyan érdemes ezt megcsinálni?

Az osztályban van tíz tanuló, az iskolában tíz szakkör.
Minden tanuló választ magának szakkört, ahányat akar.
Minden szakköröknek van egy ára, ami négy foglalkozást fedez.
A tanulók befizetik, a tanárnő felírja.
Ha megvolt a négy foglalkozás - akár ott volt a gyerek, akár nem - akkor az osztályfőnök jelzi, hogy most be kell fizetni az adott szakkör következő díját, és kezdődik az egész elölről.

 

pimre Creative Commons License 2023.10.01 0 0 37584

Szia, ne vedd rossz néven, hogy vitázok, de leellenőriztem a saját javaslatomat, és nem találtam benne hibát.

 

Örülök, hogy elküldted az eredeti táblázatot, így a teljes adatbázist át tudtam vizsgálni. Itt tudod megnézni az eredményt: https://docs.google.com/spreadsheets/d/1g5227V3VSDAIKl3Z4DtpIoaELolBmRPC/edit?usp=sharing&ouid=113951927802309105103&rtpof=true&sd=true

 

Hogy ne kelljen a képleteket átírni az kapott fájlban lévő oszlopokra, hanem az eredeti mintában lévő oszlopok szerepeljenek, ezért a Bevitel munkalapból készítettem két másolatot. Külön a férjeknek, és külön a feleségeknek: Bevitel teszt férj és Bevitel teszt feleség néven. Így mindkettőben az E és F oszlopban vannak a vesszőhelyek, az A oszlopban a vesszővel elválasztott nevek, és a B, C, D oszlopban a szétszedett nevek. A Feri technikájával szétszedett nevek pedig a G, H és I oszlopban vannak. Végül a J oszlopba egy teszt függvényt írtam, ami üresen marad, ahol egyezik a két megoldás mindhárom oszlopa, eltérés esetén meg azt írja bele, hogy eltér.

 

Ezzel a megoldással a férjek esetén egyetlen eltérést nem találtam, a feleségeknél is csak a 190. soron lett egy nem túl lényeges eltérés:

 

 

Ettől függetlenül azt gondolom, hogy Feri megoldása elegánsabb, és könnyebben kezelhető. Ha nem közel egy időben írjuk, akkor nem is kezdtem volna bele. 

Előzmény: donikla (37583)
donikla Creative Commons License 2023.10.01 0 1 37583

Nagyon köszönöm a fáradozásotokat, hálás vagyok érte!

Delila10 és pimre  képleteinél bizonyos esetekben, ahogy észre vettem a nevek hosszának aránya a függvényében lett hibás a végeredmény (hol belekerület egy vessző, hol lemaradt valamelyik név eleje és/vagy vége). Igazából nem értem miért, hiszen ha a műveletet manuálisan elvégeztem akkor rendben volt. Én mindenféle "HA" művelettel és csillió segédoszloppal sem jutottam el idáig. :) 

Fferenc50 képlete viszont hozta a kívánt végeredmény. Néhágy új szabályt alakalmaznom kellett, mert üres cellánál és két vessző közti szóközzel fals volt az eredmény, de semmi ilyen eshetőségről nem szóltam az elején, de ezeket könnyedén orvosoltam.


Itt került alkalmazásra a képlet (Orosháza evangélikus anyakönyv, házassági index 1745-1786).

A függvények alakalmazása a BEVITEL munkalapon történt, a végeredményt jelentő INDEX munkalap pedig így reszponzív módon szépen megjeleníti a kívánt tartalmat. 


Előzmény: Delila10 (37582)
Delila10 Creative Commons License 2023.09.29 0 0 37582

Az én példámban is működtek a képletek az 1 és 2 keresztneveseknél, az 1 tagból álló nem valószínű.

Előzmény: pimre (37579)
pimre Creative Commons License 2023.09.29 0 0 37581

Hú, ez a villámkitöltés tényleg óriási. Nem ismertem, de az előző példámon kipróbáltam. Ez egy kis lépés az AI felé.

Az első nevet - nálam:  Kovács,péter,sándor a közvetlen mellette lévő 3 oszlopba (B, C, D) kimásoltam. Aztán az egyes kimásolt nevek közül az elsőre állok a B oszlopban, majd a Ctrl+E lenyomására végigmásolja. Aztán ugyanezt megteszem a C és D oszloppal. Azokat is másolja, és ha valamelyiknél nincs kitöltendő adat, akkor üresen hagyja. Egy feltétel van, az A oszlopban a neveknek folyamatosan kitöltve kell lenniük. Ha üres sor van, ott befejezi a munkát.

 

 

Előzmény: Delila10 (37574)
pimre Creative Commons License 2023.09.29 0 0 37580

" én egy segédoszlopos megoldást csináltam". Elegánsabb lett volna, ha azt írom, hogy én is egy segédoszlopos megoldást csináltam, mert az eredeti kiindulópont Deliláé volt.

Előzmény: pimre (37579)
pimre Creative Commons License 2023.09.29 0 1 37579

Szia, én egy segédoszlopos megoldást csináltam. Figyelembe véve egy olyan lehetőséget, hogy akkor is működjön, ha egyetlen vessző sincs valamelyik sorban:

 

 

 

 

A képletek:

 

E2: =HAHIBA(SZÖVEG.KERES(",";A2;1);0)

F2: =HAHIBA(SZÖVEG.KERES(",";KÖZÉP(A2;E2+1;HOSSZ(A2)-E2));0)

 

B2: =HA(E2>0;BAL(A2;E2-1);A2)

C2: =HA(ÉS(E2>0;F2>0);KÖZÉP(A2;E2+1;F2-1);HA(E2>0;KÖZÉP(A2;E2+1;HOSSZ(A2)-E2);""))

D2: =HA(ÉS(E2>0;F2>0);KÖZÉP(A2;E2+F2+1;HOSSZ(A2)-(E2+F2));"")

 

 

Előzmény: donikla (37577)
Fferenc50 Creative Commons License 2023.09.29 0 1 37578

Szia!

Nézd meg az alábbi képleteket:

B2 képlete:=BAL(A2;SZÖVEG.KERES(",";A2)-1)

C2 képlete: =HAHIBA(BAL(HELYETTE(A2;B2&",";"");SZÖVEG.KERES(",";HELYETTE(A2;B2&",";""))-1);HELYETTE(A2;B2 &",";""))

D2 képlete: =HAHIBA(KÖZÉP(HELYETTE(A2;B2 &"," & C2;"");2;HOSSZ(A2));"")

Természetesen húzhatóak lefelé.

A képletek egymásra épülnek, figyelembe veszik, ha csak 1 vessző van a névben, ezért néz ki bonyolultan a C2 képlete.

Remélem, nálad is műxik majd.

Üdv.

 

Előzmény: donikla (37577)
donikla Creative Commons License 2023.09.29 0 0 37577

Megnéztem a villámkitöltést, de hiába adok meg neki mindenféle variációt, nem igazán talál benne logikát. Ahol nincs harmadik név ott megismétli a másodikat. A legjobb eredményt a "szövegből oszlopok" adja ami a vesszőket figyeli és úgy dobja szét az oszlopokat.

Viszont ez és a villámkitöltés is független a kiindulástól, így ha az eredetiben módosítok az nem jelenik meg a végső feldolgozott formában, ezért görcsölök a  függvényekkel. :) 

Előzmény: Delila10 (37574)
donikla Creative Commons License 2023.09.29 0 0 37576

Utánanézek!
Köszi!

Előzmény: Delila10 (37574)
donikla Creative Commons License 2023.09.29 0 0 37575

Köszönöm!

Hasonló furcsaságokat produkál mint amikor én próbálkoztam, csak a te képleteid jóval egyértelműbekk.

Bizonyos esetekben megkergül, ezeket kezdtem a HA függvényekkel kigyomlálni, de abba nagyon belezavarodtam. Pl ebben az esetben a G5 értékét nem is értem...



Előzmény: Delila10 (37573)
Delila10 Creative Commons License 2023.09.29 0 0 37574

A választ írva hirtelen el kellett mennem.

Nem volt időm a legegyszerűbb megoldást leírni, hogy t.i. alkalmazhatod a villámkitöltést. Biztosan megtalálod a súgóban a leírását.

Előzmény: donikla (37572)
Delila10 Creative Commons License 2023.09.29 0 1 37573

Szia!

 

Előzmény: donikla (37572)
donikla Creative Commons License 2023.09.29 0 0 37572

Az előző hozzászóláshoz kapcsolódóan.

Legfőképp az ilyen típusú eltérések okozzák a problémát, valahol csak egy vessző van, valahol kettő, illetve a nevek hossza is változó ami az általam próbálgatott képletekben csak problémákat szül. "HA" függvények  halmazával sem tudok egységes függvényeket alkotni, ami mindegy típusú cellára jó lenne. 

 

RI,MÁRTON,ERZSÉBET

TAKÁTS,ISTVÁN

RI,ÁDÁM

KASZIBA,DÓRA

donikla Creative Commons License 2023.09.29 0 0 37571

Sziasztok!

Segítséget szeretnék kérni adatkinyerésben.

Vesszővel elválasztott, neveket tartalmazó cellákból szeretném függvény segítségével kinyerni az adatokat, későbbi feldolgozás céljára. A cél az lenne, hogy az egy cellában szereplő 3db vesszővel elválasztott nevek, 3db különböző cellába kerüljenek. Mindenképp függvénnyel szeretném, mert az alap adathalmaz változhat és emiatt a „szövegből oszlop” átalakítás nem célszerű út.

A cellák tartalma így néz ki:



Valahogy az én agyam nem tud ráhangolódni a függvényekre. Gondolom ez megoldható LEFT,RIGHT,MID és SEARCH függvények kombinációjával. Örülnék ha a függvény Google Táblázat kompatibilis lenne.

Köszönöm segítségeteket!

Ketele69 Creative Commons License 2023.09.21 0 1 37570

Garashan! pimre!

 

Köszönöm szépen!

Mindkét függvény tökéletes.

 

K.

Előzmény: Ketele69 (37566)
pimre Creative Commons License 2023.09.21 0 1 37569

Bocs, nem felülbíráltalak, hanem egyszerre írtunk. Te előbb végeztél.

Előzmény: Garashan (37567)
pimre Creative Commons License 2023.09.21 0 0 37568

C1 képlete: =HA(ABS(A1-A2)<=0,2; "OK";"nem OK")

Előzmény: Ketele69 (37566)
Garashan Creative Commons License 2023.09.21 0 0 37567

Bocsi, félre értelmeztem a kérdésedet.

 

Akkor erre módosítanám a képletet:

=HA(MAX(A1;A2)-0,2<=MIN(A1;A2);"OK";"Valami nem OK")

Előzmény: Ketele69 (37566)
Ketele69 Creative Commons License 2023.09.21 0 0 37566

Köszönöm.

 

Bocsánat, nem fogalmaztam pontosan, ezt szeretném elérni:

 

A1=2,5

A2=2,3

C1= "Ok"

 

A1=2,5

A2=2,2

C1= "Valami nem OK."

 

Előzmény: Garashan (37565)
Garashan Creative Commons License 2023.09.21 0 0 37565

A1 és A2 legyen a két vizsgálni kívánt cella.

=HA(KEREKÍTÉS(A1;2)=KEREKÍTÉS(A2;2);"OK";"Valami nem OK")

Ez azt csinálja, hogy a matematika szabályai szerint kerekíti A1 és A2 cellák tartalmát 2 tizedes jegy pontosságra. Ha így egyenlőek, akkor kiírja, hogy "OK", ha nem egyenlőek, akkor kiírja, hogy "Valami nem OK".

Előzmény: Ketele69 (37564)
Ketele69 Creative Commons License 2023.09.21 0 0 37564

Sziasztok!

Az alábbiakban kérnék tanácsot.

 

Két számított cellák értékét szeretném úgy összehasonlítani, hogy 2 tizedes eltérésig még OK eredményt adjon. 

Sajnos a két érintett cella különböző helyről szed össze rengeteg adatot és a kerekítések miatt gyakran van ennyi eltérés.

 

Köszönöm szépen,

Garashan Creative Commons License 2023.09.20 0 0 37563

"Ha nem nyitja meg az excel ma reggelre a gépen a fájlokat dupla kattintással.
Ami még látszik, hogy #appvlp lett társítva a fájlokhoz.
A hiba egy frissítés az office-hoz (szeptember 12).
Megoldás. Office-on belül fiók-nál frissítések tiltása, majd rendszergazda joggal ennek a parancsnak a futtatása:
"C:Program FilesMicrosoft Office 15ClientX64officec2rclient.exe" /update user updatetoversion=15.0.5571.1000
A fenti parancs Office 2013 64 bites verzióra vonatkozik, eltérő verzió esetén módosítani kell! Ezzel visszaállunk a július 11-én kiadott verzióra."

 

 

Forrás: https://www.facebook.com/story.php?story_fbid=pfbid029wKDobZPadWQCGwE38aYFVS5i5xW6coG1H6C34xjQ9fiQnykiNKodmh9XuvKRX2pl&id=100087579956061

m54-b Creative Commons License 2023.09.20 0 0 37562

Office 2007-ben:

 

 

Már beszúráskor megadhatod a szöveget

 

 

Működik  a link a pdf-ben is.

 

Újabb offisznál lehet, máshol található meg a  beszúrás.

 

 

Előzmény: zatzsu (37561)
zatzsu Creative Commons License 2023.09.20 0 0 37561

Sziasztok,

 

Hogyan tudok excelben úgy pdf-filera mutató hivatkozást vagy honlapra mutató hivatkozást befűzni, hogy a befűzés után a hivatjozás neve átnevezhető legyen? Illetve fog e működni a hivatkozás, ha utána az excel file-ból pdfet készítek?

Takeoff. Creative Commons License 2023.09.18 0 1 37560

Köszönöm, így már tökéletes

Előzmény: Garashan (37546)
Delila10 Creative Commons License 2023.09.16 0 0 37559

Átneveztem az XLSTART menüben a füzetet Munkafüzet1-re. Most úgy indul az Excel, ahogy szokott, kivéve a cellaformátumokat.

Előzmény: Törölt nick (37558)
Törölt nick Creative Commons License 2023.09.16 0 0 37558

Én az új munkafüzeteket mindig a Mentés gombbal mentem, mert egyszerűbb elérni, és hozzá vagyok szokva, hogy úgyis rákérdez a mentés helyére és a fájlnévre.

De nyilván más szokásokat is ki lehet alakítani :)

Előzmény: Delila10 (37557)
Delila10 Creative Commons License 2023.09.16 0 0 37557

Igen.

Viszont nem jellemző, hogy bárki Munkafüzet1 néven szeretné elmenteni a munkáját.

Előzmény: Törölt nick (37553)
Garashan Creative Commons License 2023.09.15 0 0 37556

(:

Eredetileg az volt a kérdés, hogy hogyan lehet gyorsan beilleszteni csak értéket. Így én feltéfeleztem, hogy van a vágólapon másolt cella/tartomány.

Előzmény: Eredő Vektor (37555)
Eredő Vektor Creative Commons License 2023.09.15 0 1 37555

b@sszus. Dehogynem működik! De arról nem volt szó, hogy előtte kell egy ctrl+c is :)

Előzmény: pimre (37537)
Eredő Vektor Creative Commons License 2023.09.15 0 0 37554

Van menü-gomb, néha használom is.

Alighanem az O365-ben rontották el - ez van a melóhelyen.

 

 

 

Előzmény: pimre (37537)
Törölt nick Creative Commons License 2023.09.15 0 0 37553

"Azóta ezzel a füzettel nyílik meg az Excel..."

 

De akkor figyelned kell rá, hogy az "új" munkafüzetet mindig a "mentés másként" paranccsal mentsed el először, különben felülírja a sablonodat, nem?

Előzmény: Delila10 (37552)
Delila10 Creative Commons License 2023.09.15 0 0 37552

Nem szeretem, hogy alapból minden cella függőlegesen lentre van igazítva. Ezért egy új füzetben minden cellát függ. középre igazítottam, majd Munkafüzet.xlsx néven elmentettem az XLSTART könyvtárba. Azóta ezzel a füzettel nyílik meg az Excel (és persze a háttérben a personallal).

 

Egyebeket is be lehetne állítani ebben a füzetben, pl. hogy az első oszlop dátum formátumú legyen, ha általában ilyen lapokat használunk.

Előzmény: Törölt nick (37548)
Törölt nick Creative Commons License 2023.09.15 0 1 37551

Valószínűleg a másik lapon "nevek" vannak. Ezek valójában tartományok, amelyeknek saját nevük van. A Képletek menüben a Névkezelő alatt lehet menedzselni őket.

Az ilyen névvel rendelkező tartományokat meg lehet adni adatforrásként Érvényesítés során.

Előzmény: djuice (37549)
Garashan Creative Commons License 2023.09.15 0 0 37550

A kijelölt cellákra a következő képen lehet ezt beállítani:

  1. Ki kell jelölni a cellákat.
  2. Át kell kattintani az adatok fülre.
  3. Majd az "Adateszköz" csoportnál az "Érvényesítés" parancs
  4. Megengedve szövegnél ki kell választani, hogy lista.
  5. Forrásnak be kell állítani a lehetséges értékeket
  6. A "Legördülő lista" mellett be kell pipálni a négyzetet
  7. Illetve nézd meg a többi beállítást is. Pl. be lehet állítani, hogy csak az érvényes listaelemeket fogadja el, ha nem olyat ír be kézzel az ember, akkor milyen üzenetet kapjon, stb.
Előzmény: djuice (37549)
djuice Creative Commons License 2023.09.15 0 0 37549

Sziasztok!

 

Kaptam egy excel táblát, ami a celláiban lenyíló menükben a szomszédos munkalapokról nyeri a kiválasztható adatokat.

Ez milyen funkció vagy hogyan lehet ezt megcsinálni?

Törölt nick Creative Commons License 2023.09.15 0 0 37548

Más fájlnevekkel nem próbálkoztam, szerintem ha sok fájl van az XLSTART mappában, akkor mindegyiket megnyitja. De valószínűleg a PERSONAL.XLSB név speciális, és csak akkor lesz rejtett munkafüzet, ha így hívják.

De ez csak az én véleményem, szerintem jobban jársz, ha szépen módszeresen kiteszteled.

Előzmény: Törölt nick (37547)
Törölt nick Creative Commons License 2023.09.15 0 0 37547

Nem vagyok tökéletesen tisztában vele, hogy az Excel hol tartja és hogyan kezeli ezt a fájlt. Láttam már a

C:\Program Files (x86)\Microsoft Office\root\OfficeXX\XLSTART

mappában is, de nekem például a

C:\Users\YourName\AppData\Roaming\Microsoft\Excel\XLSTART

mappába tette.

 

Fogalmam sincs, hogy ez mitől függ. Talán Office verziótól, vagy OS verziótól, vagy a csillagok állásától...

 

Mindenesetre az aktuális pontos helyet ki lehet deríteni. Ha a VB Editorban a Project Explorer ablakban ráállsz a PERSONAL.XLSB feliratú projektre, aztán az Immediate ablakban kiadod ezt a parancsot:

? ThisWorkbook.Path

akkor kiírja.

 

És ha már megtaláltad, szerintem ez is csak egy ugyanolyan fájl, mint a többi. Ha kiveszed a mappából, akkor nem nyílik meg automatikusan, ha visszateszed, akkor megnyílik.

Előzmény: CsRob1 (37544)
Garashan Creative Commons License 2023.09.15 0 0 37546

Rá állsz a B1 cellára, majd feltételes formázásnál új szabály. A szabálytípusnál pedig válaszd "A formázandó cellák kijelölése képlettel" opciót.
Értékek formázása, ha ez a képlet igaz mezőbe írd be:

=A1=2

Formátumnál pedig állítsd be, hogy mi legyen kék (vagy amit szeretnél).

Majd OK gomb.

 

Utána ugyan ezt meg kell csinálni, csak a mezőbe "=A1=1" szerepeljen macskakaparások nélkül és ott is állítsd be a formátumot olyanra amilyenre szeretnéd.

Előzmény: Takeoff. (37545)
Takeoff. Creative Commons License 2023.09.15 0 0 37545

Használtam már feltételes formázást, de azt csak arra a cellára tudtam beállítani ami meg is lett formázva. Itt viszont másik cella értéke alapján kell formázni. 

Előzmény: Garashan (37541)
CsRob1 Creative Commons License 2023.09.15 0 0 37544

Köszönöm. Ez az egyéni makró munkafüzet ugye az XLSTART mappában lévő personal.xlsb? Csak ezen a néven ismeri az Excel vagy bármilyen nevű .xlsb -t ebben a mappában ugyanúgy kezel? Okozhat-e problémát, ha ez a fájl csak időnként van ebben a mappában (amikor szükségem van rá), máskor pedig nincs, illetve időnként cserélgetem? 

Előzmény: Törölt nick (37543)
Törölt nick Creative Commons License 2023.09.15 0 0 37543

Úgy hívják, egyéni makró-munkafüzet. Elindítod a makrórögzítőt, és amikor megkérdi, hogy mi legyen a rögzítés helye, kiválasztod a lenyílóból az "Egyéni makró-munkafüzetben"-t. Aztán rögzítesz egy tetszőleges makrót. Akkor létrejön ez a fájl, a Visual Basic editorban látod, és utána oda mindenféle makrókat be lehet pakolni. Ez a munkafüzet mindig a háttérben, rejtettként nyílik meg, valahányszor elindítod az Excel alkalmazást.

Hátránya, hogy ha indítasz párhuzamosan egy második Excel instance-ot, akkor az is meg akarja nyitni ugyanezt a fájlt, és abból lehet némi kavarodás. De nem vészes.

Előzmény: CsRob1 (37542)
CsRob1 Creative Commons License 2023.09.14 0 0 37542

Ha van egy ilyen makróm, akkor azt hogy lehet elérni, hogy bármelyik megnyitott Excel fájlban működjön? Korábban, mikor tömegesen volt szükségem értékbeillesztésre, úgy sikerült megoldanom, hogy egy üres  makróbarát munkafüzetben volt a makró, és ha használni akartam, akkor ezt a munkafüzetet is megnyitottam. Van ennél egyszerűbb megoldás?

Előzmény: Törölt nick (37526)
Garashan Creative Commons License 2023.09.14 0 0 37541

Van.

Feltételes formázásnál keresd a Kezdőlap fülön.

Előzmény: Takeoff. (37540)
Takeoff. Creative Commons License 2023.09.14 0 0 37540

Sziasztok!

 

Van arra módszer, hogyha pl. az A1 cellába 1 szerepel akkor a B1 cellában lévő adat pirossal jelenjen meg, ha 2 akkor kékkel? 

pimre Creative Commons License 2023.09.14 0 1 37539

Először irtam egy elnézést kérő hozzászólást, jelezve a hibát. Aztán törlést kértem a moditopikban mindkettőre, és szerencsére gyorsan megtették. Láthatsz két lyukat a számozásban.

Előzmény: Törölt nick (37538)
Törölt nick Creative Commons License 2023.09.14 0 0 37538

Azt hogy csináltad, hogy utólag módosítottad a hozzászólást? Vagy rosszul emlékszem, hogy az eredeti poszt nem ilyen volt?

Előzmény: pimre (37537)
pimre Creative Commons License 2023.09.13 0 0 37537

"Nálam pl. nem megy, pedig tök jó ötlet." Nem egészen értem, hogy mi az oka, hogy nálad nem megy. Nincs Menü gomb?

 

 

 

Sajnos vannak olyan gépek, ahol nincs. Persze van olyan, ahol a jobb oldali Windows gomb hiányzik, és csak Menü gomb van. 

 

Ha viszont van Menü gombod, akkor lehet, hogy nem jelöltél ki másolandó cellá(ka)t? Mert egyébként működnie kellene. Vagy a menü gomb egyáltalán nem ad a gépeden helyi menüt más helyzetben sem? Mert akkor a gépeden van valami másképp beállítva.

 

AZ F2, F9, ENTER valóban csak egy cellán működik, sokan bosszankodnak is rajta. Pl.: https://forum.ozgrid.com/forum/index.php?thread/104427-macro-to-f2-f9-enter-then-repeat/

Előzmény: Eredő Vektor (37532)
Garashan Creative Commons License 2023.09.13 0 0 37534

2016-os, 2019-es és 2021-es verzió alatt próbáltam. Mindhárom verzió alatt működött. Nem tudom, hogy mikortól érhető el a jobb egérgombos menüben a gyorsgomb. Régen emlékszem, hogy egy külön ablakban kellett beállítani a beillesztés beállításait.

Nálam így néz ki a menü, a piros feliratok akkor jelennek meg, amikor ráviszem az egeret. Nálam "É" betűvel lehet köztük váltani, a második "É" betű lenyomására ugrik az érték beillesztésre.

Előzmény: Eredő Vektor (37532)
Eredő Vektor Creative Commons License 2023.09.13 0 0 37533

Bírom az ilyen "életszagú" hozzászólássokat, főleg egy ilyen "száraz" topikban :)

Előzmény: Garashan (37530)
Eredő Vektor Creative Commons License 2023.09.13 0 0 37532

Verziófüggő. Nálam pl. nem megy, pedig tök jó ötlet. Úgy szoktam, hogy F2, F9, ENTER. De ez csak 1 cellán működik.

Előzmény: Garashan (37528)
XNC Creative Commons License 2023.09.11 0 1 37531

Talán azt se ártott volna tisztázni, hogy melyik verzióról beszélünk.

.

Te leírtad a magyart, én meg leírom az angolt:

A korábban említett gomb lenyomása után lesz a "paste" alatt 1 "paste special" menü is;

ott a "Value", tehát az értéket kell kiválasztani.

Előzmény: Garashan (37528)
Garashan Creative Commons License 2023.09.11 0 0 37530

Férfiasan bevallom én se használtam túl sokat. De tavaly év végén felmondtam a régi munkahelyemen és írtam néhány utasítást, mit hogyan csináljanak az excel táblázatokban. Akkor jöttem rá, hogy ez a legegyszerűbb és a leggyorsabb módja. Amúgy is jó magam előnybe részesítem a billentyű kombinációkat az egérrel való hadonászással szemben, mert jóval gyorsabb velük a munka.

Amikor gyerekként egy-két alkalommal voltam a sebészeten ellátáson, akkor mindig csodáltam, hogy anya milyen gyorsan lépked ide-oda a programban. Akkor még valami DOS alapú programot használtak, gyakorlatilag egér nélkül lehetett csak. Mivel addigra már nagyon sok évet lehúzott ott, így a kisujjában volt minden kombináció és szinte csak egy villanásnyi időre jött fel egy új ablak, de ő már tovább is lépet.

Igaz a gomb nevére már nem emlékeztem :) De ezek szerint egész találó neve van.

Előzmény: pimre (37529)
pimre Creative Commons License 2023.09.11 0 0 37529

Off: Ez nekem új. Nem használtam sose. Most rákerestem, és kiderült, hogy a neve is az, amit írsz menü billentyű, angolul menu button, vagy menu key: https://en.wikipedia.org/wiki/Menu_key. Lényegében a jobb egér gomb funkcióját látja el. Mellesleg a Shift + F10 is használható ugyanerre a célra.

 

 

Előzmény: Garashan (37528)
Garashan Creative Commons License 2023.09.11 0 0 37528

Ha magyar Exceled van, akkor a jobb oldali alt mellett van egy speciális billentyű, azzal menüt lehet előhívni. Ha cellán állsz, akkor gyakorlatilag jobb kattintásnak felel meg. Utána kétszer É gomb, majd enter. És máris csak értéket illesztesz be.

Előzmény: thomas5000 (37527)
thomas5000 Creative Commons License 2023.09.11 0 0 37527

Köszönöm szépen!

Előzmény: Törölt nick (37526)
Törölt nick Creative Commons License 2023.09.11 0 0 37526

Abban igaza van Pimre kartácsnak, hogy a standard Ctrl+v beillesztés működését makróval nem lehet módosítani.

Viszont lehet olyan makrót írni, ami csak értéket illeszt be:

 

Sub beill_eszt()
    Selection.PasteSpecial xlPasteValues
End Sub

 

És utána ennek az indítását hozzá lehet rendelni akár a Ctrl+v kombinációhoz is.

Bár én inkább valami más kombinációhoz rendelném, olyanhoz, ami alapból nincs használatban.

Előzmény: thomas5000 (37524)
pimre Creative Commons License 2023.09.11 0 0 37525

Nem

Előzmény: thomas5000 (37524)
thomas5000 Creative Commons License 2023.09.11 0 0 37524

Sziasztok!

 

Egy olyan kérdésem lenne, hogy megoldható-e makróval, hogy a ctrl+v lenyomására csak az értéket illesze be, és semmi mást.
Szóval formátumot, meg ilyeneket ne.

Viselkedjen úgy, mintha csak az érték beillesztésére mennék egérrel.

 

Nem tudom mennyire érthető, remélem igen.

 

Előre is köszönöm a segítségeket!

local75 Creative Commons License 2023.09.05 0 0 37523

Szia!

Köszi ismét.

Jól működik.

Előzmény: pimre (37522)
pimre Creative Commons License 2023.09.04 0 1 37522

Szia, egy egyszerű megoldás:

 

Az aktuális munkalap kód oldalára, vagy egy új modulba másold be a következőt:

 

Sub elrejt()

Dim sor As Long

For sor = 1 To ActiveSheet.Range("I" & Rows.Count).End(xlUp).Row

    If ActiveSheet.Cells(sor, "I") = "A" Then

        ActiveSheet.Rows(sor).EntireRow.Hidden = True

    End If

Next sor

End Sub

 

Indításkor az adott munkalapon állj, majd indítsd el a programot. Megcsinálja, amit kérsz.

 

Azt hiszem, lenne elegánsabb megoldás, a ciklus kihagyásával egyetlen sorban megoldva, de erre most nincs ötletem.

Előzmény: local75 (37521)
local75 Creative Commons License 2023.09.04 0 0 37521

Sziasztok!

 

Segítségre van szükségem.

Makróval akarok elrejteni sorokat.
Az I oszlopban kellene keresni A betűt, és ahol A betű található, azt a sort el kellene rejteni.

 

Köszönöm

pimre Creative Commons License 2023.09.04 0 0 37520

Ugye az csak elütés, amit küldtél?

 

A1: 5  B1: 3

A2: 4  B2: 4

A3: 3  B3: 6

 

A5: 2  B5:  5

A6: 6  B6:  2

A6: 9  B7:  1

 

Mert szerintem a második csoportnak így kellene kinéznie:

 

A4: 2  B4:  5

A5: 6  B5:  2

A6: 9  B6:  1

 

És az összegzőnek is így kellene kinéznie:

 

C1: =SUM(A1:A3)=12

C2: =SUM(A4:A6)=17

 

Mert Garashan ezzel a feltétellel gondolta a javaslatát. Szerintem helyesen, különben nem stimmelnek a számaid. A Sum (A3:A6) =11 lenne (3+2+6), és a második csoportban is - bár ott két A6 szerepel - a Sum (A3:A6) ott is 17 lenne.

 

Légy szíves figyelmesebben add meg a képleteket, bár szerintem Garashan megoldása jó.

Előzmény: MM10 (37518)
Garashan Creative Commons License 2023.09.04 0 0 37519

Én így módosítanám a képleteket:

C1: =SZUM(A1:A3)+HA(ÉS(SZUM(A1:A3)=SZUM(A4:A6);MIN(B1:B3)=1);1;0)

C2: =SZUM(A4:A6)+HA(ÉS(SZUM(A1:A3)=SZUM(A4:A6);MIN(B4:B6)=1);1;0)

Előzmény: MM10 (37518)
MM10 Creative Commons License 2023.09.04 0 0 37518

Nem,viszont a probléma megoldásra kerül ha nem továbbküldöm a filet,hanem megoszton megnézésre.

 

Egy másik kérdésem lenne.

 

egy nagyon egyszerű példával szemléltetve a dolgot.

 

A1: 5  B1: 3

A2: 4  B2: 4

A3: 3  B3: 6

 

A5: 2  B5:  5

A6: 6  B6:  2

A6: 9  B7:  1

 

C1: =SUM(A1:A3)=12

C2: =SUM(A3:A6)=17

 

A B oszlop az egy sorrendet jelent a számok alapján legnagyobb az 1. és így tovább.

 

Vegyünk egy másik példát,amivel problémába ütközöm

A1: 3  B1: 4

A2: 4  B2: 3

A3: 5  B3: 2

 

A5: 1    B5:  5 

A6: 11  B6:  1

A6: 0    B7:  6

 

C1: =SUM(A1:A3)=12

C2: =SUM(A3:A6)=12

 

A problémám az,hogy a C1 és a C2es számok nem lehetnek egyenlőek,ez esetben szeretném ha a táblázat hozzáadna az összeshez a C1 és C2 cellában,amelyiknél a B oszlopban az "1" szerepel. Ez esetben a C2eshez,mivel az A6os számhoz tartozik az egyes szám. Ezt hogyan tudnám megoldani?

Előzmény: pimre (37509)
Törölt nick Creative Commons License 2023.09.04 0 0 37517

Esetleg azt próbáld meg, hogy a .Copy és  a .Paste közé beteszel egy DoEvents sort.

Meg én azt az "ActiveSheet" -et mindenképpen lecserélném valami egzakt hivatkozásra.

Előzmény: Garashan (37515)
pimre Creative Commons License 2023.09.04 0 0 37516

A makró megakadásról jut eszembe. három évvel ezelőtt kezdtem el írni egy meglehetősen szertegátazó interaktív programot, akkor még Office 2010 alatt. Minden rendben volt vele. Aztán, amikor a befejezéshez közeledtem - jó néhány hónap múlva -, telepítettem a 2019-es verziót. Legnagyobb döbbenetemre a program időről időre egyes helyeken megállt. Nem küldött hibaüzenetet csak megállt. Amikor megtaláltam a megállás helyét - mindig más helyen volt - akkor F5-el tudtam folytatni. Csakhogy nem magamnak szántam, és nem lett volna elfogadható, hogy így adjam át a felhasználónak. Sok találgatás után kiderült, hogy a ScreenUpdating kikapcsolása volt az ok. Hogy miért, arról fogalmam sincs. Kiirtottam, és onnantól hibátlanul működött. Kicsit rángatódzott néha a képernyő, de ezt inkább tartottam elfogadhatónak, mint a rendszeres megállást.

Előzmény: Garashan (37515)
Garashan Creative Commons License 2023.09.04 0 0 37515

Köszönöm, hogy szántál rá időt.

Az eredeti makrót évekkel ezelőtt írtam, 2016-os vagy 2019-es Office verzió alatt. Itthon 2021-es verzióm van. Tegnap este viszont jött egy telefon, hogy jó lenne, ha hasonlóan a korábbihoz itt is meg lehetne vizuálisan jeleníteni, hogy hogy áll a kamion töltöttsége.  Átmásolva a makrót és a hivatkozásokat rendbe téve az új dokumentumhoz jött a fekete leves, hogy sokszor hibára fut. Még éjjel a felhasználási helyén is ellenőriztem, ott amúgy nem tudtam reprodukálni a hibát. De csak egy munkaállomást érek el távolról az 5 darabból, így kicsit idegesített, hogy itthon megakad a makró. Amióta elkészült az eredeti makró azóta amúgy nem volt vele gond, nem is volt rajta módosítva még sohasem. De nyilván, ha új munkaállomás kerülne be a rendszerbe, akkor okozhatna gondot.

 

Egyelőre úgy hagyom, hogy marad a dupla copy-s sor. Ha esetleg mégis problémát okozna, akkor felhasználom az általad küldött kódrészletet. Bár a sok próba alatt 1 esetben a copy sorra is hibát adott. Esetleg még a DoEvents, mint lehetőség.

Előzmény: pimre (37514)
pimre Creative Commons License 2023.09.04 0 0 37514

Válaszoltam. De nem tudom a makró alapján megtalálni a hiba okát, hiszen nem a programod hibájáról van szó. 

Előzmény: Garashan (37513)
Garashan Creative Commons License 2023.09.04 0 0 37513

Szóval többször is lefuttam a makrómat.

1. eset: maradt a duplázott copy sor

2. eset: már csak 1 copy sor van

Ma nem akarta az igazságot. Sohasem jött ki 0 hiba :) Az esetek 90%-ban hiba=1, 10%-ban pedig hiba=2. 3 hibát sohasem regisztrált.

 

Közben rájöttem még valamire. Az Application.Wait függvénynek hiába lehet letuszkolni a torkán milliszekundumokat is jó formán nem veszi őket figyelembe. Szóval tegnap csak placebó hatás volt, hogy segített. Maximum 1 pillanattal több ideje volt utolérnie magát a makrónak. Arra alapozom az állításomat, hogy ha 500 ms várakozási időt adtam meg, akkor nem volt érezhető lassulás. Viszont ha 501 ms várakozási időt adtam meg, akkor kb. 1 mp-re felfüggesztette a futást.

Itthon a Sleep függvényt nem sikerült működésre bírni, pedig biztos vagyok benne, hogy már csináltam olyat.

 

Elküldtem e-mailben a dokumentumot, miután kipucoltam belőle az érzékeny adatokat.

Előzmény: pimre (37512)
pimre Creative Commons License 2023.09.04 0 0 37512

És esetleg hibafigyeléssel tesztelnéd, hogy sikerült-e, és ha nem, akkor visszaküldöd valahogy így:

 

hiba=0

:ujra

On error resume next

ActiveSheet.Paste

if err>0 then

   hiba=hiba+1

   if hiba>2 then ' Ha már harmadszor jön ide hiába

      'Tévedés, ez nem megoldás sajnos, ezért akkor itt lehet a várakoztatás

   endif

   goto ujra ' EGy korábbi vitára emlékezve ilyenkor azért elfogadható a goto parancs:-)

endif

on error goto 0

 

Más: itt találtam egy megoldást hasonló problémára: https://forum.ozgrid.com/forum/index.php?thread/1226709-paste-method-of-worksheet-class-failed/

A kérdező szerint a 9. javaslat (ezen belül nyilván a Sub maybe_4) a Paste megkerülésével oldotta meg a dolgot másolással. Nem tudom, nálad is megoldás lenne ez.

 

Ha egyik megoldás sem működik, akkor remélhetőleg jelentkezik Jimmy. Ő már többször talált az én hasonló problémáimra megoldást.

 

Előzmény: Garashan (37510)
Garashan Creative Commons License 2023.09.03 0 0 37511

Mondjuk ha megduplázom a 'Variables.Shapes(kepnev).Copy' sort, és kommentelem a várakozást, akkor egyszer se futott hibára a makró.

Előzmény: Garashan (37510)
Garashan Creative Commons License 2023.09.03 0 0 37510

Van egy makróm a következő dolgot csinálja:

  • megrendelő lapon figyeli a munkafüzet változását
  • ha a munkafüzet megváltozott, akkor törli a megfelelő nevű képeket róla
  • a kocsi telítettségének megfelelően beilleszt egy képet
  • majd a képet eltolja a megfelelő koordinátákra

Nos nekem a beillesztéssel van probléma. Eddig tökéletesen futott a makró. De most itthonról nyitottam meg és hibára futott....

A hiba:

Run-time error '1004':

Worksheet osztály Paste metódusa hibás

vagy angolul "Paste Method of Worksheet class failed"

 

Arra magamtól is rájöttem, hogy túl gyors neki a gépem. Hahaha. (Vagy túl lassú) Ugyanis, ha hibakereséshez betettem a következő sort 'MsgBox kepnev', akkor sohasem futott hibára.

Amúgy pedig teljesen véletlenszerűen jött elő a hiba.

Itt az egyik kommentben azt javasolták, hogy 'Application.Wait (Now + TimeValue("0:00:01"))' sort szúrjuk be és akkor csökken a hibák száma.

Tudtok erre valami elegánsabb megoldást? Hogy ne legyen annyira zavaró az 1 másodperces szünet, így levittem 250 ms-ra a várakozási időt. De attól függetlenül nem tetszik a megoldás... Illetve az itthoni gépemen így igaz, hogy csökkent az esetek száma, de nem szűnt meg teljesen. Másik gépen tesztelve viszont nincs probléma.

 

A kérdéses kódrészlet:

i = Variables.Range("B1").Value
If i < 5 Then
kepnev = "kocsi000"
ElseIf i < 10 Then
kepnev = "kocsi005"
ElseIf i < 97.5 Then
i = i / 5
kepnev = "kocsi0" & i * 5
ElseIf i <= 100 Then
kepnev = "kocsi100"
Else
kepnev = "kocsi101"
End If
Range("L1:M2").Select
Variables.Shapes(kepnev).Copy
'MsgBox kepnev
Application.Wait Now + ms * 250
ActiveSheet.Paste

pimre Creative Commons License 2023.09.03 0 0 37509

Elég valószínűtlen, de megkérdezem: Nem telt meg a drive?

Előzmény: pimre (37508)
pimre Creative Commons License 2023.09.03 0 0 37508

A megoldástól még messze vagyunk, de annyival előrébb jutottunk, hogy a probléma a továbbküldéstől független.

Ha jól értelek, arról van szó, hogy van egy Excel munkafüzeted, és azon az egyik munkalapot a Drive-on formázod: képeket teszel bele, betméreteket módosítasz, cellákat formázol, és mindezek a módosítások elvesznek, mikor a munkafüzet kikerül a Drive környezetből.

 

Jól értem? Ha igen, akkor azt, hogy mi az ok és a megoldás, egyelőre nem sejtem, csak annyit tudunk,hogy a munkafüzet letöltése után a módosítások elvesznek. (A visszaimportálás ebből a szempontból érdektelen. Naná, hogy az elveszett formázások nem jönnek vissza:-)

 

Szóval arra keressük a választ, hogy a Drive-on végzett módosítások miért vesznek el letöltés után. Ugye az Office verziód viszonyleg friss? Mondjuk nem 2003-as?

Előzmény: MM10 (37507)
MM10 Creative Commons License 2023.09.03 0 0 37507

letöltés utáni változát sem jó nálam sem már sem driveba újra beimportálva sem microsoft excelel megnyitva,ugyan ez a helyzet ha valakinek továbbküldöm 

Előzmény: pimre (37506)
pimre Creative Commons License 2023.09.03 0 0 37506

A "továbbküldés" mit jelent? Letöltöd, és azt küldöd tovább? Ebben az esetben a letöltött még jó, a továbbküldött pedig nem?

 

Előzmény: MM10 (37503)
MM10 Creative Commons License 2023.09.03 0 0 37505

.xlsx

Előzmény: Garashan (37504)
Garashan Creative Commons License 2023.09.03 0 0 37504

Én még nem találkoztam ilyennel. Milyen dokumentumot szerkesztesz a driveal? xls, xlsx, xlsm vagy valami mást, esetleg a sajátját?

Előzmény: MM10 (37503)
MM10 Creative Commons License 2023.09.02 0 0 37503

Sziasztok. Google Driveban szerkeztett táblázatnál ha továbbküldöm a fájlt elcsúszik az egész táblázat. A képek,a betűméretek visszaváltoznak eredeti méretre,a cellák nagysága visszaváltozik eredeti méretre (microsoft excel és google driveba is)

1. ez mitől van?

2. Hogyan tudom javítani a dolgot?

 

pimre Creative Commons License 2023.09.01 0 1 37502

Akkor az egyszerűség kedvéért idemásolom a teljes kódot:

 

Sub masolo()

Dim forrashely As Worksheet, celhely As Worksheet, cell As Range, utolsosor, utolsooszlop, sor As Long, oszlop As Long

Set forrashely = ThisWorkbook.Worksheets("Munka1")

Set celhely = ThisWorkbook.Worksheets("Munka2")

utolsosor = forrashely.Range("A" & Rows.Count).End(xlUp).Row

utolsooszlop = forrashely.Cells(1, Columns.Count).End(xlToLeft).Column

For sor = 1 To utolsosor

    For oszlop = 1 To utolsooszlop

        forrashely.Cells(sor, oszlop).Copy

        If forrashely.Cells(sor, oszlop).Font.ColorIndex = színkód Then

            celhely.Cells(sor, oszlop).PasteSpecial Paste:=xlPasteFormulas

        Else

            celhely.Cells(sor, oszlop).PasteSpecial Paste:=xlPasteValues

       End If

    Next oszlop

Next sor

End Sub

 

Sub Szin_lekerdezes()

    Dim Rh As Integer, Gh As Integer, Bh As Integer

    Dim Rk As Integer, Gk As Integer, Bk As Integer

    Dim hatter, karakter

  

    hatter = Selection.Interior.Color

    karakter = Selection.Font.Color

  

    Rh = hatter Mod 256

    Gh = (Int(hatter / 256)) Mod 256

    Bh = Int(hatter / 256 ^ 2)

  

    Rk = karakter Mod 256

    Gk = (Int(karakter / 256)) Mod 256

    Bk = Int(karakter / 256 ^ 2)

  

    MsgBox "Háttér RGB:  " & Rh & ", " & Gh & ", " & Bh & vbLf & _

        "Karakter RGB:  " & Rk & ", " & Gk & ", " & Bk & vbLf & vbLf & _

        "Háttér színkód:  " & Selection.Interior.ColorIndex & vbLf & _

        "Karakter színkód:  " & Selection.Font.ColorIndex

End Sub

 

És ha kiválasztasz egy színt, akkor annak színkódját lekérdezed a Delilától kapott lekerdezes() makróval, majd a kapott színkódot beírod a masolo() makróban a szinkód helyére és utána indítod el a masolo() makrót.

 

Természetesen a megtartandó képletek színkódja mindenütt ugyanaz legyen.

Előzmény: CsRob1 (37496)
pimre Creative Commons License 2023.09.01 0 1 37501

Bocsánat, elnéztem. Elfelejtettem, hogy az

 

If forrashely.Cells(sor, oszlop).Font.Color helyett a 

If forrashely.Cells(sor, oszlop).Font.ColorIndex re kellett volna javítanom a képletet. És ezzel már jól működik. Köszönöm.

Előzmény: pimre (37500)
pimre Creative Commons License 2023.09.01 0 0 37500

Kösz, ez nagyon jó, de amikor ráállok egy cellára, amin a piros betűszínt jelöltem ki, aminek a kódja 255, akkor a függvényeddel ezt kapom:

 

 

 

 

És az immediate ablakban az érték ?range("b3").Font.Color  esetében 255.

 

És a 3 értékkel nem működik a program, a 255-el pedig igen.

 

A helyzet az, hogy a színek kezelésével nemigen foglalkoztam, tehát lehet, hogy nálam van a hiba, de nem tudom, mi a megoldás.

 

 

Előzmény: Delila10 (37499)
Delila10 Creative Commons License 2023.09.01 0 1 37499

Valamikor Jimmy the Hand segítségével írtam egy makrót a personalba.

 

Sub Szin_lekerdezes()

    Dim Rh As Integer, Gh As Integer, Bh As Integer

    Dim Rk As Integer, Gk As Integer, Bk As Integer

    Dim hatter, karakter

   

    hatter = Selection.Interior.Color

    karakter = Selection.Font.Color

   

    Rh = hatter Mod 256

    Gh = (Int(hatter / 256)) Mod 256

    Bh = Int(hatter / 256 ^ 2)

   

    Rk = karakter Mod 256

    Gk = (Int(karakter / 256)) Mod 256

    Bk = Int(karakter / 256 ^ 2)

   

    MsgBox "Háttér RGB:  " & Rh & ", " & Gh & ", " & Bh & vbLf & _

        "Karakter RGB:  " & Rk & ", " & Gk & ", " & Bk & vbLf & vbLf & _

        "Háttér színkód:  " & Selection.Interior.ColorIndex & vbLf & _

        "Karakter színkód:  " & Selection.Font.ColorIndex

End Sub

 

Ezt kitettem a gyorselérésire, azóta sokszor alkalmazom, nagyon hasznos, hála Jimmynek.

Előzmény: pimre (37497)
gobe2222 Creative Commons License 2023.09.01 0 0 37498

Köszönöm szépen a segítséget, műxik! :)

Előzmény: Törölt nick (37494)
pimre Creative Commons License 2023.09.01 0 0 37497

A betűszín használatához az  If forrashely.Cells(sor, oszlop).Interior.Color = 255 Then sorában az  Interior.Color helyett Font.Color álljon.

A színkód lekérdezésére nem tudok jobb megoldást, mint a VBA oldalon (ALT + F11 után) az Immediate ablakban az aktív munkalap egyik már beszínezett cellájának színét lekérdezed: Ha mondjuk az A1, akkor ezt írod be: ?range("A1").Font.Color, majd az Enter után kiírja a színkódot.

 

Ha nálad nem jelenik meg az Immediate, akkor a fenti menüsorban a View alatt kérd a megjelenítését.

 

Előzmény: CsRob1 (37496)
CsRob1 Creative Commons License 2023.08.31 0 0 37496

Köszönöm, működik. Kisebb módosításokkal fogom tudni használni. Ha nem a cella háttérszínével, hanem a karakter színével különböztetem meg a képletes cellákat, akkor az Interior.Color helyett mit kell használni? Az Excel által a betűszín kiválasztásánál felajánlott színek (Alapszínek és Színösszeállítás) kódjait hol tudom megnézni? 

Előzmény: pimre (37489)
Törölt nick Creative Commons License 2023.08.31 0 0 37495

Elmondásod alapján arra gondolok, hogy van egy sablon táblázatod, aminek mindig ugyanaz a felépítése, és mindig ebbe pakolgatod bele az adatokat, de bizonyos adatokat képlet nélkül kellene.

Ha így van, akkor én azt tenném, hogy

  • a sablonban létrehoznék egy nevesített tartományt, avagy "nevet" az érintett cellákból,
  • átmásolok mindent úgy, ahogy van, képletestül
  • és utána futtatnék egy olyan makrót, ami a named range összes cellájában cseréli a képletet értékre.

Pl. ha a nevesített tartományt úgy hívják, hogy "no_formula_cells", és a Munka1 lap következő celláiból áll: F8, K12, J5, A7, J8  (valójában mindegy, milyen cellák vannak benne, ez tényleg csak egy példa)

akkor a makró ilyesmi lenne:

 

Dim c as Range

For Each c in Range(ThisWorkbook.Names("no_formula_cells").RefersTo).Cells

     c.formula = c.value

Next

 

Előzmény: CsRob1 (37484)
Törölt nick Creative Commons License 2023.08.31 0 0 37494

A két intervallum legyen (a;b) és (x;y).

Képlet:

=MIN(MAX(a:b);MAX(x:y)) >= MAX(MIN(a:b);MIN(x:y))

 

Teszteltem pár esetre, jónak tűnik...

Előzmény: gobeee (37493)
gobeee Creative Commons License 2023.08.31 0 0 37493

Igen, pontosan ezeket az eseteket próbáltam betenni a függvényképletbe, de sehogy sem volt hajlandó elfogadni.

Igazából mindegy hogy nyitott vagy zárt, mindkettő jó. Ehhez kérek szépen egy excel számára elfogadható képletet.
Köszi szépe előre is!

Előzmény: Garashan (37488)
Garashan Creative Commons License 2023.08.31 0 0 37492

De ha ez sem megoldás. Akkor a makró futtatása előtt, ha kijelöléssel kijelöli azokat a cellákat, ahol át kell vinni a képletet, akkor szerintem meglehet úgy írni a makrót, hogy ezt le tudja kezelni.

A kijelölt cellák hivatkozását el kell menteni egy tömbben. Minden átmásolni csak értékként, majd a tömbben elmentett hivatkozásokat átmásolni függvényként.

Előzmény: Garashan (37491)
Garashan Creative Commons License 2023.08.31 0 0 37491

Arra gondolok, hogy a táblázat szerkezete mindig ugyan az. Mondjuk egy árajánlat adó A4-es lap. A tételek változnak és mondjuk máshonnan jönnek az árak (nyilván azokat számként kell átvinni), de mondjuk a lap alján a szummázás már lehet képlet.

De lehet, hogy életszerűbb példa, ha megrendelő lapként gondolunk rá. Akkor az eladási ár kerül át számként, míg a sorösszegnek képletnek kell lennie.

Előzmény: pimre (37490)
pimre Creative Commons License 2023.08.31 0 0 37490

"Esetleg ha a táblázat szerkezete statikus, akkor nem kell trükközni se az eltérő formázással." Bocs, de ezt nem értem. Kíváncsi vagyok, mire gondolsz.

Előzmény: Garashan (37487)
pimre Creative Commons License 2023.08.31 0 1 37489

Készítettem is egy makrót, ami megcsinálná. Piros hátteret (színkód 255) csináltam a meghagyandó képletet tartalmazó cella hátterének.

A program végigmegy a teljes táblázaton, és mindent számmá alakít, ha nem piros a háttér, utóbbiaknál megtartja a képletet. A formázást nem tartja meg, feltételezem, hogy a célhelyen már nem lesz rá szükség.

Egyetlen munkafüzeten belül terveztem meg, Munka1 és Munka2 lapokkal:

 

 

Sub masolo()

Dim forrashely As Worksheet, celhely As Worksheet, cell As Range, utolsosor, utolsooszlop, sor As Long, oszlop As Long

Set forrashely = ThisWorkbook.Worksheets("Munka1")

Set celhely = ThisWorkbook.Worksheets("Munka2")

utolsosor = forrashely.Range("A" & Rows.Count).End(xlUp).Row

utolsooszlop = forrashely.Cells(1, Columns.Count).End(xlToLeft).Column

For sor = 1 To utolsosor

    For oszlop = 1 To utolsooszlop

        forrashely.Cells(sor, oszlop).Copy

        If forrashely.Cells(sor, oszlop).Interior.Color = 255 Then

            celhely.Cells(sor, oszlop).PasteSpecial Paste:=xlPasteFormulas

        Else

            celhely.Cells(sor, oszlop).PasteSpecial Paste:=xlPasteValues

       End If

    Next oszlop

Next sor

End Sub

Előzmény: pimre (37485)
Garashan Creative Commons License 2023.08.31 0 0 37488

Szerintem a felsorolt 3 függvénnyel meg lehet oldani. Most éppen utazok és nincs nálam papír és ceruza, de annyi a trükk, hogy fel kell rajzolni az összes lehetőséget és utána azt vizsgálni, hogy annak megfelel-e vagy sem.

A két intervallum legyen (a;b) és (x;y).

Ha nem tévedek, akkor a következő esetek kellenek neked:

x<=a<=y

x<=b<=y

a<=x<=b

a<=y<=b

Nyilván nem mindegy, hogy nyitott vagy zárt intervallumról beszélünk. Annak függvényében a relációs jelek változhatnak.

Előzmény: gobeee (37486)
Garashan Creative Commons License 2023.08.31 0 0 37487

Én is ilyesmire gondoltam. Esetleg ha a táblázat szerkezete statikus, akkor nem kell trükközni se az eltérő formázással.

Előzmény: pimre (37485)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!