Hirdetés

2024. április 24., szerda

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

(#33001) Delila_1 válasza Carasc0 (#32995) üzenetére


Delila_1
Topikgazda

Egy réges-régi fájlt feltöltöttem, kiindulási alapnak jó lesz. Tettem bele kommenteket.

Nézd meg a ThisWorkbook lap makróját is, az indítja az időzítőt.

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

(#33002) Carasc0 válasza Delila_1 (#33001) üzenetére


Carasc0
őstag

Hálás köszönetem! Megvizsgálom! :)

Már csak az kéne bele hogy zárja be a programot is a mentést követően és szerintem ez tökéletes lesz! :R

[ Szerkesztve ]

Gondolkodj globálisan és tegyél lokálisan!

(#33003) Delila_1 válasza Carasc0 (#33002) üzenetére


Delila_1
Topikgazda

activeworkbook.close

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

(#33004) psg5


psg5
veterán

Sziasztok!

Olyan képletet keresek, mely tömegre vetített egységárat számol ki bármelyik szükséges adat hiányában.
pl. adott 200g só aminek az eladási ára 600.-Ft és szeretném tudni a kg-ra vetített egységárát a képlettel, de akár úgy is tudja, hogy ha tudom a kg-ra vetített egységárát és az eladási árát, de szeretném megkapni a kiszerelt tömeget (200g-ot)
Vagyis egy cellában "A" lenne pl a tömeg "B" az eladási ár "C" az egységnyi ár.
Utópia nagyon?

F.K.T.

(#33005) lappy válasza psg5 (#33004) üzenetére


lappy
őstag

Ehhez szerintem négy oszlop kell, mert egy cellából kellene eldönteni hogy az egységnyi vagy töredéke. Ha viszont van olyan hogy pl.: gramm- kilogramm- ár- egységár akkor minden számolható

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

(#33006) Soma01


Soma01
veterán

Sziasztok!
Tudtok segíteni nekem egy probléma megoldásában? Azt kellene beképletezni, (pl. ha függvénnyel) hogy :
Ha egy dátum egy bizonyos időpontnál korábbi, akkor egy cél cellába irjon 0-t, ha későbbi vagy egyenlö irjon 1-est.
Milyen függvénnyel lehet ezt megoldani?

(#33007) Dr V


Dr V
őstag

Sziasztok!

Egy táblázatban többféle adatom van. Az egyik oszlopban lévő adatok alapján szeretném formázni a táblázat sorait. Ennek mi a trükkje?

(#33008) Juditta_56 válasza Soma01 (#33006) üzenetére


Juditta_56
aktív tag

"A" oszlopba írd a dátumokat, a "B" - be a következő függvényt - majd húzd végig a "B" oszlopon, amíg az "A" - ban van adat - :

=HA(A1<$C$1;0;1)

és a C1-be azt a dátumot, aminél kisebbet, illetve nagyobbat-egyenlőt szeretnél.

[ Szerkesztve ]

"You may say that I'm a dreamer But I'm not the only one"

(#33009) Delila_1 válasza Dr V (#33007) üzenetére


Delila_1
Topikgazda

Nézd meg a súgóban a feltételes formázást.

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

(#33010) lenkei83


lenkei83
tag

Sziasztok!

Megnyitott csv-ben szeretném megszámolni a sorokat, tehát a VBA open valami for input parancs nem jó.
És éppen ez a bajom. Nyitott fájlt hogyan lehet beadni a for input as parancshoz?

A lenti kód működik, ha épp nincs megnyitva a fájl, ezt kellene orvosolni valahogyan.

üdv
P.

Dim filenum As Integer
Dim count As Long
Dim tmp As String
xx = FreeFile
[B]Open ThisWorkbook.Path & "\" & "1665" & "_" & ido & ".imp" For Input As xx[/B]
Do While Not EOF(xx)
Line Input #xx, tmp$
count = count + 1
Loop
MsgBox count

(#33011) psg5 válasza lappy (#33005) üzenetére


psg5
veterán

Igen lehetne kulon cellákba.

F.K.T.

(#33012) Fferi50 válasza lenkei83 (#33010) üzenetére


Fferi50
őstag

Szia!

Ha nyitott a fájlod, akkor csak az a feladat, hogy az első rekordot/byte-ot megtaláld. Erre szolgál a Seek függvény:
Seek xx, 1
beállítja az xx fileszámmal megnyitott fájl első pozícióját. Utána olvashatod úgy, mintha most nyitottad volna meg.

Üdv.

(#33013) lenkei83 válasza Fferi50 (#33012) üzenetére


lenkei83
tag

Jó reggel!

Ezzel az infoval így nem tudtam mit kezdeni. :)

Elvileg így is mennie kellene, gyakorlatilag meg nem.

Dim LineofText As String
Dim rw As Long
rw = 0
Do While Not EOF(xx)
Line Input #xx, LineofText
rw = rw + 1
Loop
Close #xx
MsgBox rw

üdv
P.

(#33014) Pakliman válasza lenkei83 (#33013) üzenetére


Pakliman
tag

Szia!

Működnie kell.
Vagy ugyanazt a fájl azonosítót (#filenum) kell használod, amivel először megnyitottad (ez esetben kell a Seek #filenum, 1 ), vagy újként nyitod újra, más azonosítóval (pl. #filenum2)

Üdv.

[ Szerkesztve ]

(#33015) lenkei83 válasza Pakliman (#33014) üzenetére


lenkei83
tag

Szia!

Logikailag értem, csak mégsem. Valamiért mindig nullát dob.

Hova kell a seek, vagy mit kell máshogyan? :W

üdv
P.

Dim LineofText As String
Dim rw As Long
rw = 0
Do While Not EOF(xx)
Line Input #xx, LineofText
rw = rw + 1
Loop
Close #xx
MsgBox rw

(#33016) butch3r


butch3r
senior tag

Sziasztok

Lehetséges az valahogy hogy az üres excel sorokat teljesen kitörlöjem?

Jelenelg látom 1048576-os sorig tudnék lescrollozni de tök felesleges ha csak 500 soron van adat... Nem tudom ettől nagyobb e file de kevésbé hazsnálható mert a scroll bar jó kicsi... Olyan mitnha végig adatot látna pedig többször töröltem és semmi nincs az 500-ik sor után...

Köszi :R

[ Szerkesztve ]

(#33017) lappy válasza butch3r (#33016) üzenetére


lappy
őstag

Törölni nem tudod max elrejteni. Ki kell ejlölni a sorokat a következő billenytyűkkel
Ctrl+Shift+lefele nyíl majd jobb gomb és elrejtés

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

(#33018) alfa20


alfa20
senior tag

Sziasztok!

Segítséget szeretnék kérni feltételes nem üres cella számolásában (képlet!).

Adott mondjuk 3 oszlop kód, dátum mennyiség, nekem az kell, hogy adott kódhoz mennyi tétel tartozik:

"Az agy olyan, mint az ejtőernyő: csak akkor működik, ha nyitott." (Thomas Dewar)

(#33019) lappy válasza alfa20 (#33018) üzenetére


lappy
őstag

Szumha függvény!

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

(#33020) alfa20 válasza lappy (#33019) üzenetére


alfa20
senior tag

köszi!
de tétel DB kell nem összeg

"Az agy olyan, mint az ejtőernyő: csak akkor működik, ha nyitott." (Thomas Dewar)

(#33021) Mittu88 válasza alfa20 (#33020) üzenetére


Mittu88
senior tag

darabteli, vagy darabhatöbb függvény (az előbbi elég neked, de az utóbbi univerzálisabb, azaz több kritériumot is megadhatsz neki - pl. ha dátumra és tételkódra is akarsz szűrni).

(#33022) Pakliman válasza lenkei83 (#33015) üzenetére


Pakliman
tag

Szia!

Seek #filenum, 1
Do While Not EOF(xx)

(#33023) Pakliman válasza butch3r (#33016) üzenetére


Pakliman
tag

Szia!

Sajnos már én is jártam így :W
Milliószor töröltem a sorokat, mentés, megnyitás, és az excel még mindig baromi sok sort "érzékel" :O
A megoldás az volt, hogy új munkalap vagy munkafüzet létrehoz, szükséges adatokat tartalmazó terület kijelöl, újba átmásol, ment, régi kidob ÉS :DD :))

(#33024) lenkei83 válasza Pakliman (#33022) üzenetére


lenkei83
tag

Vagyis így kellene kinézni?

Dim LineofText As String
Dim rw As Long
rw = 0
Seek #xx, 1
Do While Not EOF(xx)
Line Input #xx, LineofText
rw = rw + 1
Loop
MsgBox rw

Close #xx

(#33025) Pakliman válasza lenkei83 (#33024) üzenetére


Pakliman
tag

Igen.

Csak figyelj a Close #xx helyére!
Akkor írd be a kódba, amikor már végeztél EZZEL a fájllal.

[ Szerkesztve ]

(#33026) lenkei83 válasza Pakliman (#33025) üzenetére


lenkei83
tag

Akkor passzolom. Akkora nullát dob, hogy csak pislogok.

Feltöltöttem a fájlt, megköszönném ha ránéznél.

[link]

Module1-ben a legelső makro végén van a counter. Ha a makro lefut, a "thisworkbook" mappába exportál egy imp fájlt, ezt kezeli xx-ként.

Köszi & üdv
P.

(#33027) Winner_hun


Winner_hun
félisten

Ha megnyomom a jobbra nyilat a billentyűzeten akkor nem a kijelölt melletti cellára ugrik hanem egy oszlopnyit lapoz az egész dokumentumon. Miért? Néha előjön, csak a gép újraindítása oldja meg a problémát.

► "Kicsit olyan webcaritas" ◄ ヅ

(#33028) tzimash válasza Winner_hun (#33027) üzenetére


tzimash
őstag

Scroll lock?

(#33029) Winner_hun válasza tzimash (#33028) üzenetére


Winner_hun
félisten

Nem tudom, nem járt arra az ujjam hogy megnyomjam de ha még egyszer előjön akkor meg fogom nézni.

► "Kicsit olyan webcaritas" ◄ ヅ

(#33030) dWan


dWan
tag

Sziasztok!

Lenne egy minden bizonnyal egyszerű kérdésem, remélem valaki tud segíteni.

Adott egy számsorozat, 9 elemből áll, nem vészes. Az alatta lévő sorba kéne a fenti sort szummázni, az adott cellának megfelelő felső soros értékkel bezárólag. Továbbá van még egy változó cella is, amely azt adja meg, hogy visszamenőleg hány cella értékét kell összeadni. Van valakinek tippje?

Köszi

(#33031) Pakliman válasza lenkei83 (#33026) üzenetére


Pakliman
tag

Szia!

Csak egy pillantást tudtam vetni rá, de szerintem a hiba For Output As #xx lesz.
Ez esetben olvasni nem tudsz a fájlból.

Egy lehetőség a sok közül:

For Each mezokod In mezokod_tartomany_1

If mezokod <> "" And mezokod.Offset(0, -6) <> "" Then
Print #xx, mezokod.Value & "=" & mezokod.Offset(0, -6).Value
End If
Next mezokod

Close #xx 'ÚJ SOR!!

Dim LineofText As String
Dim rw As Long
rw = 0

xx = FreeFile() 'ÚJ SOR!!
Open ThisWorkbook.Path & "\" & "1665" & "_" & ido & ".imp" For Input As #xx 'ÚJ SOR!!

Do While Not EOF(xx)
Line Input #xx, LineofText
rw = rw + 1
Loop
MsgBox rw

Close #xx

Az 'ÚJ SOR!! részeket kell beírnod a kódba.
Figyelj! Az Open-nél Input van!

Remélem műxik majd :D

[ Szerkesztve ]

(#33032) lenkei83 válasza Pakliman (#33031) üzenetére


lenkei83
tag

Szia!

Igen, a becsukom újranyitom verziót ismerem, épp ezt szerettem volna elkerülni.
Matekolok még rajta hétvégén.

Köszi
P.

(#33033) Delila_1 válasza dWan (#33030) üzenetére


Delila_1
Topikgazda

A másik topicban sikerült megoldani.
Nem is volt olyan egyszerű. :N

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

(#33034) DasBoot


DasBoot
aktív tag

Üdvözlet, Mindenkinek! "Régebbi" MSExcel verziókban volt egy Special paste nevű lehetőség. Azt kérdezném, hogy a mostaniakban van-e ilyen? 2010-est használok. Üdv.: Joe

LEGO-ból bármit megépíteni, csak idő kérdése.

(#33035) Pakliman válasza lenkei83 (#33032) üzenetére


Pakliman
tag

Szia!

Ha nem akarsz csiki-csukit, akkor az rw változót a proc elején deklaráld és minden Print #xx, sor után írd be ezt: rw=rw+1.
A végén az rw értéke a fájl sorainak a száma lesz (feltéve, hogy a fájlba kiírt szövegek nem tartalmaznak sortörést okozó karaktert).

Vagy egy másik lehetőség, hogy az Open ... esetében a Random-t használod az Output helyett.

[ Szerkesztve ]

(#33036) Vladek83


Vladek83
tag

Sziasztok,

tud valaki ötletet adni miért fagy le az excel... (2013) ?

a munkafüzet nem tartalmaz makrókat..

A Microsoft Excel működése leállt
A Windows megoldást keres a problémára...

ui.: eddig a gugli nem segített

(#33037) Carasc0 válasza Delila_1 (#33033) üzenetére


Carasc0
őstag

Tiszteletem Mester! :R

Nagyon köszönöm az időzítő makrókódot. Jól működik. Sőt még a felesleges munkalaptörlő kódrészletet is töröltem, nekem nincs rá szükségem. Viszont szeretném egy aprósággal kibővíteni a működését a makrónak!

Megoldható-e az, hogy amikor lejár a beállított timer, akkor megjelenjen egy form, rajta egy text box, vagy simán csak címke, tök mindegy, ami egy megadott cellatartomány szummázásának eredményét írja ki? A formon lenne még egy BEZÁR nevű parancsgomb amire ha katt, akkor a munkafüzet tartalm elmentődik, majd a program automatikusan bezár. :R

Gondolkodj globálisan és tegyél lokálisan!

(#33038) Agostino válasza Vladek83 (#33036) üzenetére


Agostino
addikt

elég soványka információ. milyen műveletet végzel, amikor a fagyás bekövetkezik? nekem is szokott, de általában akkor, ha teamvieweren dolgozok egy másik gépen is. de ez nálam van, magyarán számos oka lehet..

                          hey friend listen, i know the world is scary right now but its gonna get way worse

(#33039) Delila_1 válasza Carasc0 (#33037) üzenetére


Delila_1
Topikgazda

ThisWorkbookba

Private Sub Workbook_Open()
Application.OnTime Now + TimeValue("00:00:10"), "OsszegKiiras"
End Sub

Modulba

Sub OsszegKiiras()
Beep
MsgBox Application.WorksheetFunction.Sum(Sheets("Munka3").Range("C4:C15")) '***

Application.DisplayAlerts = False
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub

A csillagokkal jelzett sorban a saját lapod, saját összegzendő tartományod címét add meg!

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

(#33040) olloczky


olloczky
senior tag

Sziasztok

Beírom ezt egy cellába: 7-8. és vagy azt hozza ki, hogy 08. júl vagy azt, hogy 42559. MIÉRT?! :D próbálgattam a cellaformázásnál a szám fülön a kategóriát állítani de semmi ..

üdv

Úgy még sosem volt, hogy valahogy ne lett volna!

(#33041) olloczky válasza olloczky (#33040) üzenetére


olloczky
senior tag

ez segített megoldani, egy aposztrofot (') kellett elé tenni..

Úgy még sosem volt, hogy valahogy ne lett volna!

(#33042) lenkei83


lenkei83
tag

Sziasztok!

Ha ezt lefuttatom, az If sorban lévő munkalapokat miért nem hagyja ki az msgboxnál?

Dim ws As Worksheet

For Each ws In ThisWorkbook.Worksheets
If ws.CodeName <> "Munka7" Or ws.CodeName <> "Munka8" Or ws.CodeName <> "Munka10" Then
MsgBox ws.CodeName
End If
Next

Köszi.
P.

(#33043) Delila_1 válasza lenkei83 (#33042) üzenetére


Delila_1
Topikgazda

OR helyett AND kell a sorba.

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

(#33044) lenkei83 válasza Delila_1 (#33043) üzenetére


lenkei83
tag

Hu, ezt most fejben nem tudom összerakni.
Működik "OR"-ral, de nem értem. Eddig sosem volt gondom a ciklusokkal, de erre rácsodálkoztam.

A ciklus egyszerre csak egy ws-t vizsgál és azt nézi, hogy az adott ws-nek mi a neve, ami ha nem egyenlő a megadottal akkor kihagyja, de nem ezt teszti.
OR-nak elvileg akkor lenne értelme, ha egyszerre több munkalap lenne kijelölve és azt vizsgálnám, hogy a kijelöltek közül ha az egyik neve <> munkax és a másik neve <> munkay akkor msgbox.

Vagy valamit nem jól látok? :F

(#33045) Delila_1 válasza lenkei83 (#33044) üzenetére


Delila_1
Topikgazda

A feltételben azt kell megnézni, hogy az aktuális lap neve nem Munka7, ÉS nem Munka8, stb.

Or-ral mindegyik lapnevet kiírja.

[ Szerkesztve ]

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

(#33046) lenkei83 válasza Delila_1 (#33045) üzenetére


lenkei83
tag

Igen, közben rájöttem. Egyenlőségnél kellene a vagy.

Köszönöm.

(#33047) Delila_1 válasza lenkei83 (#33046) üzenetére


Delila_1
Topikgazda

Szívesen. :)

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

(#33048) Vladek83 válasza Agostino (#33038) üzenetére


Vladek83
tag

Szia,

távoli asztalt nem használok.
2 munkafüzet van megnyitva, egyikből másolgatok át a másikba ( alapműveletek ). Tegnap pl. már nem sűrűn dobálgatott ki, csak 2x..
Nem tudom mi lehet, valami háttérfolyamat, vagy passz...

(#33049) mormota


mormota
senior tag

sziasztok

fogok kapni egy minimum 10-15000 soros legyűjtést excelben (lehet, hogy ezt szűkíteni, darabolni fogom a könnyebb kezelhetőség érdekében.

ebből a sok sorból kellene majd egy előre elkészített excel sablonnak megfelelően adatokat beszúrni adott cellákba, majd menteni adott cellában található (ez is importálva lesz) tartalom alapján (a tartalom lesz a neve a filenak).

erre kellene valami makró, ami megkönnyíti a munkát

köszönöm előre is

ps: egy sorból egy file lesz

[ Szerkesztve ]

Illusztrálok, tehát vagyok

(#33050) mormota válasza mormota (#33049) üzenetére


mormota
senior tag

konkrétabban a forrásfile
F2 celláját a sablonfile C1
G2 -> C2
L2 -> C3
H2 -> C4 cellájába kellene másolni
majd az egész kitöltött sablont el kéne menteni a C3-ban található néven

újrakzdeni a 3. sorban ugyanígy az F,G,L és H oszlopokkal, stb stb stb, amíg van rekord a forrásfileban

Illusztrálok, tehát vagyok

Útvonal

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