Hirdetés

2024. április 19., péntek

Gyorskeresés

Útvonal

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

Téma összefoglaló

Téma összefoglaló

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

LOGOUT.hu

A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.

Összefoglaló kinyitása ▼

Hozzászólások

(#48651) tomy86


tomy86
addikt

Sziasztok!
Van egy táblázatom, amiben a tankolásokat rögzítem.
Négy oszlop: A: liter, B: távolság, C: átlagfogyasztás, D:tele/részleges
D oszlopban kiválasztható, hogy tele lett tankolva vagy nem.
Hogy tudom megadni, hogy az átlagfogyasztást csak akkor számolja, ha a D oszlopban a "tele" érték szerepel? Eddigi próbálkozásaim sikertelenek voltak.
Előre is köszönöm a segítséget.

(#48652) Magnat válasza tomy86 (#48651) üzenetére


Magnat
veterán

Szia,

C2-be: HA(D2="tele";A2/B2*100;"")

Aztán lehúzod az aljáig ...

[ Szerkesztve ]

̿' ̿'\̵͇̿̿\з=(◕_◕)=ε/̵͇̿̿/'̿'̿ ̿

(#48653) tomy86 válasza Magnat (#48652) üzenetére


tomy86
addikt

:R Nagyon köszönöm. Egy napja próbálkozok hasonló függvényekkel és most látom, hogy miért nem működtek. D2 után soha nem tettem egyenlőségjelet.

(#48654) Lokids


Lokids
addikt

Sziasztok!

Van egy alábbi makró részletem, amiben a legelső For ciklus nem lépdel. Sohasem lép rá a next-re. Azon belüli ciklusok simán végigfutnak ahogy kell. De a "For OpenSor" rész csak 1x fut le, pedig s_OpenlastRow 6000 körüli értékkel bír. (6000 soros az excel amit végig kéne nyálaznia). Ennek ellenére csak a legelső sort nézi végig. :( Mit nézek el?

For OpenSor = 4 To s_OpenLastRow
        s_OpenTorzsNum = Workbooks(OpenWBName).Worksheets(1).Cells(OpenSor, 2).Value
            For Sor = 4 To s_LastRow
                s_TorzsNum = Workbooks(MainWBName).Worksheets(s_wsName).Cells(Sor, 2).Value
                
                If s_TorzsNum = s_OpenTorzsNum Then
                
                    For OpenCol = 6 To s_OpenLastCol
                        s_FteNum = Workbooks(OpenWBName).Worksheets(1).Cells(2, OpenCol).Value
                        
                        For MainCol = 6 To s_MainLastCol
                            s_MainFteNum = Workbooks(MainWBName).Worksheets(s_wsName).Cells(2, MainCol).Value
                            
                                If s_MainFteNum = s_FteNum Then
                                    If Workbooks(OpenWBName).Worksheets(1).Range(Col_Letter(OpenCol) & OpenSor).Value <> "" Then
                                        CellaTartalom = Workbooks(MainWBName).Worksheets(s_wsName).Cells(Sor, MainCol).Value
                                        OpenCellaTartalom = Workbooks(OpenWBName).Worksheets(1).Cells(OpenSor, OpenCol).Value
                                        If CellaTartalom = "" Then
                                            Workbooks(MainWBName).Worksheets(s_wsName).Cells(Sor, MainCol).Value = OpenCellaTartalom & ";"
                                        Else
                                            PartString = Left(CellaTartalom, InStr(1, CellaTartalom, ";") - 1)
                                            Workbooks(MainWBName).Worksheets(s_wsName).Cells(Sor, MainCol).Value = PartString & ";" & OpenCellaTartalom
                                        End If
                                    End If
                                End If
                        Next MainCol
                    Next OpenCol
                
                End If
            Next Sor
    Next OpenSor
  

[ Szerkesztve ]

If you chase two rabbits you will lose them both.

(#48655) Fferi50 válasza Lokids (#48654) üzenetére


Fferi50
őstag

Szia!
Elképzelhető, hogy közben hiba keletkezik a cikluson belül, aminek az eredménye az, hogy kilép a ciklusból.
Próbáltad már lépésenként futtatni (F8)?
Van-e valahol korábban hibakezelés beiktatva?
Üdv.

(#48656) Lokids válasza Fferi50 (#48655) üzenetére


Lokids
addikt

Próbálom. Eddig arra jutottam, hogy egyértelműen akkor van gond, mikor az 3. For ciklust kezdem el futtatni. Csak nem értem miért, mert egy darabig jó...

If you chase two rabbits you will lose them both.

(#48657) Fferi50 válasza Lokids (#48656) üzenetére


Fferi50
őstag

Szia!
Értem, megnézted a változóid értékét? Egy darabig jó.... milyen változó értékig jó és utána melyik sort folytatja?
Üdv.

(#48658) Lokids válasza Fferi50 (#48657) üzenetére


Lokids
addikt

Párszázig jó. Aztán eldobja. Pontosabban csak kilép a ciklusból. De nem értem miért.
Vajon van valami hiba ilyenkor, csak nem írja ki?

A Debug.Print hova a fenébe ír?

[ Szerkesztve ]

If you chase two rabbits you will lose them both.

(#48659) Fferi50 válasza Lokids (#48658) üzenetére


Fferi50
őstag

Szia!
Az Immediate ablakba ír a Debug.Print. CTRL + G kombóval tudod előhívni.
Üdv.

(#48660) betyarr


betyarr
veterán

sziasztok!

adott egy excel tábla,amiben dokumentumok szerzői vannak az A oszlopban,a B-ben pedig a dokumentumok címei.hogyan tudnám leválogatni (szűrni?) azokat a dokumentumokat egy külön táblába,amelyek egynél többször szerepelnek a táblában (tehát ahol azonos a szerző és a cím is)?

köszönöm előre is a segítséget! :R

(#48661) lappy válasza betyarr (#48660) üzenetére


lappy
őstag

ismétlések eltávolítása

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

(#48662) betyarr válasza lappy (#48661) üzenetére


betyarr
veterán

de nem törölni szeretném az ismétlődéseket,hanem egy külön táblába kigyűjteni.

mod.: illetve,ha jól látom,az ismétlődések eltávolítása csak egy oszlopot kezel egyszerre.

[ Szerkesztve ]

(#48663) Lokids válasza Fferi50 (#48659) üzenetére


Lokids
addikt

Jah megvan miért nem láttam eddig. Teljesen le volt húzva, mert laptop monitoron minden hely kellett. :D
És a hiba is meglett közben.
Számot akarok stringben tárolni.
Csak tudnám ezt miért nem tudta feldobni, mint minden mást. Miért lépte át és ment tovább?

If you chase two rabbits you will lose them both.

(#48664) wolfman


wolfman
veterán

AZ megoldható a programban, hogy ha írok egy cellába, majd javítani akarok valamit a beírt szövegben, akkor a vissza kurzor gombbal nem lép ki és lép egy cellával balra, hanem marad szerkesztésben és karakterek közt lép vissza? (remélem érthető)

„Ami mérhető, mérd meg! Ami nem mérhető, tedd mérhetővé!” – Galileo Galilei

(#48665) lappy válasza wolfman (#48664) üzenetére


lappy
őstag

szerintem nem használd az F2 és akkor nem fog kilépni ha már javítani kell

[ Szerkesztve ]

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

(#48666) Fferi50 válasza betyarr (#48662) üzenetére


Fferi50
őstag

Szia!
Az ismétlődések eltávolítása annyi oszlopot kezel, amennyit kijelölsz: az eltávolításhoz minden oszlopban azonos adatnak kell lennie.
Egy segédoszlopba átírod a szűrni kívánt értékeket. Ezután ismétlődések eltávolítása, majd a Darabteli függvénnyel megnézed, melyikből hány van az eredeti tartományban.
Üdv.

(#48667) bteebi


bteebi
veterán

Sziasztok!

Egy sima UDF-et szeretnék írni kvantilis-kvantilis diagram (Q-Q plot) készítéséhez. A lényeg, hogy van egy adattömb, és abból egy-egy adott értékhez számolt Z-érték (x tengely) alapján kell ábrázolni az adatokat (y tengely). Nem is túl bonyolult hozzá a képlet: =NORM.S.INVERZ((SORSZÁM(C2;C:C;1)-0.5)/DARAB(C:C))
ahol a C2-ben lévő elemnek a Z-értékét számolnám ki a C:C tömbben (nyilván ez lehetne egy meghatározott tartomány is, mondjuk B1:B8). Az UDF pedig a következő lenne:

Function Zscore(score As Variant, cnt As Range) As Long
Zscore = "=NORM.S.INV((RANK(score,cnt,1)-0.5)/COUNT(cnt))"
End Function

#ÉRTÉK! hibaüzenetet kapok rá. Valószínűleg több sebből is vérzik, de sajnos nem tudom, hogy mik ezek (cnt is Variant kellene, hogy legyen? vagy kellene mögé, hogy .Value?). Hol vannak ebben a hibák? Előre is köszönöm! :R

Cancel all my meetings. Someone is wrong on the Internet.

(#48668) lappy válasza bteebi (#48667) üzenetére


lappy
őstag

Zscore =NORM.S.INV((RANK(score,cnt,1)-0.5)/COUNT(cnt))
ez így már előbbre visz, de még mindig hiba van nálam is

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

(#48669) bteebi válasza lappy (#48668) üzenetére


bteebi
veterán

Ha úgy próbáltam, hogy Zscore = WorksheetFunction.Norm_S_Inv((WorksheetFunction.Rank(score, cnt, 1)_
_ - 0.5) / WorksheetFunction.Count(cnt)), akkor már legalább számolt valamit... de nem jót. Aztán átírtam a Long-ot Double-re, és jó lett. :) Szóval köszi! :R Tehát:

Function Zscore(score As Variant, cnt As Range) As Double
Zscore = WorksheetFunction.Norm_S_Inv((WorksheetFunction.Rank(score, cnt, 1)_
- 0.5)/WorksheetFunction.Count(cnt))
End Function

Mondjuk az még érdekes, hogy WorksheetFunction nélkül hogy lehetne szebben/rövidebben.

Cancel all my meetings. Someone is wrong on the Internet.

(#48670) Colin111


Colin111
csendes tag

Üdv,
Van-e valakinek ötlete arra, hogy hogyan lehetne EGYSZERŰEN megállapítani, hogy egy cella tartalmában van-e kisbetű??
A cellában csak számok és az angol abc betűi kis vagy nagy alakban szerepelhetnek.
A "UNICODE" függvényt megtaláltam, de azzal végig kell vizsgálni a cella minden karakterét egyenként. Ez egy hosszabb értéknél sok egymásba ágyazott "HA" függvénnyel megoldható, (de kell hozzá egy lista a kisbetűk kódjával az eredmény szűréséhez).
Kisbetűk UNICODE értékei egyébként 97-122-ig tartanak.
Remélem macro nélkül is megoldható ez a feladat :)
Üdv,

(#48671) lappy válasza Colin111 (#48670) üzenetére


lappy
őstag

Azonos és kisbetu függvény kell neked
Azonos(a1;kisbetu(a1))

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

(#48672) Fire/SOUL/CD válasza Colin111 (#48670) üzenetére


Fire/SOUL/CD
félisten

=HA(AZONOS(A1;NAGYBETŰS(A1));"Nincs kisbetű";"Van kisbetű")

Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)

(#48673) Fire/SOUL/CD válasza lappy (#48671) üzenetére


Fire/SOUL/CD
félisten

Ez nem jó. :B
Mindig az ellenkezőt kell kizárni, ha kisbetűt vizsgálsz, akkor nagybetűs vizsgálat kell, ha nagybetűt vizsgálsz, akkor meg kisbetűs vizsgálat kell.

A Te képleted arra jó, hogy ha azt vizsgálnánk, hogy tartalmaz-e nagybetűt a cella.

[ Szerkesztve ]

Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)

(#48674) lappy válasza Fire/SOUL/CD (#48673) üzenetére


lappy
őstag

Gondoltam azért tud egy ha függvény osszerakni meg akkor is ha negatív logikaval kell dolgozni
:B
Meg most a kisbetu jutott eszembe

[ Szerkesztve ]

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

(#48675) Colin111 válasza Fire/SOUL/CD (#48673) üzenetére


Colin111
csendes tag

Köszönöm Mindkettőtöknek! ez nagyon jó!!

(#48676) Colin111 válasza lappy (#48674) üzenetére


Colin111
csendes tag

kell egy kis agytorna néha, köszi!!

(#48677) Pakliman válasza bteebi (#48669) üzenetére


Pakliman
tag

Szia!

Esetleg így:
Function Zscore(score As Variant, cnt As Range) As Double
Dim wf

Set wf = Application.WorksheetFunction

Zscore = wf.Norm_S_Inv((wf.Rank(score, cnt, 1) - 0.5) / wf.Count(cnt))
End Function

(#48678) Csabex


Csabex
őstag

Sziasztok,

Excel 2019-et használok és olyat szeretnék, hogy a kijelölt cellákban az 5-ös számot
cseréljem le egy másik számjegyre, de fontos, hogy csak az elején lévő 5-öst, tehát a tizedes jel utáni számok változatlanok maradjanak, azokat ne piszkálja. Lehetséges-e egyáltalán?
Köszönöm :R

"The quieter you become, the more you are able to hear..." ― Ram Dass

(#48679) Fferi50 válasza Csabex (#48678) üzenetére


Fferi50
őstag

Szia!
Ha szövegformátumú a cella, akkor a keresés 5, csere 7, -re.
Ha szám formátum, akkor másként lehet:
Ha pl. 7-re szeretnéd cserélni, akkor egy segédcellába beírod 2, majd ezen a cellán Ctrl+C (azaz másolás), utána a kijelölt tartományon irányított beillesztés - művelet: összeadás. Ezután a segédcellát törölheted.
Üdv.

(#48680) Imy


Imy
veterán

A képen látható szinusz excellel hogyan rajzolható fel?
Hogyan számolható ki a kékkel besatírozott terület?
Pl 5 a max, 2-nél el van vágva.
A sziinusz 6-nál indul, és 18-nál végződik, azaz 12 a szélessége.

(#48681) lappy válasza Imy (#48680) üzenetére


lappy
őstag

nem lehetetlen de biztos hogy nem egyszerű
határozatlan integrállal ki lehet számolni - jó munkát hozzá :R

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

(#48682) Magnat válasza lappy (#48681) üzenetére


Magnat
veterán

-cos(x) ha jól tévedek :)

̿' ̿'\̵͇̿̿\з=(◕_◕)=ε/̵͇̿̿/'̿'̿ ̿

(#48683) Imy válasza lappy (#48681) üzenetére


Imy
veterán

Hát az én is tudom, hogy nem egyszerű, azért tettem fel, hátha valaki tudja a megoldást. :) Én nem tudom, hogyan lehetne. :(

(#48684) Magnat válasza Imy (#48683) üzenetére


Magnat
veterán

Sztem alapból nem tudja, de ha megguglizod, vannak Excelben integrálszámításra megoldások ... mondjuk első körben sokat segítene, ha az adott görbét fel tudnád írni függvényként, mert így ahogy leírtad, már ott is probléma fogsz ütközni, hogy az Excel egyáltalán "tudja", h mit kell kiszámolnia.

̿' ̿'\̵͇̿̿\з=(◕_◕)=ε/̵͇̿̿/'̿'̿ ̿

(#48685) Csabex válasza Fferi50 (#48679) üzenetére


Csabex
őstag

Szám formátum a cella, úgyhogy a második verzió működött, köszönöm szépen a segítséged :R Lehet fogok majd kérdezni még, mert van olyan, hogy érdekes dolgokkal (számomra legalábbis) futok össze néha.

"The quieter you become, the more you are able to hear..." ― Ram Dass

(#48686) bteebi válasza Pakliman (#48677) üzenetére


bteebi
veterán

Szia!

Köszi, egy fokkal tényleg jobb így.

Cancel all my meetings. Someone is wrong on the Internet.

(#48687) underdark


underdark
aktív tag

Hello
A oszlop és B cella
Milyen képlettel lehetne megoldani azt, hogy az A oszlopban lévő számokat számolja a B cellába? A végén 1-es értéket kapjak a B cellában.
A
-1
-2
-1
0
1

B
1

"akinek minden a vállán nyugszik, nem nyugszik senki vállán"

(#48688) lappy válasza underdark (#48687) üzenetére


lappy
őstag

=1 ;]
Viccet félre téve, nem értem a kérdést
Írod a számokat az A oszlopba és a B meg 1 legyen?
Mert akkor (abs(szum(A:A)) - abs(szum(A:A))) + 1
Vmi ilyesmi képlet a lényeg kivonom önmagából és hozzá adok 1 - et

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

(#48689) underdark válasza lappy (#48688) üzenetére


underdark
aktív tag

Ha az A oszlop Igaz, akkor egy számmal növekszik a B oszlop, ha hamis akkor el vesz egyet
A C cella pedig egy számláló lenne, tehát ha most kéne látnom akkor -4 lenne
Ez a lista addig menne, amíg a C cella el nem érné az 1 értéket
Nem tudom jobban leírni mit akarok :DDD

"akinek minden a vállán nyugszik, nem nyugszik senki vállán"

(#48690) lappy válasza underdark (#48689) üzenetére


lappy
őstag

B2 cella =ha(A2="igaz";1;-1) igaz vagy hamis illetve a kezdő érték
B3 =ha($A3="igaz";$b2+1;$b2-1) és így tovább minden cellára majd
C2 re meg vmi cella megjegyzést lehet tenni ha pl 1 az értéke - feltételes formázással

[ Szerkesztve ]

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

(#48691) Fferi50 válasza underdark (#48689) üzenetére


Fferi50
őstag

Szia!
C2 képlete lehetne pl.
=HA(ELTOLÁS(B1;DARAB2(A:A);0;1;1)=1;1;"X")
Ezzel mindig a B oszlop utolsó cellájának értékét nézi meg. Akkor 1 az eredmény, ha abban a cellában 1 az érték, egyébként X.
Ehhez persze soronként kell az A : B oszlopot lefelé húzni, figyelve az eredményt.
Ez a képlet megmutatja, a B oszlop hanyadik cellájában van az első 1 érték a 2.sor után:
=HOL.VAN(1;ELTOLÁS(B2;1;0;DARAB2(A:A);1);0)+2
Üdv.

(#48692) BigBadPlaYeR válasza Imy (#48680) üzenetére


BigBadPlaYeR
senior tag

Már elég rég volt, de én anno ilyeneket Microsoft Math -al és GeoGebra programokkal rajzoltam.
De a SageMath is ígéretes.

"Furcsa, hogy az ember milyen keveset ér el, ha nem is próbálkozik."

(#48693) detroitrw


detroitrw
addikt

Sziasztok!

2007-es excelbe (VBA) szükségem lenne egy kis segítségre.
Van egy képlet aminek az eredmény #HIÁNYZIK
Ezt a #HIÁNYZIK értéket megváltoztattam hahiba paranccsal ""-re (azaz semmire)

Viszont az excel ezeket a cellákat mégis úgy veszi mintha lenne benne valami és szűréskor ezek az üres cellák kerülnek előre.

Hogyan lehet ezeket a cellákat megtisztítani VBA-ba? :F

Előre is köszi :R

(#48694) lappy válasza detroitrw (#48693) üzenetére


lappy
őstag

mit értesz tisztítás alatt?

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

(#48695) detroitrw válasza lappy (#48694) üzenetére


detroitrw
addikt

Mivel azokba a sorokba nincs semmi úgyhogy lehet teljes sortörlés is

(#48696) lappy válasza detroitrw (#48695) üzenetére


lappy
őstag

akkor ezt nézd meg vagy ezt

[ Szerkesztve ]

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

(#48697) Rhair


Rhair
csendes tag

Sziasztok!
Adott két cella, ha függvénnyel próbálkoztam eddig, hogy ha egyenlő a két cella értéke akkor Igaz legyen kiírva, ha nem akkor hamis
A problémám az lenne, hogy ha üres a cella akkor is igaz értéket számol, erre kéne nekem megoldás :)
Köszi!

(#48698) Delila_1 válasza Rhair (#48697) üzenetére


Delila_1
Topikgazda

Nálam a két cella A1 és B1.
=HA(DARAB2(A1:B1)=2;A1=B1;"")

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

(#48699) Brandynew


Brandynew
őstag

Sziasztok,

Küzdöttem vele majd egy órát, de feladom.

Hogy tudom kiírni egy cellába, hogy jelenleg mennyi a tőketartozásom?

Ami adat rendelkezésemre áll:

C4: felvett hitelösszeg (10 000 000 Ft)
G4: kamat (3%)
J4: első törlesztőrészlet (év/hó/nap) (2021.05.15.)
K4: utolsó törlesztőrészlet (év/hó/nap) (2046.04.15.)

Ugye minden hónapban egyre nagyobb mértékben fizetem vissza a tőkét, egyre kisebb mértékben a kamatot. De nem értem, hogy ez pontosan hogy működik, és fogalmam sincs, hogy tudnám kiíratni Excelben, hogy jelenleg mennyi a tőketartozás.

Előre is nagyon köszönöm.

(#48700) Magnat válasza Brandynew (#48699) üzenetére


Magnat
veterán

Szia,

jól értem, hogy magát a képletet szeretnéd tudni?

̿' ̿'\̵͇̿̿\з=(◕_◕)=ε/̵͇̿̿/'̿'̿ ̿

Útvonal

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