-
Fototrend
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.
Új hozzászólás Aktív témák
-
olivera88
veterán
válasz Delila_1 #27750 üzenetére
Vagyis az oszlopokra gondoltam na. De közben találtam megoldást, leformáztam pénznemre az összegeket így már össze tudja adni. Erre gondoltál te is nem, mármint h oszlopokat akarom összeadni.
[ Szerkesztve ]
LG Velvet 5G Android 11 - Windows 10 Pro x64 & Debian 11 Bullseye - WoWS unsinkable_sam_
-
-
Fferi50
Topikgazda
válasz sedyke #27746 üzenetére
Szia!
Ha jól emlékszem, azt írtad a legelején, hogy minden terméknek külön terméklapja van. Ez azt jelenti, hogy már 800-nál több munkalapot tartalmaz a munkafüzeted.
Nincs mese, egyszer végig kell menni rajta és megnézni, melyik termék melyik lapon van - különben nem tudod ezt a "behívósdit" megcsinálni.
Erre itt egy makró:
Sub vegigkeres()
Dim sh As Worksheet, ws As Worksheet, xx As Integer
Set ws = Sheets("Főlap") ' ide a Főlap helyére annak a munkalapnak a nevét írod, amelyre a kigyűjtést szeretnéd.
xx = 2
For Each sh In Worksheets
If sh.Name <> ws.Name Then
ws.Cells(xx, "N").Value = sh.Cells(1, "B").Value
ws.Cells(xx, "O").Value = sh.Name
xx = xx + 1
End If
Next
End SubEzt akár egy általános modulba, akár a "Főlap" kódlapjára bemásolhatod - ez utóbbi: jobb egérgomb a lapnéven alul, kód megjelenítése, bemásolás.
Egyszer lefuttatod, akkor az N-O oszlopba beírja a munkafüzetben talált termékkódokat (a munkalapok B1 cellájában levő értéket, mellé pedig annak a munkalapnak a nevét, amelyen találta). Vigyázat, nem ellenőrzi, ha esetleg duplikált termékkód fordul elő.
Ezután a Főlapod B1 cellájának érvényesítésére megadhatod az N oszlopban levő értékeket.Ha mindez megvan, a makróra már nincs is szükséged, mentheted makrómentesen a füzetet.
Üdv.
-
Fferi50
Topikgazda
válasz sedyke #27756 üzenetére
Szia!
A Q1 cellában a képlet: =Fkeres($B$1;$N$1:$O$21;2;0) Természetesen a sorok száma a ténylegesen kitöltött soroké legyen.
B3 cella képlete: =INDIREKT($Q$1 & "!B" & SOR())
A C3 - F3 - H3 - J3 cellák képlete ugyanaz, csak a B helyére a megfelelő oszlopot írod.Ha a cellákba ezt a képleted írod, akkor megtalálja. A Q1 cellában az Fkeres eredménye annak a munkalapnak a neve lesz, ahol a B1 cellába beírt termékkód van.
Üdv.
[ Szerkesztve ]
-
sedyke
tag
válasz Fferi50 #27755 üzenetére
Bocsi, ugy ertettem, hogy mindegyik termek rendelkezik egy olyan 51 soros adatlappal, mint a kepen szerepel, de ezek egymas alatt helyezkednek el a kulonbozo munkalapokon, amelyek termekkategoriankent vannak kialakitva (kb. 20db).
Tehat az elso 1-51 sorokban, masodik 52-102 sorokban es igy tovabb. Ezekbol van kozel 800db. Ebbol az elso munkalapon van pl 110, mig a masodikon csak 4db. Sajnos eleg vegyes.[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz sedyke #27758 üzenetére
Szia!
A munkalapokon való elhelyezkedés mennyire "szabályos", azaz mindig egymás alatt vannak és soha nem egymás mellett a termékek?
Ez így egy kicsit bonyolítja a helyzetet, de nem megoldhatatlan. Természetesen a makró így nem azt csinálja, amit szeretnénk.
Mondjuk a 4 termékes munkalap képét feltehetnéd, hogy látni lehessen az elhelyezkedés logikáját.
Üdv.
-
Hege1234
addikt
Hello!
a zöld és piros oszlopot
meg lehet valahogy úgy csinálni hogy összeszámolja
hogy a zöld oszlopban1-es számból van 2 db
2-es számból van 8 db
.
.
.pirosnál ugyan így
de pl a 19. sorban 2 üres van ezt 0 nak kellene (de nem úgy hogy a piros is és a zöld is kap egy nullát
hanem csak 1 -et kapjon ) érzékelnie és a nullákat is össze kellene számolniés ezeket szeretném egy külön diagramon megoldani (még nem tudom melyik lesz a megfelelő hozzá)
plusz ugye jó lenne ha nem tudna belekavarni a függvényes adatokba
köszi!
-
Fecogame
veterán
Van egy táblázatom, előre ki nem töltött adatokkal. Ebben jelenleg 2 számnak van értéke ( 3 és 3 ), az összes többi nulla.
Hogyan tudnám csak a nem nulla értékek átlagát kiszámolni?
Lassú a mobilinterneted? 4G/LTE antennák, közvetlenül raktárról ---> http://bit.ly/LTE_Antennak
-
Fferi50
Topikgazda
válasz sedyke #27761 üzenetére
Szia!
Úgy gondolom, megszületett a kielégítő megoldás:
A makró:
Sub termeklistas()
Dim sh As Worksheet, ws As Worksheet, xx As Integer, yy As Integer
Set ws = Sheets("Munka1")
yy = 1
For Each sh In Worksheets
xx = 1
If sh.Name <> ws.Name Then
Do While True
If sh.Cells(xx, "B").Value = "" Then Exit Do
ws.Cells(yy, "N").Value = sh.Cells(xx, "B").Value
ws.Cells(yy, "O").Value = sh.Name & "!"
ws.Cells(yy, "P").Value = xx - 1
xx = xx + 51
yy = yy + 1
Loop
End If
Next
End SubA makró az N oszlopba beírja a termékkódot, az O oszlopba a munkalap nevét, felkiáltójellel kiegészítve, a P oszlopba pedig az adott termék hol kezdődik a munkalapon -1.
Hibaellenőrzés (mármint, hogy valóban termékkód van-e minden 51. cellában, nincs benne, azt a listából láthatod, ha átnézed).
Ezek után a képletek:
R1 cella (M)[/=FKERES($B$1;$N$1:$P$10;2;0)M]
S1 cella (M)=FKERES($B$1;$N$1:$P$10;3;0)(/M)
B3 cella (M)=INDIREKT($R$1 & "B" & $S$1+SOR())(/M)
C3 cella (M)=INDIREKT($R$1 & "C" & $S$1+SOR())(/M)Az első sor tovább értelemszerűen változtatva csak a B,ill. C helyére írva az aktuális oszlopot.
Ezután lefelé másolhatod a képleteket.A B1 cella érvényesítése: lista - forrás N1:P10
Ezután a listából kiválasztod a termékkódot, a lap pedig automatikusan kitöltődik.
A $P$10-ben a 10 helyett az utolsó "tele" cella sorszámát kell írni. (Minden másra ott a MasterCard )
A makróra a lefuttatás után, amennyiben jónak találod az eredményt, nincs szükséged. Ha meg szeretnéd tartani, akkor makróbarátként kell elmenteni a munkafüzetet.
Remélem, sikerülni fog.
Üdv.
[ Szerkesztve ]
-
Hege1234
addikt
-
Telda
addikt
Hali!
Van nekem sok-sok rajszámom az excelben.
Illetve van egy mappám, ahol ugyan ilyen néven megtalálható az összes műhelyrajz.
Az excelben lévő rajzszámok mellé oda lehet valahogy tenni a mappában lévő fájlok hyperhivatkozását?
Hogy csak rá kelljen kattintani és megnyitja a rajzot. -
Fferi50
Topikgazda
Szia!
A válasz IGEN, meg lehet csinálni.
Bővebben: A rajzszámot tartalmazó cellát kijelölöd, jobb egérgomb, hivatkozás - kiválasztod a megfelelő fájlt, kitöltöd a szükséges mezőket, majd ok.
Ezt az egészet makrórögzítővel felveszed, majd "paraméterezed" és lefuttatod minden cellára nézve.
Ha a makrót rögzítetted és ide felteszed, segítünk a paraméterezésben.Üdv.
-
Delila_1
veterán
válasz Hege1234 #27760 üzenetére
Felvettem egy segédoszlopot, a H-t. Itt nullát ad, ha az F és G is üres. A zöld hátterű oszlop helyett ebben számoltatom össze az egyes értékek előfordulásának a darabszámát a J és K oszlopban. A pirosakat az M és N számolja meg.
A K3 és M3, valamint a H2 képletét lemásoltam az alattuk lévő sorokba.
Remélem, kifér a kép teljes egészében.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
Delila_1
veterán
A lenti makró az A1 cellában lévő rajzszámhoz tartozó képhez készít hiperlinket a B1 cellába. A makróban kell megadni az elérési útvonalat, és a kép kiterjesztését.
Sub rajz()
Dim utvonal As String
utvonal = "F:\jpg\Fotó\" 'ide kell a saját útvonalad
ActiveSheet.Hyperlinks.Add Anchor:=Range("B1"), Address:= _
utvonal & Range("A1").Value & ".jpg", TextToDisplay:=Range("A1").Value
End SubAhhoz, hogy az összes rajzszámhoz beírhassuk a hiperlinket, meg kell adnod, melyik oszlopban vannak a rajzszámok, melyik oszlopba kéred a hiperlinket.
Az is fontos, hogy a rajzszámos oszlop hányadik sorában kezdődnek a számok, és hogy vannak-e olyan sorok, amikben nincs rajzszám.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Zola007
veterán
Köszönöm srácok
D5, Mutt, Fferi50egy újabb probléma merült fel, névszerint hogy a másik táblázatban több oszlopban vannak az adatok
Se az index, se az indirekt nem nagyon fogadja el, ha több oszlopot akarok beadni
Mindig jobbra haladva kellene egy adott oszlop adott tartományát átvizsgálni, ha ez tele, akkor ugorjon a következő megadott tartományra és ha az nincs tele, akkor az utolsó nem üres cella értékére lenne szükség.
Ha ez az tartomány is tele van, akkor megint a következőre, stb.Ez is meg lehet oldani még makró nélkül?
Másodsorban azt szeretném kérdezni, hogy valami jó anyagot tudnátok ajánlani a függvényhasználatok megtanulásához és makróíráshoz?
Egyrészt zavar, hogy nem értem hogyan is működik amit írtok megoldást.
Másrészt gyakran futok ilyen problémákba és a topikot nem akarnám mindig ezzel terhelni + nekem is jobb lenne, ha instant meg tudnám oldani.[ Szerkesztve ]
Mʏ ᴘʜɪʟᴏsᴏᴘʜʏ ɪs: Iᴛ’s ɴᴏɴᴇ ᴏғ ᴍʏ ʙᴜsɪɴᴇss ᴡʜᴀᴛ ᴘᴇᴏᴘʟᴇ sᴀʏ ᴏғ ᴍᴇ ᴀɴᴅ ᴛʜɪɴᴋ ᴏғ ᴍᴇ. I ᴀᴍ ᴡʜᴀᴛ I ᴀᴍ ᴀɴᴅ I ᴅᴏ ᴡʜᴀᴛ I ᴅᴏ. I ᴇxᴘᴇᴄᴛ ɴᴏᴛʜɪɴɢ ᴀɴᴅ ᴀᴄᴄᴇᴘᴛ ᴇᴠᴇʀʏᴛʜɪɴɢ. Aɴᴅ ɪᴛ ᴍᴀᴋᴇs ʟɪғᴇ sᴏ ᴍᴜᴄʜ ᴇᴀsɪᴇʀ. - Sɪʀ Aɴᴛʜᴏɴʏ Hᴏᴘᴋɪɴs
-
Delila_1
veterán
válasz Hege1234 #27783 üzenetére
Látod ezért nem jó, ha nem letölthető fájlt teszel ki. Most kiderült, hogy az F és G oszlopban törtek vannak, nem egész számok. Át kell alakítani az egészet.
Csak délután leszek gép közelében. Ha addig nem kapsz megoldást, megpróbálom gatyába rázni.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Carasc0
őstag
válasz Delila_1 #27602 üzenetére
Szia!
Még egyszer köszönöm (meg a többieknek is) a kódot. #27602. számú hozzászólás kódját alkalmazom, mert a céljaimnak ez bőven jó. Annyi hogy kiterjesztettem 36 sorra és csináltam egy mátrixot ami a kevert számokat kirakja nekem randomra (FKERES-el megoldottam könnyedén). Egyedüli kis mütyürke problémám hogy egy picit lassú. Tegnap még tök gyorsan dutott a makró. Ma meg indítom a makrót hogy csináljon egy új keverést és olyan 3-5 másodpercet várnom kell legalább. Nem értem mi a gondja. Tehát 1-36 közötti számokat rendez a kódod szerint. Nem hiszem hogy ilyen lassan kéne futnia.
És egy másik kérdés. Azt hogy lehet megoldani hogy ha elindítom az Excel dokumentumot, akkor a Makró automatán egyszer fusson le. Bár igazából az lenne a legtutibb ha ez az automata makrófutás annyiszor következne be, ahányszor arra a munkalapra kattintok amelybe megvan írva a VBA kód.
Egy másik (nehezebb) kérdés. Excel-be VBA segítségével programozható animált Progressbar?
[ Szerkesztve ]
Gondolkodj globálisan és tegyél lokálisan!
-
Fferi50
Topikgazda
válasz Carasc0 #27787 üzenetére
Szia!
A munkalap activate eseménykezelőjébe kell betenned a makró meghívását.
Munkalapfülön jobb egérgomb - kód megjelenítése - bal oldalon a lenyílóban Worksheet kiválasztása, utána jobb oldali lenyílóban activate kiválasztása. A megjelenő sub end sub sorok közé beírod a makród nevét.Ezek után minden olyan alkalommal, amikor aktívvá teszed a lapot (másik lapról ide átjössz), lefut a makród.
A másik kérdésedre igen a válasz.
Üdv.
-
Delila_1
veterán
válasz Hege1234 #27785 üzenetére
Most igen, előbb volt kép.
A mostaniból tudtam meg, hogy az F és G oszlopokban képletek vannak, és ezek törteket adnak eredményül.
A kigyűjtésben a DARABTELI függvény kritériumába egész számot írtunk, hát persze, hogy nem talált megfelelőt.A könnyebb utat választottam. Felvettem 2 segédoszlopot. Az elsőben (H) nullát íratok oda, ahol az F és G is üres(nek látszik), ahol pedig az F-ben érték van, oda a kerekített értékét íratom. Ebben az oszlopban számol a K:L tábla.
Az I oszlop a G értékeit kerekíti, ezt az N:O számlálja össze.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
Crystalheart
őstag
Üdv, belefutottam egy nem várt gondba. Adott két, majdnem azonos kinézetű munkalap, az egyiken a raktáron lévő termékek nyilvántartását, a másikban ugyanolyan elrendezéssel a termékek eladási számait tárolom. (Ergo igyekszem a kétdimenziós celláknak egy új dimenziót adni, ahol az eladási számláló van.)
Hogy az eladások regisztrálásakor mindkettőt könnyen elérjem, párhuzamosan jelenítem meg a két munkalapot.Amikor csak egy munkalapon szerkesztek, például új termékek felvitelekor vagy létező termékek darabszámának növelésekor, akkor a 2 soros fejlécet és az első oszlopot rögzítem, különben összekeverednék.
Ha ezt mindkét megjelenített munkalapon megteszem, akkor sajnos a párhuzamos görgetés megbolondul. A bal oldali, első panel görgetésekor előbb lép kettőt, mire a második panelon is elkezd görgetni, mintha a párhuzamosság csak akkor működne, amikor a mozgatható rész is túllép a fejlécen. Az eredmény, hogy hacsak nem görgetem az oldalt a legtetejére, akkor elcsúszik a két lista, és semmit sem érek az egész párhuzamossággal, mert nem párhuzamos, és biztosan tévesztek. Nem találok megoldást...
Excel 2007-et használok XP-n, nem tudom, az újakban is jelen van-e ez a probléma, vagy hogy egyáltalán probléma-e, nem csak én szúrok el valamit. Próbáltam neten kutatni, de nem leltem még az említését sem. Tudnátok ajánlani valami megoldást?
Mod: a párhuzamos görgetés ki-bekapcs megoldotta, én lame, csak ezt nem próbáltam. De érdekes, hogy mitől lehetett, még mindig nem tudom.
[ Szerkesztve ]
-
Carasc0
őstag
válasz Fferi50 #27788 üzenetére
Jaj köszönöm! Működik minden...
Delila: Oké betettem, így már villámgyorsan rendez!
Viszont van egy "AJAJ" problémám. A táblázat celláit, amely a script alapján írja bele randomra amit kell, képek takarják. Ha nagyítok/kicsinyítek akkor hirtelen a képek eltünnek majd visszajönnek. Ez nem jó, mert így lehet látni a cellák tartalmát egy pillanatra. Ez ellen nem lehet valamit csinálni?
[ Szerkesztve ]
Gondolkodj globálisan és tegyél lokálisan!
-
Fferi50
Topikgazda
válasz Carasc0 #27795 üzenetére
Szia!
A cellákban levő szöveg betűszínét változtasd meg a háttérszínnek megfelelően - akkor nem fog látszani, mi van bele írva. Amikor megmutatod, akkor visszaváltod a színt. (Range("A1").font.color=vbwhite fehér színű betűk, Range("A1").font.color=vbblack fekete színű betűk.)
Üdv.
-
Carasc0
őstag
válasz Fferi50 #27798 üzenetére
Akkor viszont nem értem, vagy félrebeszélünk. Én hiába teszem mondjuk feketévé a hátteret. A képet manuálisan veszem el amikor kell és ha elveszem akkor csak egy fekete négyzetet fogok látni, így kézzel kell a hátteret fehérré tenni hogy lássam mi van odaírva...
Gondolkodj globálisan és tegyél lokálisan!
Új hozzászólás Aktív témák
- Otthoni hálózat és internet megosztás
- Opel topik
- Azonnali VGA-s kérdések órája
- Egyelőre nem tervez Lunar Lake-hez hasonló dizájnt az AMD
- Milyen cserélhető objektíves gépet?
- REpont és hulladékgazdálkodás
- Játék télapó sapkáért, csak PH! segítőknek. (2024) Ha nem vagy segítő, ne írj bele!
- Ukrajnai háború
- Fejhallgató erősítő és DAC topik
- Dell notebook topic
- További aktív témák...
Állásajánlatok
Cég: HC Pointer Kft.
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest