-
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
-
Fferi50
Topikgazda
válasz Melorin #50122 üzenetére
Szia!
Szerintem is makrós megoldás kell:
A rendelés táblád eseménykezelőjébe kell egy rövid makró, amelyik bemásolja az "adatbázisból" a képet.
Pl.Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
If IsEmpty(Target) Then Exit Sub
Application.EnableEvents = False
Sheets("Adatbázis").Range("A1:A50000").Find(what:=Target.Row, LookIn:=xlValues, lookat:=xlWhole).Offset(0, 1).Copy Destination:=Target.Offset(0, 1)
Application.EnableEvents = True
End If
End Sub
Amikor a sor első cellájába érték kerül, megkeresi az adatbázisban és átmásolja a képet. A feltételezés itt az, hogy az adatbázisban az anyag azonosító az első oszlop és mellette van a kép továbbá a sor második cellájába kell másolni.
Nincs benne hibakezelés, tehát ha olyan érték kerülne be, ami nincs az adatbázisban, akkor hibával megáll. Természetesen ezt lehet kezelni.
Figyelem! Ebben az esetben makróbarátként kell mentened azt a fájlt, amivel dolgozol. A mások által nézett fájl már lehet makrómentes.
Üdv.[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz Melorin #50114 üzenetére
Szia!
Megcsináltad ezeket a lépéseket:?
"1.Select any cell that has the logo. Make sure you have selected the cell, not the logo/image.
2.Copy the cell (use Control + C or right-click and select copy).
3.Right-click on the cell where you want to get the linked picture (it can be any cell as we can adjust this later).
4.Go to the Paste Special option and click on the small right-pointing arrow to get more options.
5.Click on the Paste Linked Picture icon.
"
Mert csak ezzel együtt működik a kép megjelenítése.
Üdv. -
Fferi50
Topikgazda
válasz Melorin #50112 üzenetére
Szia!
A Refers to: nem a képlet része. Az a hivatkozás angol neve.
Írtam, hogy a képletben az Excelednek megfelelő függvényeket és formákat kell használnod.
Magyar Excelben a MATCH => HOL.VAN, a vessző helyett pedig általában pontosvesszőt kell használni.
Továbbá a képletet csak a névkezelő Hivatkozás részébe kell beírni. A cellákba a névkezelőben megadott nevet kell írni az egyenlőségjel után. Azt lehet lehúzni.
Üdv. -
Fferi50
Topikgazda
válasz Melorin #50107 üzenetére
Szia!
" 300 bejegyzést kell létrehoznom a névkezelőben ehhez?!"
Egyáltalán nem!
A második verzió nekem jobban "tetszik".
Itt a névkezelő képlete:Refers to: =INDEX($C$3:$C$22,MATCH($E$3,$B$3:$B$22,0))
Ahol a $E$3 a nevet tartalmazó cella. Amennyiben a sor elől elhagyod a $ jelet, akkor a képletet lefelé húzva majd mindig az aktuális cella értékét fogja keresni.Refers to: =INDEX($C$3:$C$22,MATCH($E3,$B$3:$B$22,0))
Az első cellába beírod a nevet: =ClubLogoLookup
majd ezt lehúzod, ameddig neveid vannak.
Természetesen a képletet és a függvények neveit a saját Exceled követelményeinek megfelelően használd.
Üdv. -
ny.janos
tag
válasz Melorin #48882 üzenetére
Ahogy a táblázatodat nézem, a központi adatbázisból nyert árakhoz tartozó érvényeségi dátum kezdete és vége könnyedén kinyerhető PowerQuery-vel. Ha ez megvan, akkor az alapján meg tudod keresni az adott termék adott napon érvényes árát nem kell hozzá semmilyen átalakítás. Ezeket a videókat nézd meg és válassz olyan megoldást, ami neked megfelelő.
[link] [link] [link] [link] [link] -
Fferi50
Topikgazda
válasz Melorin #48882 üzenetére
Szia!
Szerintem nem feltétlenül kell erre makró.
Az FKERES (vagy INDEX - HOL.VAN ) képlettel az árak frissítése és a dátumok frissítése is megoldható.
Az adatbázisból lekérdezett táblában az ajánlat érvényessége oszlopot ketté lehet bontani, gondolom, neked a vége a fontos, tehát azt vissza lehet tenni az adott oszlopba az Adatok - szövegből oszlopok menüponttal.
A lekérdezés szükségessége (F) oszlop pedig HA függvényes képlettel megoldható.
A képletezést csak egyszer kell megcsinálni. A "központi" táblát pedig minden lekérdezéskor ugyanazon névvel kell ellátni, hogy a képletek működjenek.
Üdv. -
Delila_1
veterán
válasz Melorin #35213 üzenetére
Az a része megy, hogy a kiválasztott termékhez a következő érvényesítés a megfelelő méreteket adja?
Az első laphoz rendelt makrót átírtam, hogy ne képleteket, hanem eredményeket írjon a K oszlopba.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 2 Then Cells(Target.Row, "K") = _
Application.WorksheetFunction.VLookup _
(Target, Sheets("Adatok").Columns("F:G"), 2, 0)
Application.EnableEvents = True
End SubTulajdonképpen a B oszlop érvényesítésében szerettem volna összehozni az INDIREKT és az FKERES függvényt, de nem engedte.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
sztanozs
veterán
válasz Melorin #35177 üzenetére
Kód:
=OFFSET(C1,MATCH(A24,$A$1:$A$21,0)+MATCH(B24,OFFSET($B$1:$B$21,MATCH(A24,$A$1:$A$21,0)-1,0,ROWS($B$1:$B$21)-MATCH(A24,$A$1:$A$21,0)+1,1),0)-2,0)
Esetleg módosítandó értékek:
C1 - ár oszlop első sora
$A$1:$A$21 - megnevezés oszlop
$B$1:$B$21 - méret oszlop
A24 - keresési felétel - megnevezés
B24 - keresési felétel - méret(persze a no price értékekkel nem fog tudni túl sok mindent kezdeni)
[ Szerkesztve ]
JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...
-
Delila_1
veterán
válasz Melorin #17618 üzenetére
Így add meg a feltételt:
=ÉS($A1>DÁTUM(2013;3;2);$A1<DÁTUM(2013;4;3))Az A helyett $A-t írj, mert a következő oszlopban már a B oszlopban figyeli a feltételt, ha nem rögzíted a $ jellel az oszlopot.
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
válasz Melorin #17583 üzenetére
A napok formázásában a B oszlophoz adnék egy új feltételt az ünnepnapokra.
A füzetben valahol felsorolnám az évben előforduló ünnepek dátumait, és Ünnepek névvel látnám el a tartományt.
A feltétel képlete =HOL.VAN(B1;Ünnepek;0)
Ez lesz a 3. feltétel.A hét.napja oszlopra sincs szükség.
a felt. formázás képletei
1. =HÉT.NAPJA(B1;2)=6
2. =HÉT.NAPJA(B1;2)=7[ 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.
-
Delila_1
veterán
válasz Melorin #17583 üzenetére
A helyedben az A oszlopra adnék egy feltételes formázást.
=HÓNAP(A2)=HÓNAP(A1)
a karakter színe legyen azonos a háttér színével.Még jobb, ha eleve azonos a karakter színe a háttérével, a képlet pedig
=hónap(a2)>hónap(a1)
Itt látható színt adsz a karakternek, és egy felső szegélyt a cellának.[ 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.
-
Delila_1
veterán
válasz Melorin #17579 üzenetére
Egyszerűbben is lehet. Mivel a B oszlopban teljes dátum van, csak a formázás miatt látszik a nap elnevezése, az A1 lehet =B1, a formátummal pedig a hónap nevét jeleníted 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.
-
Mutt
senior tag
válasz Melorin #17567 üzenetére
Hello,
De józan ésszel és gyakorlatilag is 12 nem?
Nem, mert csak 2013.09.01-én tellik el igazán 12 hónap. Aug. 31-én csak 12 hónap -1 nap + aktuális idő, vagyis aznap délben 11,98387 hónap tellik el.
Megoldás, hogy a végdátumhoz előbb adjál egyet és úgy számold a hónapokat.
üdv.
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Melorin
addikt
válasz Melorin #17578 üzenetére
Eljutottam valahová, remélem nem zsákutcába.
Készítettem egy listát képletekkel, ami egy másik lapon megadott "Kezdő dátum" alapján a következő 11 (összesen 12) hónapot kiírja.
Ezenkívül kiírattam, hogy hány napos az adott hónap, ezt a "hónap.utolsó.nap" képlettel oldottam meg. Ez azért kellett, hogy "OFSZET" képletet tudjak használni.Az OFSZET-tel pedig csoportokra osztottam a dátumokat, így az adott hónap napjainak a száma alapján minden dátum a maga kis hónapjához tartozik.
Itt egy kép róla:Már csak az a kérdés, hogy az általam létrehozott dinamikus táblázatokat hogy tudnám felhasználni az előzőleg belinkelt formához hasonlóan?!
-
Delila_1
veterán
válasz Melorin #17572 üzenetére
F1 szövege "Kezdő dátum", F2-é "Utolsó dátum"
A két dátumot a G1-be és G2-be írd be.B2 -> =$G$1
B3 -> =B2+1 ezt lemásolod, ameddig kell. A B oszlop formátuma nnnn
C2 -> =HÉT.NAPJA(B2;2) másold
D2 -> =HA(B2=$G$1;$F$1;HA(B2=$G$2;$F$2;""))Úgy látom, a B oszlop feltételes formátumát tudod, a D-é =VAGY(D2=$F$1;D2=$F$2)
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
lappy
őstag
válasz Melorin #17551 üzenetére
Szia!
Ha csak a hónap végén szeretnéd összesítve megkapni a félórákat akkor percben átszámolva/30 al megkapod az "egész" fél órákat és mellette egy segédoszlopban pedig a maradék fgv.-el k lehet számolni mennyi maradt még.
Ha minden egyes időponthoz akarod ezt megtenni akkor hasonlóan kell eljárni csak minden egyes időhöz kell a képlet.Bámulatos hol tart már a tudomány!
-
Mutt
senior tag
válasz Melorin #17529 üzenetére
Hello,
Delila_1 és m.zmrzlina megoldása tökéletes.
Esetleg ha nem akarsz az FKERES-nek segédtáblát, akkor az értékeket a képletben is megadhatod:
=FKERES(I20;{10\"Bukta";20\"Megfelelt";30\"Közepes";40\"Jó";50\"Kitűnő"};2;1)A {} jelek között van a "segédtáblád". Pontosvesszővel a sorokat adod meg, backslash-el pedig az oszlopokat sorolod.
Egy alternatívát is hadd adjak:
=VÁLASZT(INT(I20/10);"Bukta";"Megfelelt";"Közepes";"Jó";"Kitűnő")A VÁLASZT (CHOOSE) függvény első paramétere egy szám (1,2,3 stb.),a többi pedig egy indexelt lista, amelyből a számban megadottat adja vissza.
Az INT(I20/10) az I20 cellában lévő szám tízes-helyiértékén lévő számot adja vissza, pl. 31 -> 3 A függvény pedig a harmadik értéket ("Közepes") adja vissza.
üdv.
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
m.zmrzlina
senior tag
válasz Melorin #17536 üzenetére
Mert Delila válaszában az FKERES() utolsó argumentuma 1 ami azt jelenti, hogy a függvény ha nem találja a keresett értéket akkor beéri az ahhoz legközelebbi értékkel. Ha ezt kicseréled 0-ra (ekkor a fv pontos egyezőséget keres) akkor azokra a számokra ami nincs megadva a segédtáblában #HIÁNYZIK eredményt fog adni.
Ha ezt el szeretnéd kerülni akkor Delila képletét módosítsd így:
Excel2007-2010 esetén
=HAHIBA(FKERES(I20;J20:K23;2;1);"")Korábbi verziók esetén:
=HA(HIBÁS(FKERES(I20;J20:K23;2;1);"";FKERES(I20;J20:K23;2;1))Talán nem írtam el.
Így a képlet hiba esetén üres cellát fog adni.
[ Szerkesztve ]
-
Delila_1
veterán
válasz Melorin #17529 üzenetére
Összeállítasz egy kis segédtáblát. Első oszlopba a tartományok alsó értéke (31, 41, 51), melléjük a számnak megfelelő minősítő szöveg (közepes, jó, kitűnő) kerüljön. Legyen ez a tartomány a példában a J20:K22.
Az E24 képlete =FKERES(I20;J20:K23;2;1)Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Caipi
tag
válasz Melorin #17529 üzenetére
Ezt egy többszörösen összetett HA() függvénnyel tudod megtenni, ahol a hamis ágban kezdődik a következő HA() függvény.
+HA(ÉS(I20>30;I20<40);"Közepes";HA(ÉS(I20>40;I20<50);"Jó";HA(I20>50;"Kitűnő";"")))
Bár, javaslom, hogy tedd bele, hogy mi legyen, ha az érték pont megegyezik a 30,40,50-el, mivel így most ezekre nem számol semmit.Szerk: Most, ha a függvény olyan értéket talál, ami nem illik a képletekbe, üresen hagyja a cellát.
És ez abba a cellába megy, ahol szeretnék ezeket a kategóriákat kiíratni. (Most olvastam még1x el, amit írtál)[ Szerkesztve ]
Új hozzászólás Aktív témák
- Porszívók - akkus és klasszikus vezetékes
- Samsung Galaxy Felhasználók OFF topicja
- Mibe tegyem a megtakarításaimat?
- Nintendo Switch 2, vagy amit akartok (találgatós topik most még)
- One otthoni szolgáltatások (TV, internet, telefon)
- LEGO klub
- Fejhallgató erősítő és DAC topik
- SSD kibeszélő
- iPhone topik
- ThinkPad (NEM IdeaPad)
- További aktív témák...