Hirdetés
- Fűzzük össze a szavakat :)
- Asszociációs játék. :)
- Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Ingyen kellene, de tegnapra
- PLEX: multimédia az egész lakásban
- Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Nagy "hülyétkapokazapróktól" topik
- Ismerkedés a Zyxel NSA325 v2-vel
- Drive! - Az utolsó gurulás idén a Quadrifoglio-val
- Szólánc.
-
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.
Új hozzászólás Aktív témák
-
azopi74
addikt
válasz Szaszati #27693 üzenetére
ez nagyon egyszerű, csak a mezőlistában változtasd meg, hogy honnan szedje az árat (ne a kavezo tablaból hanem a termekek táblából) vagyis szedd ki a pipat a kavezo ár mezőjéből és tedd be a termekek ár mezőjébe) (Analyze - Show - Field list)
Utólagos engedelmeddel rámentettem a onedrive-odra a változtatást
-
azopi74
addikt
válasz poffsoft #27697 üzenetére
Hát igen, erről beszélek én is, de azt írtam, hogy a nagy kérdés az, hogy mi a cél és mi a struktúrája az alapadatoknak. Igen, lehet, ez is megoldás, ha csak egy oszlopról beszélünk, sőt, be lehet izzítani a name managert is, és akkor segédoszlop se kell, de ha egész munkalapról beszélünk, már kicsit komplikáltabb a dolog (de persze megoldható makró nélkül az is) , ha viszont az egész munkafüzet összes munkalapjának öszes cellájáról, akkor azt már makró nélkül nemigen tudom elképzelni, és még azt a makrót is brutálisan optimalizálni kell, hogy ne eméssze fel az erőforrásokat
-
poffsoft
veterán
válasz azopi74 #27685 üzenetére
pl. egy adatoszlopból egy új listába "felajánl" egy képlet értéket, de ezt sok esetben felül kell írni. az érték törlésével az eredeti képlet visszaírása csak kényelmi funkció.
makro nélkül is megoldható, egy segédoszloppal...
=HA(ÜRES.E("Számcella");"Képletcella";"Számcella")szerintem.
[ Szerkesztve ]
[ Szerkesztve ]
-
Szaszati
tag
válasz azopi74 #27670 üzenetére
Hú, nagyköszi, ezzel már jót haladtam Konvertálta egyből 2013-as formátumra, picit tettem-vettem benne a mezőket, és most már úgy néz ki, ahogy szeretném, csak egy bajom maradt: továbbra sem látszanak benne azok a termékek, amikből az adott időszakban nem történt eladás
Tehát a formátum, megjelenés, sorok, oszlopok és még a színezés is tökéletes, pont így kellene kinéznie, ahogy most, csak pluszban ennyi kéne, hogy megjelenjen az összes kategória, és azokon belül az összes termék, akkor is, ha éppen nulla eladás volt belőle. Ebben még tudnál/tudnátok segíteni?
Itt van a mostani változat, ami minden egyéb szempontból tökjó. Azt hiszem ez már csak 2013-as Excelben nyitható.
Köszi!
MobileArsenal - World domination temporarily suspended...
-
Kal-El
senior tag
válasz Fferi50 #27690 üzenetére
Végül is értékek azok is, de azok csak dísznek vannak összevont cellákban, hogy ilyen mérföldkő szerűségben mutassák ez eddig elért célokat.
Végül sikerült megoldani, egy szegély sort kitöltöttem a skála értékeivel, majd beszíneztem őket, hogy ne látszódjanak, aztán így írtam be: =$B$5>=C$11 csak az A$11-et kellet átírni. Jól működik, szuper lett.
Köszönöm a segítséget! Király vagy! -
Fferi50
Topikgazda
válasz Kal-El #27688 üzenetére
Szia!
Bocs, de a csatolt képen azt láttam, hogy a 10. sorban ott vannak az értékek, azok a számok, amiket világoszöldre váltasz. Lehet rosszul gondolom, de azok nem cellákban vannak?
Másrészt, lehet a skálázást az oszlopok értékéhez is viszonyítani, akkor két képlet kell.
10-ig =OSZLOP()/2<=$B$5
10-től=OSZLOP()-10<=$B$5Ha nem az A oszloptól indul a skála, akkor annyi oszlopot még ki kell belőle vonni, hogy helyes eredményt kapj (ezt ki tudod kísérletezni).
Üdv.
[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz Hege1234 #27681 üzenetére
Szia!
A K oszlopban képlet =HA(HA(C2="long";F2-E2;E2-F2)>0;HA(C2="long";F2-E2;E2-F2)*10000;"")
Az L oszlopban képlet =HA(HA(C2="long";F2-E2;E2-F2)<0;HA(C2="long";F2-E2;E2-F2)*-10000;"")A K oszlopban a feltételes formázás - adott tartalmú cellák formázása, ha a cellaérték nagyobb mint 0 - kitöltés világoszöld - betűszín sötétzöld.
Az L oszlopban a feltételes formázás - adott tartalmú cellák formázása, ha a cellaérték kisebb mint 0 - kitöltés rózsaszín - betűszín piros.Üdv.
-
Kal-El
senior tag
válasz Fferi50 #27687 üzenetére
A skála értékének 0,5-nek kell lennie 10$-ig, de ez nincs sehova külön leírva, 10$ fölött pedig 1 a skála értéke.
Ha külön be kell írni a cellákba a skálák értékét, és nem lehet képletben megoldani, akkor nem tudom hogy rejthetném el ezt a táblázatban.
Esetleg valamelyik sor szegélyébe beleírni. De én azt gondoltam, ezt úgy is meg lehet oldani, hogy képletben 0,5-öt megadni és hogy 0,5-el emelje az értéket cellánként haladva.[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz Kal-El #27683 üzenetére
Szia!
Ha B5 cellában van az érték és a 8. sorban van a "státuszjelző", a 10.sorban pedig a "skála", akkor a feltételes formázás képlete a 8. sorra (érvényesség =$A$8:$DF$8)
=A$10<=$B$5
Ebben az esetben a feles értékeket is be kell írnod a 10.sorban levő skálába.Ha nem az első oszlopban kezdődik a jelző, akkor A$10 helyett a megfelelő oszlop betűjelét írd be és attól az oszloptól indul a feltételes formázás érvényessége is.
Üdv.
[ Szerkesztve ]
-
csongi
veterán
válasz azopi74 #27685 üzenetére
Mivel komplikált, átszerveztem a füzetet.
Más:
Lehet e olyat, hogy beteszek egy gombot, ha arra klikkelek akkor egy adot cellába mindig összesíti egy másik cella változó értékeit. Összeadja, és csak akkor nulláza, ha egy másik vezérlő bombbal nullázva lenne.Illetve lehet e úgy nyomtatni, hogy a kijelölt celláknál az érték ha nulla, akkor az a sor nem kerül nyomtatásra?
-
azopi74
addikt
válasz csongi #27684 üzenetére
Egy cella egyszerre csak értéket tud tárolni, de persze vba-val minden megoldható. De előtte tisztázzuk: a munkalap minden cellájára alkalmazni szeretnéd, vagy csak adott tartományra? És ennek mi értelme is van pontosan? Csak mert lehet, hogy van más, ésszerűbb megoldás is, pl tábla használat, vagy képletek backupolása egy másik munkalapra, csak attól függ, mi a cél pontosan.
[ Szerkesztve ]
-
csongi
veterán
Sziasztok!
Szeretnék olyat csinálni hogy egy adott cellába, legyen egy képlet, de ha kézzel beleírok akkor a beírt érték legyen, viszont ne vesszen el a képlet sem. Vagyis mikor kitörlöm a kézzel beírt értékeket, a képlet legyen az aktuális.
2007-es excel.
Köszi. -
Kal-El
senior tag
válasz Fferi50 #27677 üzenetére
Nem működik sajnos. Inkább leírom részletesen, hátha jobban érthető lesz: ezt a státusz sávot szeretném elkészíteni, az alsó kis kép a példa, a felső a már elkészült táblázat rész, de a világos zöld megjelenítése a sávban túl macerás lenne már. A cél az lenne, hogy a "jelenlegi ár" alatt lévő számot módosítva (ami a B5-ös cella), automatikusan változzon a sáv kijelzése, mint ahogy a példán is látszódik. Azt már megcsináltam, hogy az a közepes zöld csík megjelenjen a sávban, ha egy bizonyos értéket elér a számláló (meg azt is, hogy a sáv alatti nyilak és számok világosabb zöldre váltsanak). A 3 kis blokkot nem kell nézni, azok csak a leendő világosabb zöld csík színkódjai. A 10$-ig terjedő résznél 0,5-ösével kéne kijelezni a haladást, mert minden $-ra jut 2 cella, ez így összesen 20 cella. 10$ felett pedig 1-esével, ott már minden $-ra jut egy cella, ez így összesen 90 cella. Összesen 110 cella van.
Tehát az kéne, hogy ha 0,5-öt elér a "jelenlegi ár" alatti számláló, akkor világoszöldre váltson a státusz sáv első cellája, ha 4,5-et éri el, akkor az első 9 cella váltson át világoszöldre. És mivel az első 20 cella 0,5-ösével halad, az utána lévők pedig 1-esével, így gondolom minimum 2 részben kéne megoldani. De nem szeretnék 110 cellát egyesével beállítgatni. -
azopi74
addikt
válasz azopi74 #27680 üzenetére
Szia: itt a megoldásom:
szóval a függvény a 6-odik oszlopban:
=SUMPRODUCT(Table1[ANYAGSZÜKSÉGLET AZ ADOTT MUNKÁHOZ]/Table1[GYÁRTANDÓ MENNYISÉG],Table1[6.])
7-ik oszlopban:
=SUMPRODUCT(Table1[ANYAGSZÜKSÉGLET AZ ADOTT MUNKÁHOZ]/Table1[GYÁRTANDÓ MENNYISÉG],Table1[7.])
és így tovább
Lehetne még rugalmasabbá tenni, hogy oszopbeszúrásra is immunis legyen, és mindenhol ugyanaz legyen a képlet, de ahhoz kell egy kis indirekt() függvény is, azt már rád bízom
[ Szerkesztve ]
-
Hege1234
addikt
válasz Fferi50 #27678 üzenetére
1. A mintában a profit oszlop milyen számítással jön ki?
huhh párszor próbáltam már visszafejteni de a spread változó amit nem tudok kihozni a programból mivel azt csak egy indikátoron keresztül látom
ami kb annyit tesz hogy egy trédet ha megnyitok akkor 0.1 - 2 pip között bárhol lehet
(vagy akár 15 ha olyan hír jön )viszont most néztem hogy a legutolsó tréd-ben van valami hiba
be lehet állítani hogy a profit rész ne tudja meghaladni a 15 karaktert
mert sztem az tesz be neki2. Az árfolyam különbségen kívül mit kell még levonni?
sztem nem
3. Milyen devizában van a profit?
$
de az accountom is $-ban van sztem inkább maradjon így mert az eléggé összekuszálna mindent
4. A comission mindig $5, akármiben van az üzlet kötve?
igen
-
azopi74
addikt
válasz #75654912 #27679 üzenetére
Egy javaslat: sokkal gyorsabban választ kapnál, ha nem képet töltenél fel, hanem magát a táblát valahova.
Egyébként a SUMPRODUCT (szorzatösszeg) függvény lesz a barátod, de én először is táblává alakítanám a tartományokatm, hogy minden változásra (beszúrásokra, bővítésekre) rugalmas legyen a megoldás. -
Fferi50
Topikgazda
válasz Hege1234 #27675 üzenetére
Szia!
Pár kérdés:
A mintában a profit oszlop milyen számítással jön ki? Az árfolyam különbségen kívül mit kell még levonni? Milyen devizában van a profit?
A comission mindig $5, akármiben van az üzlet kötve? Ha igen, milyen árfolyamon számoljuk át a profit devizanemére?Az első sort rögzítheted a nézet - ablaktábla rögzítése menüpontban, előzetesen állj rá az A2 cellára.
Üdv.
-
Fferi50
Topikgazda
válasz Kal-El #27676 üzenetére
Szia!
Azért tisztázni kellene még egy-két dolgot:
A több cella azonos sorban vagy azonos oszlopban van, esetleg "összevissza"?
A különbség minden esetben +1 a cellaszínezés feltételében?
Az A1 (azaz az induló cella) is szineződjön?Ha egy sorban vannak, kijelölöd a cellákat A2-től végig, a feltétel képlet pedig így néz ki: B1>A1+1 és ez érvényes a kijelölés egészére. Ha az A1 cellát is szeretnéd színezni, arra külön feltétel kell, A1>1 ezt lehet képlettel, vagy adott tartalmú cellák formázása pontból.
Üdv.
-
Kal-El
senior tag
Hello!
Hogy lehetne azt megoldani feltételes formázással, hogy több cella kijelölése után a cellák beszíneződjenek, de úgy, hogy cellánként haladva folyamatosan változna a feltétel értéke.
Példában: van az A1-es cella aminek értéke 1 és ki lenne jelölve 10 cella, aminkből az elsőnek az lenne feltétele, hogy nagyobb, vagy egyenlő legyen, mint 1, a másodiknak már nagyobbnak vagy egyenlőnek kéne lennie, mint 2, a harmadiknak, mint 3 és így tovább. Tehát ezt meg lehetne úgy oldani, hogy ne egyenként kelljen minden cellát beállítgatni új feltételekkel? -
Hege1234
addikt
Sziasztok!
trader naplómat szeretném egy kicsit kiegészíteni
viszont az excel nincs a képességeim között
így azt sem tudom hogy az excel-e erre a legjobb út
nahn mind1 majd kiderüla programból így tudom kihozni
kiegészítettem egy Pip oszloppal
csináltam pár mintát mit is szeretnék
a lényeg ha a Market Pos. Long akkor az F ből ki kell vonni az E -t
és akkor ha pozitív a szám akkor a Pip Profit oszlopba kapnék egy "Jó" cellát ha
negatív-ra jön ki akkor kapnék egy "Rossz" cellát a Pip Loss oszlopbaShort-nál E ből kell kivonni az F-et
+
a 42. sortól be van állítva a programba hogy vonjon le 5 dollárt a Commisssion-ra
sajnos korábban ezt nemtudtam hogy be lehet állítaniitt talán az lenne a legegyszerűbb ha a Profit résznél 1-41 ig
ki lehetne vonni 5-öt a pozitívakból a negatívakhoz pedig hozzáadni 5-öt
és akkor az 1-41 Commison oszlop-ot végigírom 5-el+
hogy oldható az meg hogy a vizsz. A1 "kövesse a görgetést"
vizsz A1-et szeretném rendezni is ha rákattintokelőre is köszi!
-
D5
aktív tag
(#27672) Fferi50 és (#27673) azopi74 köszönöm szépen!
-
azopi74
addikt
Meert az excel lebegőpontos formában tárolja a számokat így pl ha 1.111111111112-ből kivonsz 1.111111111111 -et, akkor azt csinálja, hogy először konvertálja lebegőpontosra minkét decimal értéket, kivonja egymásból, és utána visszaalakítja decimal-ra. Így aztán nem 0.000000000001 - et fogsz kapni, hanem 0.00000000000100008890058234 -et. Ha ilyen pontosságú számításokat akarsz végezni, akkor nem az excel az eszközöd, inkább valami komolyabb adatbáziskezelőt használj, azok képesek sokkal nagyobb precízióval dolgozni (akár 128bites pontossággal).
-
Fferi50
Topikgazda
Szia!
Ez a jelenség az Excel számtárolási sajátosságaiból adódik, a lebegőpontos tárolás miatt a "sokadik" tizedesjegyekben eltérés lehetséges.
Bővebben is olvashatsz erről több helyen is (bocsi, de most nem tudok linket csatolni).
Egyébként gondolom tudod, hogy az Excel 15 értékes számjegyet tud tárolni, ha ezen túlnyúlik a szám, akkor a többi mind 0 lesz, függetlenül attól, hogy éppen mennyit írtál arra a helyre (természetesen szöveg formátummal ez nem így van).Üdv.
-
D5
aktív tag
Sziasztok!
Egy igen érdekes esettel találkoztam. A1, A2 és A3 cella értékeket sok átlag képlet után kapom, egymástól függetlenül. Elviekben tudom, hogy A1+A2=A3, ezt ellenőriztem, és erre az excel is "Igaz" eredményt ad. Viszont, az A3-A2=A1 nem teljesül ("hamis" eredményt kapok). Megnéztem, és a 12. tizedes helyen van különbség. Na már most ez hogy lehetséges?
-
azopi74
addikt
válasz Szaszati #27667 üzenetére
Szia, hozzáadtam data model-hez a két táblát és beállítottam az adatkapcsolatot, a pivot sheeten most már olyan statisztikát tudsz csinálni, amilyet akarsz a szokásos pivotos módszerrel.
ide mentettem el: [link]
Sajnos ezt most Excel 2010-en csináltam, , powerpivot add-innal, mert most olyan gépen vagyok ahol csak az van de excel 2013-ban egy kicsit máshogy (egyszerűbben) kell megcsinálni (addin nélkül) , ezért képernyőfotókat nem lövök fel most, nehogy összezavarjalak (de a kettő teljesen kompatibilis egymással, csak a felhasználói felület más)
-
azopi74
addikt
válasz csudri #27665 üzenetére
Az egy dolog, hogy te "általános"-nak látod mindekettőt (olyan valójában nincs is), de az lehet valójában szöveg is meg szám is.
Ne kérdezd, hogy mi értelme ennek, mert most nincs időm kifejteni, ez a glitch az excel "sajátos" adatformátium kezeléséből adódik, ami sokaknak okoz fejfájást...Viszont a legfontosabb kérdésre nem válaszoltál: számot, vagy szöveget tud megenni a program, amibe be akarod importálni? Melyiket fogadja el, az alsót vagy a felsőt? Mert annak függvényében cselekedj (szövegből oszlopok vagy számok átalakítása szöveggé)
-
Szaszati
tag
válasz azopi74 #27662 üzenetére
Jujj, bocsi, ezt nem vettem észre
Köszönöm szépen, ezt elkezdem olvasni, de addig is itt megtalálod az excel fájlt, ha belefér, meg is mutathatod, sosem használtam power pivotot, sőt pivot táblát is most először próbálgattam.
Eddig úgy történt a kimutatás, hogy egy munkalapra egy hét adatai kerültek, ebben soronként voltak a termékek (ezek subtotallal kategóriánként összesítve), míg az oszlopok a napok voltak, minden terméknél és kategóriaösszesítőnél az adott napi eladás darabszámban és összegben is. Valami ilyesmit kéne megoldani most is, csak ez képletekkel volt, és nagyon kezdett haladni a káosz felé a dolog, ráadásul időigényes is volt. Ha kell, meg tudom osztani azt is, ahogy eddig készült (ha van kedvetek szörnyülködni )
Előre is köszi a segítséget
MobileArsenal - World domination temporarily suspended...
-
azopi74
addikt
válasz ClioRS #27661 üzenetére
Akkor MS query marad
Data->Get External DAta->From Other Sources->From Microsoft Query
Excel file-ból -t válaszd ki
Add meg a file elérési útját
Válaszd ki a munkalapokat, ahol az adatok vannak
Kösd össze a táblákat
Add meg a feltételeket (figyelj oda, hogy AND vagy OR a kapcsolat összekötő)
Ha jól csináltad valami ilyesmit kell kapnod, ha az SQL-re kattintasz :
SELECT `Sheet1$`.azonosító, `Sheet1$`.statusz, `Sheet2$`.azonosító, `Sheet2$`.statusz
FROM ***.`Sheet1$` `Sheet1$`, ***.`Sheet2$` `Sheet2$`
WHERE `Sheet1$`.azonosító = `Sheet2$`.azonosító AND ((`Sheet1$`.statusz='végleges') AND (`Sheet2$`.statusz='Igen') OR (`Sheet2$`.statusz='IN/A'))Ahol Sheet1 és Sheet2 lapokon vannak az adatok *** az elérési út
És add át az excelnek File -> (Return Data to Microsoft Excel)
És kész vagy. Ezután csak frissítgetned kell a query-n (jobb egér-refresh), ami automatikusan frissül, ahogy az alapadatok változnak.
-
azopi74
addikt
Hát ezért nem szabad sohase megnevezéseket használni, hanem kódokat.
Legalábbis, ha utána szeretnél dolgozni is azokkal az adatokkal . Persze adatrögzítéskor lehet validációt használni. (ha excelben történik a rögzítés is, akkor a magyarban érvényesítés néven lehet)Az ÁTLAGHA függvénnyel mi a problémád?
-
azopi74
addikt
válasz ClioRS #27652 üzenetére
Erre elég sok megoldás van, de az a kérdés, hogy a verzió mi?
A legegyszerűbb , leggyorsabb, és legelegánsabb a power query, ehhez viszont vagy Excel 2016 kell vagy Excel 2010/2013 + PowerQuery add-in.
második megoldás: DataModel, ehhez Excel 2013 kell vagy Excel 2010 + PowerPivot add-in
harmadik módszer: Microsoft Query, ez megy mindenen (2003 vagy annál újabb). Ez nem annyira szép,és megvannak a korlátai, de ilyen egyszerű feledathoz az is célravezető
(vannak egyéb megoldások, is, pl makrózás vagy worksheet függvényekkel, vlookup, index/match való tákolás, irányított szűrőzés, de az mind nagyon csúnya és nagyon lassú
[ Szerkesztve ]
-
azopi74
addikt
válasz csudri #27651 üzenetére
Kicsit bővebben leírnád a problémádat?
Melyiket eszi meg a "porgram" és melyiket nem? Milyen adatformátumnak kell lenni, hogy megegye a program? Szám, vagy szöveg?
Csak azért, mertr így ránézésre az felső szám formátum, az alsó viszont szöveg, hiszen hosszabb a cella tartalma, mint a szélessége, és mégsem alakítja át normál alakra (mint a felső esetében) Szóval az a kérdés hogy melyiket eszi meg az alkalmazás, amibe importálni akarsz? A felsőt vagy az alsót? Ha számmá akarod alakítani a szöveget, akkor a legegyszerűbb megoldás a text to columns (szövegból oszlopok), azzal két egérkattintással számmá tudod varázsolni az egész oszlopot, amiben szövegek vannak) . Ha fordítva, akkor szöveggé kell alakítanod a számokat egyszerű cellaformázással.
-
littlegeorge
újonc
hi!
ha valakit érdekel:
[link][ Szerkesztve ]
-
ueva
csendes tag
Szia!
Sajnos a kulcsszavas ötlet nem működik.
Ez a példa csak egy egyszerűsített változata az eredeti táblázatnak. Abban több száz típus van és nem csak egyféleképpen elírva, vagy elhibázva. Van olyan, amelyikből javítás után 5 egyforma sor van.
Az ÁTLAGHA fv.-re én is gondoltam, de egyelőre még nem tudom így használni. -
Louro
őstag
Szia,
egyszerűbb a megoldás, mint gondolnád
Én a javított nevek helyet kulcsszavakat használnék. (C oszlopba)
Pl.: Jonatán->Jonat*án (Így a Jonathán is jó lesz) vagy Vér narancs->Vér*narancsÁTLAGHA nevű függvény lesz a te embered. =ÁTLAGHA('Ide a tartományt a Kertészetek munkalap A oszlopa kell';'Ide a Típusok munkalap C oszlopából egy mező';'Ismét a Kertészetekről az átlagolandó értékeket tartalmazó oszlop')
Leírva: Típusok D2-be: =ÁTLAGHA(Kertészetek!$A:$A;$C2;Kertészetek!$B:$B)
Remélem használható, amit leírtam (Na és azt is remélem, hogy működik. Bevallom, nem teszteltem.)
Vaaaagy
Típusok A-hoz hozzákeresed FKERES-sel az összegeket mondjuk az F oszlopba (elrejtve akár). Így már mehet az ÁTLAGHA. D2-be: =ÁTLAGHA($B:$B;$C2;$F:$F)
De legfőbb javaslat: Tanuljanak meg helyesen írni (Ezt legördülővel segítheted ) Ha új termék van, jelezzék neked, hogy beírják. Vagy csinálj egy listát, amit ha bővítenek, akkor az a legördülőben megjelenik. Így a Jonatán nem tud 4-5féleképpen megjelenni.
[ Szerkesztve ]
Mess with the best / Die like the rest
-
ueva
csendes tag
Sziasztok!
Segítséget szeretnék kérni egy problémához, amellyel nem boldogulok.
Adott egy táblázat, amelyben pl. különböző kertészetekben megvásárolható fatípusok és az áraik találhatók.
Ezekhez az adatokhoz nem nyúlhatok.
Még akkor sem, ha némelyiket elírták, vagy helyesírási hiba van benne.
Egy másik munkalapra kigyűjtöttem a különböző nevű fatípusokat (A oszlop), majd javítottam amelyiket szükséges volt (B oszlop). Így persze lettek azonos sorok. A C oszlopba kigyűjtöttem az ismétlődés nélküli típusokat. És itt akadtam el, mert meg kellene adnom egy képletet, amellyel ki tudom számolni a típusonkénti átlagárat.
Arra gondoltam, talán úgy lehetne, hogy a C-beli értékeket megkerestetem a B-ben és amely sorokban megtalálja ugyanazon sorokat veszem az A-ból és az azokhoz tartozó árak átlagát számolom az előző munkalapról. HOL.VAN-nal viszont csak az első előfordulást kapom meg.
Van ötletetek?
Előre is köszönöm a segítséget. -
ClioRS
őstag
Sziasztok!
Segítséget kérnék.
Adott két táblázat. Azokat a dolgokat szeretném kilistázni, amelyek az egyik táblázatban véglegesnek vannak ítélve, míg a másikban Igennek vagy N/A-nak. A táblázatokban lévő dolgok egy folyamatazonosító alapján köthetőek össze. -
csudri
őstag
Sziasztok!
Adott két cella, hasonló számok szerepelnek benne, mégis az egyik így jelenik meg, a másik pedig úgy.
CSV fájlból került kimásolásra, az egyiket megeszi a program, amibe bele kellene importálnunk a cuccokat, a másikat nem. Én a cellaformázásnál nem látok különbséget, nem tudjátok hogy lehetne megadni, hogy egyformák legyenek?Előre is köszi!
[ Szerkesztve ]
-
Kal-El
senior tag
Hello!
Érdekelne, hogy ilyen állapot sávot hozzá lehet valahogy adni a táblázatunkhoz, vagy lehetséges mezei felhasználónak készíteni magának ilyet?
Van jó pár példa is, amikre itt gondolok: 1 ~ 2 ~ 3.
De csak egy olyan képet találtam, ami Excelből való.
Jelenleg 2007-es Office-om van, de ha ehhez szükséges, akkor beszerzek újabbat. -
Delila_1
veterán
-
Delila_1
veterán
válasz Polllen #27642 üzenetére
Az kell bele, mert több azonos szállítólevél is lehet. Ha ezeknek új lapot próbálnék bevinni, egyrészt hibára futna, másrészt minden sort külön lapra tenne.
A lapokat egy új kigyűjtés előtt egy makróval törölheted.
Sub Laptorles()
Dim lap As Integer
Application.DisplayAlerts = False
For lap = Sheets.Count To 2 Step -1
Sheets(lap).Delete
Next
Application.DisplayAlerts = True
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
azopi74
addikt
-
RedHarlow
aktív tag
Sziasztok,
Van egy diagramom ami kb 20 adatból táplálkozik, de a diagramon csak kb 10 adat jelenik meg. Hozzáadtam egy új friss heti adatot, ez nem jelenik meg a diagramon valamiért, hogy tudnám azt beállítani hogy az utolsó 10. adat ne a múttheti hanem a heti legyen.
-
Delila_1
veterán
válasz Polllen #27637 üzenetére
Nem túl bonyolult.
A makró elején töröltethettem volna az első lapon kívül a többit, hogy "tiszta lappal" kezdjünk, de nem ismerem a füzeted felépítését. Lehet, hogy vannak benne nem törölhető lapok.A makró az első lap sorain megy végig. Mikor a sorban lévő szállítólevél nevével egyező lap van a füzetben, az első üres sorába bemásolja az aktuális sort. Ha nincs olyan lap, akkor a füzet végén létrehozza, átmásolja a címsort az első lapról, majd alá az aktuális sort.
Sub Szall_Lev()
Dim sor As Long, usor As Long, usorIde As Long, nev
Dim WS As Worksheet, WSIde As Worksheet
Application.ScreenUpdating = False
Set WS = Sheets(1)
WS.Select
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 2 To usor
On Error Resume Next
Set nev = Sheets(Cells(sor, "A") & "")
If Err.Number <> 0 Then
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = WS.Cells(sor, "A")
WS.Rows(1).Copy ActiveSheet.Range("A1")
WS.Select
End If
On Error GoTo 0
Set WSIde = Sheets(WS.Cells(sor, "A") & "")
usorIde = WSIde.Range("A" & Rows.Count).End(xlUp).Row + 1
Rows(sor).Copy WSIde.Range("A" & usorIde)
Next
Sheets(1).Activate
Application.ScreenUpdating = True
MsgBox "Kész", vbInformation
End Sub[ 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.
-
Polllen
nagyúr
válasz Delila_1 #27631 üzenetére
Sziasztok!
Nekem kellene egy hasonló megoldás, csak kicsit bonyolítva.
4 oszlopban vannak adatok, az első a szállítólevélszám.
Minden szállítólevélhez kell egy worksheet a szállítólevélszámmal és oda kellene másolni a hozzátartozó sorokat fejléccel.
Természetesen a szállítólevelek darabszáma változó.
"Odamentem egy párhoz...négyen voltak!"
-
Delila_1
veterán
válasz RedHarlow #27635 üzenetére
Szia!
Mikor leáll hibával, a makróban mutass rá (ne jelöld ki) a lap változóra, akkor kiírja, mennyi az értéke. Ha ez nagyobb, mint ahány lap van a füzetedben, akkor feljebb rosszul adtad meg az értékét a Select Case részben.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Szaszati
tag
Sziasztok!
Egy kávézó eladási statisztikáit szeretném Excelben megoldani, úgy tűnik a pivot tábla erre a legkézenfekvőbb eszköz. A probléma a következő: adott két tábla, egyikben a kávézó összes terméke, amit eladnak, mindenik külön sorban, mellette másik oszlopban, hogy milyen kategória (kávé, üdítő, szendvics, stb.), s még egy oszlopban az ára. Ez nagyjából fix adat, de persze közben jönnek be új termékek is.
Aztán másik munkalapon mindig bejönnek az aktuális havi eladások, tételesen, tehát minden egyes kávé, üdítő, satöbbi egy-egy külön sorban, mellette ára, kategória. Ebből kellene összeállítanom a pivot táblát, és az igazi probléma, hogy ez nyilván csak az, amit eladtak, de nekem szerepelnie kéne az összes terméknek, hogy látni lehessen azt is, miből nem adtak el semmit az adott időszakban.
Találtam egy ilyen megoldást, ez viszont a nem a legjobb, mert az aktuális eladási adatsor aljára külön fel kéne vinni minden terméket, amiből nem adtak el. És ahhoz ugye át kéne vizsgálni, hogy mit adtak el, és elég sok termékről van szó, így ez nem oké
Ha van valami ötletetek, hogyan lehetne "összefésülni" két munkalapot, vagy mit lehetne tenni még, akkor azt nagyon megköszönném
Egyébként Excel 2013, angol, ha ez számít bármit is.
MobileArsenal - World domination temporarily suspended...
-
Delila_1
veterán
válasz RedHarlow #27630 üzenetére
Így már rendben.
A füzetben az első lap az, amin ömlesztve vannak az adatok. Ezt követi a két lap, ahova másolni kell.
A makróban két helyen szerepel a
Sheets(Array("Munka2", "Munka3")).Select
sor, ezekben írd át a Munka2 és Munka3 lapneveket a füzetedben lévő 2. és 3. lap nevére.Szerk.: persze az X1–X4 és Y1–Y6 adatokat is írd át!
Sub SzetCincal()
Dim nev As String, sor As Long, usor As Long, usorIde As Long
Dim WS As Worksheet, WSIde As Worksheet, lap As Integer
Set WS = Sheets(1)
'Előző adatok törlése
Sheets(Array("Munka2", "Munka3")).Select
Cells.Select
Selection.ClearContents
'Címsor a 2 lapra
WS.Rows("1:1").Copy
Sheets(Array("Munka2", "Munka3")).Select
Range("A1").PasteSpecial xlPasteValues
'Szortírozás
WS.Select
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = 2 To usor
nev = Cells(sor, 6)
Select Case nev
Case ""
If Cells(sor, 5) = "Y1" Or Cells(sor, 5) = "Y2" Or _
Cells(sor, 5) = "Y3" Then lap = 2
If Cells(sor, 5) = "Y4" Or Cells(sor, 5) = "Y5" Or _
Cells(sor, 5) = "Y6" Then lap = 3
Case "X1", "X2"
lap = 2
Case "X3", "X4"
lap = 3
Case Else
GoTo Tovabb
End Select
Set WSIde = Sheets(lap)
usorIde = WSIde.Range("A" & Rows.Count).End(xlUp).Row + 1
Rows(sor).Copy WSIde.Range("A" & usorIde)
Tovabb:
Next
End Sub[ 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.
-
RedHarlow
aktív tag
válasz Delila_1 #27629 üzenetére
Ha a 6. oszlopban az ügyintéző X1 vagy X2 akkor másolja át a sort az első fülre.
Ha a 6. oszlopban az ügyintéző X3 vagy X4 akkor másolja át a sort a második fülre.Ha a 6 oszlop üres, de az 5. sorban a képzés Y1, vagy Y2, vagy Y3 akkor másolja át az első fülre.
Ha a 6 oszlop üres, de az 5. sorban a képzés Y4 vagy Y5 vagy Y6 akkor másolja át a második fülre.A lényeg tehát hogy a fő táblázatban minden kar adata ott van és nekem szét kell válogatnom karonként, úgy hogy nekem az ügyintéző nevei vannak megadva egy listában (karonként 2-5) de sajnos vannak olyan sorok ahol nincs megadva ügyintéző.
8 ilyen táblázatot kell 7 felé vállogatni.
-
Delila_1
veterán
válasz RedHarlow #27628 üzenetére
Így már kicsit több az információ, de még nem derült ki, mi a feladat.
Most próbáld meg úgy leírni, ahogy az Excel szereti.Példa: ha az A oszlopban X1, X2, X3, vagy X4 van az aktuális sorban, akkor a sort másolni kell a .... lapra.
Ha az A értéke X5, vagy X6, akkor ..., ha az A értéke X7, akkor ...Ha az A üres, és a B tartalma Y1, Y2, vagy Y3, akkor...
Ha az A üres, és a B tartalma Y4, Y5, vagy Y6, akkor...Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
RedHarlow
aktív tag
válasz Delila_1 #27626 üzenetére
Nem ügyintéző szerint, hanem az egyetem 7 "karja" szerint kell szétválogatni. Tehát lesz 7 fül.
A 6. oszlopban vannak az ügyintézők nevei:
X1, X2, X3, X4 = A karon ügyintéző
X5, X6 = B karon ügyintéző
X7 = C karon ügyintézőEz az első fontos szűrés. De mivel vannak olyan sorok ahol nincs megadva ügyintéző, így a képzéskódok szerint kell ezeket tovább szűrni.
Az 5. oszlopban pedig a képzéskódok.
Y1, Y2, Y3 = A kar képzése
Y4, Y5, Y6 = B kar képzése -
be.cool
csendes tag
Sziasztok!
Szeretnék egy olyan képletet kérni tőletek amiben ha "O" oszlopban a cella üres akkor írja be oda a "G" oszlop aktuális sorát. Tehát mondjuk ha O2 üres akkor G2 -t másolja be.
Köszönöm előre is!
-
Delila_1
veterán
válasz RedHarlow #27625 üzenetére
Kicsit több adatra van szükség.
7 ügyintéződ van? Melyik oszlopban van a nevük?
A lapok neve megegyezik az ügyintézőjével (kivéve az első lapot, ahol az összes adat van ömlesztve)?
Ha nincs ügyintéző, akkor az első ügyintéző lapjára kerüljenek az adatok a B oszlop tartalmától függően?
Ha nem X, D, vagy K a B oszlop tartalma, hova kerüljön a sor?Egyébként ha 1× kell szétosztani az adatokat, néhány autoszűréssel, a szűrt adatok másolásával egyszerűen megoldható.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
RedHarlow
aktív tag
Sziasztok,
Van egy 30 000 soros táblázatom, mely 7 oszlopból áll. Ezeket az adatokat 7 felé szét kellene választanom, úgy hogy amennyiben XY vagy XY2 vagy XY3 vagy XY4 az ügyintéző úgy az az első fülre kerüljön, mert az ő szervezetéhez tartozik. Vannak viszont olyan sorok ahol nincs ügyintéző megadva így egy másik adat alapján is szűrni kellene, hogy amenniyben ebben a második oszlopban X vagy D vagy K adat van úgy azok is az első fülhöz menjenek.
Tudtok erre valamit mondani? Ezt az egészet 8x kell megcsinálnom ezért szeretnék valami segítséget kérni.
Köszönöm.
-
Fferi50
Topikgazda
válasz sedyke #27622 üzenetére
Szia!
Bocs, rosszul fogalmaztam - az egyedi értékekre gondoltam, amikor a sorokról/oszlopokról beszéltem:
pl. van 1,9,21,30,100 érték. Akkor itt elvileg 100 sornak kellene lennie, amiből 5 sorban van érték. Igazából az a kérdés, hogy hány olyan tétel van, amihez nem tartozik a táblában érték, de meg kellene jeleníteni, mint lehetséges értéket.
Milyen típusú az a tételsor, amihez a teljes megjelenítést szeretnéd hozzárendelni?Üdv.
-
Fferi50
Topikgazda
válasz scott_free #27616 üzenetére
Szia!
Ha csak ez az egy sor van, akkor szerintem nem érdemes vele foglalkozni, mert copy-paste módszerrel gyorsan át tudod írni.
Ha több sor is van, csinálni kell egy külön makrót és azt kell minden egyes textboxnál meghívni.
Üdv.
-
scott_free
senior tag
válasz Fferi50 #27613 üzenetére
köszi!
esetleg ezt a textbox-formázást is össze lehet vonni valahogy?
(a beírt számokat formázza ezres értékekre - több van belőle, most csak kettőt tettem ide)Private Sub TextBoxÖsszeg1_Change()
TextBoxÖsszeg1.Value = Format(TextBoxÖsszeg1.Value, "# ### ##0")
End Sub
Private Sub TextBoxÖsszeg2_Change()
TextBoxÖsszeg2.Value = Format(TextBoxÖsszeg2.Value, "# ### ##0")
End Sub -
alfa20
senior tag
Sziasztok!
'DARAB' függvényt használom, hogy számolja össze a számokat, de valahogy a nullát ki lehetne zárni, hogy azt ne vegye figyelembe, ezt melyik függvénnyel tudom?
a figyelembe vett cellák képletet tartalmaznak ezért lehet benne nulla érték.
"Az agy olyan, mint az ejtőernyő: csak akkor működik, ha nyitott." (Thomas Dewar)
-
Fferi50
Topikgazda
-
Fferi50
Topikgazda
válasz scott_free #27612 üzenetére
Szia!
Egyrészt nem értem, miért használsz Like operátort, ha nincs benne jóker karakter, én úgy látom, itt pontos egyezéseket szeretnél ellenőrizni, amihez az = operátor használható.
Másrészt az if feltételeket összekapcsolhatod az or operátorral:
if ccontrol.tag like/= "L1" or ccontrol.tag like/= "ED" or .....
Harmadrészt select case-sel
Select case ccontrol.tag
case "L1","ED","EDK",....end select
Továbbá használhatnád a With rövidítést is még:
with ccontrol.font
.size=11
.name="Arial"
end withÜdv.
[ Szerkesztve ]
-
scott_free
senior tag
sziasztok,
ezt valahogy lehet egyszerűsíteni? (pl. Select Case-zel?)
For Each cControl In Me.Controls
If cControl.Tag Like "L1" Then
cControl.Font.Size = 11
cControl.Font.Name = "Arial"
End If
If cControl.Tag Like "ED" Then
cControl.Font.Size = 11
cControl.Font.Name = "Arial"
End If
If cControl.Tag Like "EDK" Then
cControl.Font.Size = 11
cControl.Font.Name = "Arial"
End If
If cControl.Tag Like "HD" Then
cControl.Font.Size = 11
cControl.Font.Name = "Arial"
End If
If cControl.Tag Like "HDK" Then
cControl.Font.Size = 11
cControl.Font.Name = "Arial"
End If
Next -
sedyke
tag
válasz Fferi50 #27599 üzenetére
Nem gond, szivesen leirom megint.
Van egy munkafuzetem tobb pivot tablaval. Az alap gond az, hogy amikor megprobalom megjeleniteni a nullas ertekeket, akkor teljesen megfagy, kenyszerleallitas kell.
Multheten azt gondoltuk, hogy amiatt mert sok a pivot tabla a munkafuzeten belul, de ezt cafolja, hogy miutan atmasoltam az alap adathalmazomat egy uj munkafuzetbe es letrehoztam egy teljesen uj pivot tablat, meg mindig fennall a fagyas.
-
Delila_1
veterán
válasz sutyimatyi #27609 üzenetére
Egy oszlopba felveszed az év ünnepnapjainak a dátumát, a tartományt elnevezed. Legyen a neve pl. Ünnepek.
A feltételes formázás képlete
=DARABTELI(Ünnepek; Dátumot_tartalmazó_cella)>0A hétvégéket is bele véve a képlet
=VAGY(HÉT.NAPJA(Dátumot_tartalmazó_cella;2)>5;DARABTELI(Ünnepek;Dátumot_tartalmazó_cella)>0)[ 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.
-
sutyimatyi
csendes tag
Sziasztok! Hogyan tudom megcsinálni, hogy egy munkaidő nyilvántartó táblázat figyelje a piros betűs ünnepeket, és ha az adott napon dolgozik valaki, akkor azt pirossal jelölje? Köszi
-
azopi74
addikt
válasz Carasc0 #27604 üzenetére
"A PowerQuery cucc feltétele az IE 9 megléte"
Hát ez ebben a formában nem igaz. IE 9 vagy annál újabb kell neki (gondolom nem IE8-at vagy IE6-ot használsz )
Én se lennék hajlandó ilyen elavult böngészőt telepíteni, mint az IE9, de nem is kell (sőt nem is lehet mai OS-ekre) , természetesen megy a mai böngészőkkel. is Nálam is gond nélkül fut már két éve, pedig sose látott IE9-et, csak IE11-et, sőt, jelenleg egyáltalán semmilyen Internet Explorert se lát, csak Edge-etOffice 2013-ba még csak a PowerPivotot tették be, a PowerQuery (lánykori nevén Data Explorer) csak Office 2016-tól lett beintegrálva az Excelbe.
2010-re és 2013-ra külön kell letölteni.[ Szerkesztve ]
-
Delila_1
veterán
válasz Carasc0 #27604 üzenetére
Csak írd be az A oszlopba az adatokat. Ha nem kerek számot adna az adatok darabszámának a gyöke, hibajelzést kapsz.
Hibátlan darabszámnál kiírja a "kevert" mátrixot a D1 cellától kezdődően. 9; 16; 25; és 36 adatra kipróbáltam, nem kell módosítanod semmit. Illetve ha nem tetszik, hogy D1-be kezd írni, akkor a
sor = 1: oszlop = 4 sorban a 4-et írd át a kedvenc oszlopod sorszámára.Sub Kever()
Dim usor As Integer, gyok As Integer, CV As Range
Dim sor As Integer, oszlop As Integer
Application.ScreenUpdating = False
usor = Range("A" & Rows.Count).End(xlUp).Row
On Error GoTo Vege
gyok = Application.WorksheetFunction.ImSqrt(usor)
Range("A1:A" & usor).Copy Range("B1")
Range("C1:C" & usor) = "=rand()"
Range("C1:C" & usor).Copy
Range("C1").PasteSpecial xlPasteValues
ActiveWorkbook.Worksheets("Munka1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Munka1").Sort.SortFields.Add Key:=Range("C1:C" & usor), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Munka1").Sort
.SetRange Range("B1:C" & usor)
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
sor = 1: oszlop = 4
For Each CV In Range("B1:B" & usor)
If sor > gyok Then
sor = 1
oszlop = oszlop + 1
End If
CV.Copy Cells(sor, oszlop)
sor = sor + 1
Next
Range("B1:C" & usor).ClearContents
Range("D1").Select
Application.ScreenUpdating = True
Exit Sub
Vege:
MsgBox "Nem adnak mátrixot az adatok", vbInformation
Application.ScreenUpdating = True
End Sub[ 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.
-
Tetete1
senior tag
Office 2016 átirható Office 210 megnevzésekre (oszlopokra)? Ha igen, mivel?
[ Szerkesztve ]
- Az érdekel, hogy mi az élet értelme?! Én megmondom neked: sánta veréb elől elrúgom a lószart - a lehetőségeink körülbelül eddig terjednek. Moldova György
-
Carasc0
őstag
@Delila_1: Nagyon szépen köszönöm a fáradozásodat... Igen kb. elsőre ilyet képzeltem el. Egy utolsó kérésem még lehetne? Ezt a kódot úgy módosítani hogy az A1:A9 tartományt mátrix/négyzetes formában összekeverve írja ki. Tehát konyhanyelven mondva adott 9 db szó vagy szám tök mind1, és azt egy 3x3-as cellatartományba összekeverve írja ki.
Ha ez sikerülne akkor kellene egy kis útmutató arra vonakozólag, hogy hol kellene módosítanom a kódot, arar az esetre ha nem 9 adatom lenne hanem mondjuk 64, ami szintén négyzetszám tehát 8x8 mátrixban keverve kirakható...@azopi74agyon szépen köszönöm a fáradozásodat neked is. Ez is tökéletesen működik, pontosabban működne, de sajnos a megoldásod alkalmazásának technikai okai vannak. A PowerQuery cucc feltétele az IE 9 megléte, amit én a gépemre évek óta elvi okok végett nem telepítek (nem szégyen kijelentenem hogy nem vagyok hajlandó telepíteni!), szóval így ez nem fog menni. Egyébként hamarosan átpártolok Office 2013-ra (lehet idén, de jövőre biztosan), nem tudom az alapból fogja támogatni ezt az Add-on-t.
[ Szerkesztve ]
Gondolkodj globálisan és tegyél lokálisan!
-
azopi74
addikt
válasz Carasc0 #27601 üzenetére
Bár írtad, hogy Excel 2010, azért beteszek egy Excel 2016-os, makró mentes megoldást is , mert imádom
(Excel 2010-ben is működőképes, csak fel kell tenned a PowerQuery add-in-t.)ALakítsd táblává (Table1) a forrás oszlopot. és B1-be szúrd be ezt a query-t (Advanced Editor):
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Added Custom" = Table.AddColumn(Source, "Custom", each List.Random(1)),
#"Expanded Custom" = Table.ExpandListColumn(#"Added Custom", "Custom"),
#"Sorted Rows" = Table.Sort(#"Expanded Custom",{{"Custom", Order.Ascending}}),
#"Removed Columns" = Table.RemoveColumns(#"Sorted Rows",{"Custom"})
in
#"Removed Columns"Természetesen a fenti a sima query editorban előállítható négy egérkattintással
Ja, azt elfelejtettem írni: refresh-re kalkulálja újra a kevert oszlopot. (jobb egér - refresh, vagy magyarban frissítés)
[ Szerkesztve ]
-
Delila_1
veterán
válasz Carasc0 #27601 üzenetére
A makró átmásolja az A1:A9 tartományt a B1:B9-be. Véletlenszámokat ír a C1:C9-be, ami szerint rendezi a B oszlopot, majd törli az ideiglenes C-t.
A rendezést makrórögzítéssel vittem be.Sub Kever()
Dim sor As Integer
Range("A1:A9").Copy Range("B1")
For sor = 1 To 9
Cells(sor, "C") = "=RAND()"
Cells(sor, "C") = Cells(sor, "C").Value
Next
ActiveWorkbook.Worksheets("Munka1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Munka1").Sort.SortFields.Add Key:=Range("C1:C9"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Munka1").Sort
.SetRange Range("B1:C9")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("C1:C9").ClearContents
End SubBetehetsz egy képernyőfrissítés tiltását az elejére, hogy ne látsszanak a véletlenek, a végén pedig engedélyezed.
Application.ScreenUpdating=False
[ 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.
-
Carasc0
őstag
Sziasztok!
Előre is elnézést szeretnék kérni, ha túl munkás dolgot kérnék, mert tényleg nem kívánom senkitől hogy helyettem kódoljon, de sajnos nem értek (már) a makróprogramozáshoz, vagyis az időm szűk ahhoz, hogy a feladatot öntanulásos módszerrel makróval oldjam meg. Excel 2010!
Egy viszonylag nagy, saját találmányú projekten dolgozom, ahol nagy szerepe van az excelnek. A projekt-nek van olyan része amit sztem csak makróval lehet legjobban megoldani s ezért is fordultam ide. No de lássuk mit is szeretnék:
Adott 9 db szó egymás alatt mondjuk A1:A9-es tartományba. Mindegyik szó különböző. Kellene nekem egy olyan makró ami azt csinálja, hogy fogja ezt a 9 db szót, és mondjuk a B1: B9-es tartományba összekeverve kiírja. S gondolom ha egy ilyen makrót újra futattnék, akkor új keverést csinálna!
Valójában ennyire lenne szükségem!
Előre is hálás lennék egy ilyen kódnak..
[ Szerkesztve ]
Gondolkodj globálisan és tegyél lokálisan!
Új hozzászólás Aktív témák
Hirdetés
- NORTON 360 for Mobile! 1 eszköz, 1 év! DOBOZOS, BONTATLAN!
- Adobe Creative Cloud - 2024. 04. 05 - 2025. 04. 05-ig
- Karácsonyi akció: ESET termékek hivatalos forgalmazója / NOD32 / Internet Security / stb.
- Eladó Steam kulcsok kedvező áron!
- AKCIÓ! Microsoft szoftverek, vírusírtó szoftverek, egyéb szoftverek széles választéka!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest