Keresés

Részletes keresés

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)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!