Excel kérdés
Jelentkezz be a hozzászóláshoz.
A kritérium tábla elsõ esetben: R4-be az O oszlop címe, R5-be 1, S4-be az M oszlop címe, S5-be n. A szûrõ párbeszéd dobozában a Szûrõtartomány legyen R4:S5.
A második szûrésnél csak az R4:R5 tartományt kell módosítanod, R4-be jön a P oszlop címe, R5-be =WEEKNUM(MA();2).
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
A leírásodban N az utolsó oszlop, ezután tettem be még kettõt. Persze ezen változtatsz majd, ha nem felel meg.
Feltételezve, hogy az M oszlopban jelölöd valami módon, hogy ki van egyenlítve a tartozás (errõl nem írtál), az O2 képlete: =HA(ÉS(E2<MA()+2;M2="");1;0), a P2-é: =WEEKNUM(E2;2). Az O oszlopban 1 lesz az érték, ha esedékes a fizetés, a P oszlop beírja, hogy az E oszlop dátuma az év hányadik hetére esik.
Az elsõ esetben azokat a tételeket akarod kigyûjteni, ahol a dátum <ma()+2, és nincs kiegyenlítve, holott régebbi a dátum.
Az R4-be beírtam az O1 címét, R5-be 1-et. Ez a kritérium tábla.
R8-ba az A oszlop címe, S8-ba az N-é, T8-ba at I-é, U8-ba a B-é, és V8-ba az E-é, vagyis felsoroltam az oszlopok címét, amikhez az adatokat akarom rendelni.
Kijelöltem az A😛 tartományt az elsõtõl az utolsó sorig, ahol a szûrendõ adatok vannak. Adatok menü, Szûrõ, Irányított szûrõ.
A párbeszéd doboz kiállítása: Más helyre másolja, a Listatartományt automatikusan beírta, Szûrõtartománynak kijelölöd az R4:R5 területet, a Hova másolja rovatban pedig az R8:V8 tartományt. Leokézva R9-tõl megkapod a kért adatokat. Ezeket simán átmásolod egy másik lapra, ahol tovább dolgozol velük.
A második kigyûjtésnél csak a kritérium táblát kell módosítani.
R4-be a P oszlop címe kerül, R5-be =WEEKNUM(MA();2)
Ezeket elvégzed a Vevõk, és a Szállítók lapon is.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
A lényeg, hogy ez is megvan. még 1x köszöi!
Sikerült kiküszöbölni a hibát úgy, hogy a cellába írás
sor elé betettem egy ciklust:
For b = 1 To Len(szov)
If Mid(szov, b, 1) = "," Then szov = Left(szov, b - 1) & "." & Right(szov, Len(szov) - b)
Next
Ha be van állítva az Option Explicit, a b változót is dimenzionálni kell Integerként.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Esedékesség E oszlop.
Segédtáblában rögzíteném a hetet záró dátumot pl. 02.22.
Sub Szum()
Dim ter As Range
Dim CV As Object
Dim szov As String
Set ter = Application.InputBox("Jelöld ki a tartományt", "Tartomány kijelölése", Type:=8)
For Each CV In ter
If CV.Value >= 0 Then
szov = szov & "+" & CV.Value
Else
szov = szov & CV.Value
End If
Next
Cells(15, 1).Formula = "=" & szov
End Sub
A tartomány különálló cellákból is összeállhat. Azt nem szereti, ha az elsõ összeadandó cella értéke negatív.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Köszönöm a segítséget. Sajnos én is idáig jutottam. Vagy szum, vagy string megjelenítés. Nekem igaziból csak az a mûvelet kellene amit excel akkor csinál amikor a te makród futtatása után az A16 cellába kétszer kattintok és fogja magát és felismrei képletként a benne lévõ stringet.
pl: ha az A16 cellában ez +5+6+8-5-6 str volt taláható és kétszer bele kattintok akkor felismeri formátumot és képletet csinál belõle. De nem árulja el, hogy hogyan 😞
Köszi elõre is!
akkor megmarad a tagolás is. ráadásul kitudja copyzni
¥ xfire: kistekila
Sub Szum()
Dim sor, oszlop As Integer
Dim ter As Range
Dim sz As Double
Dim CV As Object
Dim szov As String
Set ter = Application.InputBox(prompt:="Kérem a tartományt", Type:=8)
For Each CV In ter
sz = sz + CV.Value
If CV.Value > 0 Then
szov = szov & "+" & CV.Value
Else
szov = szov & CV.Value
End If
Next
Cells(15, 1) = sz
Cells(16, 1).Formula = szov
End Sub
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Itt egy másik makró, ahova fixen beírhatod az összegzendõ tartományt, ami nálam most A1:B10. Az eredményt az A15 cellába írja ki.
Sub másik()
Dim sz As Double
Dim ter As String
Dim CV As Object
ter = "$A1:$B$10"
For Each CV In Range(ter)
sz = sz + CV.Value
Next
Cells(15, 1) = sz
End Sub
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Sub Szum()
Dim sor, oszlop As Integer
Dim ter As Range
Dim sz As Double
Dim CV As Object
Set ter = Application.InputBox(prompt:="Kérem a tartományt", Type:=8)
For Each CV In ter
sz = sz + CV.Value
Next
MsgBox sz
End Sub
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
A makró bekéri az összegzendõ területet, amit egérrel kijelölve adhatsz meg. Üzenetdobozban kiírja az eredményt (MsgBox sz), de ehelyett adhatsz egy cellacímet, ahova beírja, pl. Range("C30")=sz
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Egy kérdés hátha ....
Készítettem egy makrót, ami egy tömbben lévõ szám értékekekt stringbe összefûz és mûveleti jeleket is tesz elé. pl: str = +45+46-48. Ezt be is illesztem egy cellába.
Egyetlen gond van vele, hogy képletként szeretném használni, de erre nem találtam semmilyen megoldást.
Az a baj hogy látnom kellene, hogy az érték mibõl jön ki és nem elég ha az eredményt kapom meg, így csak stringént tudtam a makróban megoldani.
Jelenleg kiborít, hogy ha bele kattintok a cellába akkor felismeri képletet az excel, de makróból ezt nem tudom megoldani.
Van valakinek ötlete?
Új feladattal bíztak meg a mu.helyemen: vevõ és szállító számlákat kell nyilvántartanom és figyelnem mit mikor kell fizetni v. mikor várható a fizetés. Külön fülön tartom nyilván a szállítókat és a vevõket
A oszlop mindig a cégnév, B a számla száma, N oszlop a bruttó számlaérték; devizanem I oszlop (HUF v. EUR). A segítségetekre lenne szükségem.
KÉRDÉSEK (excel 2003):
Szállítók:
1. egy adott napon esedékes fizetnivalókat hogyan tudom kigyûjtetni automatikusan (a ma elküldendõ fizetnivalók=eddig ki nem fizetettek és a holnap esedékesek MA()+1)
2. e héten esedékesek (ez pillanatnyilag feb.22-ig esedékesek és a ki nem fizetettek)
VÁRT EREDMÉNY- külön fülön: cégnév; összeg(ek), devizanem; szlaszám
cégenként is kellene összesíteni
Vevõ oldalon uez. csak ott mint várhatóként jelenik meg.
A dolgot bonyolítja, hogy van amikor ugyanaz a cég vevõ is meg szállító is (más árut adunk, mint kapunk) ezeket külön kellene vevõként és szálíltóként egymás mellé tenni és a különbözetet egy harmadik oszlopban megmutatni - "szaldó"
Eddig listába írtam a számlákat és egy másik fülön kimuatás varázslóval kínlódtam, de ott a dátumok nem jönnek sorba hogy kipipálhassam (mivel minden egyes új szlámla felvitelekor összekeverednek a dátumok...
Elõre is köszi
Samu
Persze, hogy feltedeted az újabb kérdésedet, azért van a fórum, hogy segítsünk egymásnak.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
A súgóban keress rá az FKERES függvényre, ott megtalálod az utolsó paraméter leírását, jobban, mintha itt leírnám. Az 1 helyett IGAZ paramétert is írhatsz, azonos értékûek.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Az lenne a kérdésem hogy a 2;1 Mit jelent?[=FKERES(A1;F:G;2;1 )]
Még egyszer köszi a gyors választ!
G1-be 1, G2-be 2 ... G5-be 5.
A B1 függvénye: =FKERES(A1;F:G;2;1), ezt másold le az A oszlop adatai mellé.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
És a B oszlopba pedig ki kellene kiírnia az A oszlop mindegyik százalékához hogy az hányas jegy lenne úgy hogy az F És G táblából olvassa ki ezeket!
Ehhez kellene nekem egy függvény(képlet)! Remélem tudtok segíteni elõre is köszi!
pl B1-be azt kellene kiírnia hogy 5.(tehát ötös mert 80 és 100% között van)

Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
A most kapott üres lapra ezt másold be:
Sub Valami()
Range("A1:B1").Select
Selection.Insert Shift:=xlDown
Cells(1) = Cells(3)
Cells(2) = Cells(4)
Cells(3).Select
End Sub
Értelmesebb címet is adhatsz neki 😊
Tegyél ki egy gombot az Ûrlap eszköztárból, és rendeld hozzá a makrót.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$1" And Cells(3) > "" Then
Range("A1:B1").Select
Selection.Insert Shift:=xlDown
Cells(1) = Cells(3)
Cells(2) = Cells(4)
Cells(3).Select
End If
End Sub
Vidd be a C1-be a dátumot, és amint a D1-be is bevitted az értéket, a makró lecsúsztatja az A:B tartományt, és beírja az aktuális adatokat az A1-be és a B1-be, majd a C1-re áll, hogy írhatsd a következõ adatot.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Szeretném ha az ide beírt értékeket, átírná a1,b1-re. Aztán ha új értéket írok a c1-d1 cellákba, akkor ami elõzõleg az a1-b1-ben volt az 1 sorral lejjebb csúsztassa, és az új értéket írja a helyére... Remélem kivitelezhetõ valahogy... Ha nem, akkor egy olyan megoldás is jó ha mindíg a sor végére írja az új értéket. Elõre is köszönöm a segítséget! 😊
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Köszönöm szépen, mûködik is. A cellákat manuálisan színezem az elõtte lévõ oszlopok szûréseibõl. Csak a 3-as piros kód helyett kellett keresnem egy 40-es barackot, hogy látható is legyen a szám.
Még egyszer köszönm szépen a segítséget.
Összeállítod a táblázatot a kép szerint. A G2 és a H2 érvényesítés, a valutanemeket tartalmazzák. Kiválasztod a jelenlegit, és azt, amire át akarod váltani. A makróban egy ciklussal végig haladsz az árakat tartalmazó területeken, és az értékeket felszorzod az I2-vel.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
e6550, HD6670 1GB, 4GB "Minden játék annyit ér, amennyire a játékos tartja!" "Olyan ember nincs aki nem warezol, csak aki nem vallja be." "A warez-ra kifogás nincs, csak magyarázat!" "Nem mindegy!"
e6550, HD6670 1GB, 4GB "Minden játék annyit ér, amennyire a játékos tartja!" "Olyan ember nincs aki nem warezol, csak aki nem vallja be." "A warez-ra kifogás nincs, csak magyarázat!" "Nem mindegy!"
Egy kis segítséget kérnék tõletek Excel (2003) témakörben. Több fórumot bejártam - fõleg külföldi -, de nem tudtam választ kapni egy kisebb problémámra, ami a következõ:
Egy beruházás megtérülési és cash-flow-elemzését készítettem el, kb. 12.000 képlettel (sok-sok összefûzött oldal + n. számú grafikon, kimutatás stb). A rendszer fordít magyarról angolra (ill. németre, franciára -igény szerint) és vissza, a számítások EUR-ban vannak, mert a megrendelõ külföldi. O.K.
Azonban egy kis többlet-igény merült fel a befejezés után: ne csupán EUR-ban, hanem USD-ben, CAD, ill. CHF-ben is tudja váltani (mutatni) a táblákat.
Erre létrehoztam egy árfolyamváltó-lapot, azonban rájöttem, hogy lesz egy kis gond. A származtatott oldalak, illetve cellák átkonvertálása nem akkora gond, ám azokon a lapokon, ahol input adatokat viszünk fel, ezeknél körkörös hivatkozást végez az Excel. Ezt még ki lehet küszöbölni egy-egy oldaltükrözéssel (vagy éppen pl. indirekt() függvénnyel), ám a származtatott cellákat leszámítva is kb. 8.000 képletet kellene átdolgoznom.
Tud valaki egy szép kis makro ötletet adni arra, hogyan lehetne leegyszerûsíteni az életet úgy, hogy a fõlapon kiválasztott pénznemnek megfelelõen (egy oldalon elõre definiált - tehát nem kell on-line update-elni az MS Money Currency-vel - árfolyammal) minden oldalon átváltsa az aktuális EUR összegeket a választott pénznemre?
Minden segítséget nagyon köszönök.
Azóta nem vagyok babonás, amióta egy nyúllábat hordok magammal, amely megóv minden bajtól. http://tandera.hu http://businessmanagement.hu
A jobb oldalon kapott üres lapra másold be:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then 'Itt írd át az 1-et a saját oszlopod sorszámára
If Range(Target.Address).Interior.ColorIndex = 3 Then _
Target.Value = Target.Value * -1
End If
End Sub
A megjelölt sorban írd át az 1-et annyira, ahányadik oszlopodban akarod végrehajtani a cserét.
Egy kis villogás után a beírt szám elé negatív elõjelet tesz.
Ez csak akkor mûködik, ha a cellák hátterét NEM feltételes formázással pirosítottad ki. Ha igen, akkor ismernem kell a feltételt.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Az egynél több feltételre való szûris mûködik. Köszönöm szépen.
A második példával vannak gondjaim, de némi átalakítás után személyemre szabható. Ezt is köszönöm szépen.
Lenne még egy kérdésem, de ez lehet eleve butaság 😊
Lehet-e olyasmit csinálni, hogy ha pl. van egy adott oszlopom, ami teljesen üres és elkezdem felvinni az adatokat, akkor ha elõre megjelöltem mondjuk piros háttérszínnel pár cellát, akkor a bevitt pozitív számokat, a pirosan megjelölt cellákban negatív számként írja be?
e6550, HD6670 1GB, 4GB "Minden játék annyit ér, amennyire a játékos tartja!" "Olyan ember nincs aki nem warezol, csak aki nem vallja be." "A warez-ra kifogás nincs, csak magyarázat!" "Nem mindegy!"
Xubuntu 14.04.5 /WIndows 7 Enterprise/Windows XP professional SP3(némely szoftver inkompatibilis az elöz?vel). :)
ezt hol lehet kikapcsolni? az új excel van nékem....
e6550, HD6670 1GB, 4GB "Minden játék annyit ér, amennyire a játékos tartja!" "Olyan ember nincs aki nem warezol, csak aki nem vallja be." "A warez-ra kifogás nincs, csak magyarázat!" "Nem mindegy!"
Most is csak 1 percre tudtam beugrani megnézni, hogy tudott-e vki segíteni.
Este érek majd csak rá megnézni, hogy jó-e nekem így, de bíztatóan hangzik 😊
Köszönöm szépen a válaszokat.
Az elsõ esetben az A oszlopban számok vannak. Egy másik oszlopban egészen vad feltételeket adhatsz meg. Pl.:
=VAGY(ÉS(MARADÉK(A2;2)=0;MARADÉK(A2;3)=0);A2>350;GYÖK(A2)<10)
IGAZ értéket kapsz, ha az A oszlopban a szám maradéktalanul osztható 2-vel ÉS 3-mal, VAGY a szám nagyobb, mint 350, VAGY a szám gyöke kisebb 10-nél. Minden más esetben HAMIS az érték.
A második esetben szövegek vannak az A-ban, itt a képlet:
=ÉS(A2>"m";BAL(A2;1)<>"t";BAL(A2;2)<>"me";BAL(A2;2)<>"mu")
Itt akkor kapsz IGAZ értéket, ha a hivatkozott szöveg kezdete m, vagy annál nagyobb, de nem "t", ÉS a szöveg kezdete nem "me", ÉS nem "mu". Nem tesz különbséget a kis- és nagybetûk között.
Mindkét esetben a képletet tartalmazó oszlopra kell szûrnöd.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
B2 -> =HA(NEM(SZÁM(A2));1;HA(A2<200;2;HA(A2>300;3;4)))
Ez 1 és 4 közötti értékeket ad. Ezt az oszlopot szûrd. Pl. 4-re szûrve a 200 és 300 közötti értékeket mutatja meg.
2. Egy másik oszlopba:
=ha(feltétel;hivatkozott_cella*-1;hivatkozott_cella)
Program az, ami az adatokat hibaüzenetté konvertálja. Lassú munkához idő kell.
Xubuntu 14.04.5 /WIndows 7 Enterprise/Windows XP professional SP3(némely szoftver inkompatibilis az elöz?vel). :)
megköszönném, ha vki tudna segíteni pár kérdésben (2003-as verzió)
1;
Lehet-e az autószûrõvel (egyedi...) 2-nél több feltételt megadni? Ha igen, hogyan? Ha nem, akkor hogyan lehet máshogyan megoldani?
2;
Meg lehet-e oldani olyasmit, hogy pl. egy adott oszlop elõre megjelölt celláiba a beírt számértékeket negatív számként jelenítse meg, ha igen, akkor hogyan? Pl. a kérdéses oszlop egymás alatt lévõ számai, mondjuk 43,44,49,13,42,20,8,49,stb. És én azt szeretném elérni, hogy mondjuk az elsõ 3 szám -43,-44,-49-két szerepeljen. Ha pl az üres oszlop celláit beszínezném elõre (mert az korábban kiderül már az elõtte lévõ cellák tulajdonságaiból, hogy melyek lesznek azok és azt autószûrõvel leszûrve a kérdéses oszlopot már egyszerûen lehet színezni a megfelelõ helyeken)) és mikor töltöm föl a kérdséses oszlopot, akkor az elõre megjelölt cellákban pozitív helyett negatív számok lennének (akár már a begépelés során is).
Elõre is köszönöm szépen ha vki tud segíteni.
