Az „Excel” fórum célja, hogy keretet adjon az Excel felhasználók széles táborának tapasztalataik megosztására, és lehetőséget a segítséget kérőknek. Az alábbi összefoglaló azért készült, hogy segítse a helyes kérdésfeltevést.
– Írd le szabatosan a problémát. Úgy fogalmazz, hogy ne csak te magad, de a szakértő is megértse, mire szeretnél választ kapni.
– Írd le, hogy milyen verziójú Excellel dolgozol. (Vagy ha nem – ill. nem csak – Excel, akkor micsoda?)
– Írd le, hogy milyen úton indultál el, és hol akadtál el rajta.
– A kérdés megértése szempontjából sokat segíthet, ha feltölteszt egy képet, amin látszik, hogy mit szeretnél, vagy illusztrálja azt.
– Még jobb, ha feltöltesz egy minta munkafüzetet valahová (pl. data.hu). Feltöltés előtt távolítsd el belőle a nem publikus adatokat.
– Ha a feladat jellege olyan, célszerű az "előtte" és "utána" állapotokat bemutatni. (Miből kellene csinálni mit?)
– Ha VBA kódon kell javítani, másold be a releváns kódrészt. Rövid kód mehet hozzászólásba, hosszú kód inkább ide: http://pastebin.com/
– Ha valami nem úgy működik, ahogy kellene, add meg a rendellenes viselkedés jellemzőit, a hibaüzenetet, és a hibát okozó programsort.
Nekem egy egyszerű problémám lenne, de nem tudom megoldani.
Csináltam egy makrót ami működik is, de azt szeretném elérni, hogy ha mondjuk az A1 cella üres akkor nem csináljon semmit. Előre is köszönöm a megoldást.
De a legjobb megoldás szerintem felhasználói függvényt csinálni ebből a makró-programból. Így úgy kezelhető mint bármely excel függvény, az argumentumaiban adható meg a keresendő sorszám, oszlopszám, a vizsgálandó tartomány.
Lehet ezt úgy is átírni, hogy bizonyos cellákból vegye a szükséges bemeneti adatokat, ne kérdezze meg, és egy nyomógombot hozzárendelni a számolás indítását.
Köszi a fáradságos munkát, de sajnos ez így nem jó. Külső felhasználói beavatkozás nélkül kell megoldani. ha esetleg arra van vmi ötleted, akkor azt szívsen veszem, ha nem, akkor azért köszi mindent!
Kösz, ennyi. Jövök egy sörrel neked. Én ide-oda rakosgattam a While Trim$(ActiveCell.Value) <> "" sort, de eszembe nem jutott, hogy betegyek a Wend elé egy Select-et. köszönöm.
Így ránézésre az lehet a gond, hogy nem korrekt az aktiv cella megadása a vizsgálatnál. Kérdés: mi az aktiv cella éppen?
Korábban írtad, hogy a C oszlopra vizsgálja, van -e benne valami, de itt a ciklusban nincs jól kiválasztva a C következő cellája a vizsgálat előtt. Azaz a ciklus végén a léptetés után a wend előtt kéne egy cells(i,3).select. Én nem tudom tesztelni jól, mert nincs tesztadatom, és nem néztem meg jobban mit cisnál tulajdonképpen, de szerintem ez a gond.
Carlos, méág tudnál ebben segíteni? Átírtam ahogy nálam kell, de végtelen ciklusba keveredik. Elvileg akkor kéne megállnia, amikor már nem talál értéket a "C" oszlopban Gondolom, hogy a While Trim$(ActiveCell.Value) <> "" sorral van a gond, de mi?
Sub BeIr()
Dim i As Long
i = 3 Cells(i, 3).Select While Trim$(ActiveCell.Value) <> ""
Cells(i, 3).Copy Range("M2").PasteSpecial Range("F2").Copy Cells(i, 6).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False i = i + 1 Wend
Dim Szam As Long Dim Oszlop As Long Dim i As Integer Dim Hol() As Long Dim k As Integer Dim t As Integer Dim Osszeg As Integer Dim Eredmenycella As String On Error GoTo hiba
Szam = Val(InputBox("Kérem adja meg a keresendő számot!", "Összeadó", "10211")) Oszlop = Val(InputBox("Kérem adja meg az utolsó oszlop számát!", "Összeadó", "4")) Eredmenycella = InputBox("Ide kérem az eredményt", "Összeadó", "A10") Cells(1, 1).Select i = 1 While Trim$(ActiveCell.Value) <> "" And IsNumeric((ActiveCell.Value)) ReDim Preserve Hol(1 To i) Hol(i) = 0 If Szam = Val(ActiveCell.Value) Then Hol(i) = 1 End If i = i + 1 Cells(i, 1).Select Wend
For k = 1 To UBound(Hol) If Hol(k) = 1 Then For t = 2 To Oszlop Cells(k, t).Select Osszeg = Osszeg + Val(ActiveCell.Value) Next t End If Next k Range(Eredmenycella).Select ActiveCell.Value = Osszeg Exit Sub hiba:
A pivot táblához nem értek (nagyon), de nem is igazán megoldás.
Én a HA függvénybe ágyazott SZUM és FKERES fügvényekkel próbálkoztam. Nem igazán jött össze, mert mindig 1 lett a végeredmény. Igazából kezd megörjíteni, hogy egy nem túl nehéz feladatot ilyen bonyolultan lehet megadni az EXCEL-ben, de egy tömp mátrix determinánsát pillanatok allatt kiszámol...
Az első kép a lista, a második az űrlap. Így talán érthetőbb, hogy mit szeretnék. Az űrlapra jó lenne a szokásos űrlap vezérlő, amivel léptetni lehet a rekordokat.
Úgy szeretném megoldani, hogy 1.0-s userek is használhassák;)
Tehát van két munkalapom, az egyiken egy szép kinézetű űrlap, amibe beírhatja az adatokat, a másikban pedig egy lista, ami töltődik az űrlapból. Az űrlap funkció nem rossz, de azt mindig be kell kapcsolni, valahányszor megnyitjuk a doksit és ki kell jelölni a listát hozzá.
ha jól értem, akkor csak simán "=" jellel kezdve át kell indexelned egyik munkalapról a másikra. (A feltöltendő munkalap celláit hivatkozod ott, ahová be kell vinni az adatokat.
Hogyan lehet megoldani azt, hogyha létrehozok egy saját készítésű űrlapot (pontosabban készítek egy sémát, amin adatokat lehet bevinni) és az töltene egy másik munkalapon egy listát?
Sziasztok!
Segítségre lenne szükségem. Keresek egy függvényt az alábbi feladatra. Aki tudja a megoldást, kérem írja meg. Fontos lenne.
A megoldandó feladat:
Vegyünk egy táblázatot (A1:F4).A B C D E F1 10211 1 1 1 1
2 10212 1 1 1 1
3 10211 1 1
4 10213 1 1 1
Amire nem tudok rájönni. Vegyünk egy cellát valahol a munkalapon, amiben a megoldást majd kiíratjuk. Azt az utasítást/függvényt szeretném hozzárendelni, hogy: egy általunk megadott azonosító számot (A oszlop) keressen meg, és az általunk megadott oszlopokig adja össze a benne található számokat, de ha a keresett szám többször is előfordul (10211) ne okozzon neki problémát.
A példa kifejtése: Vegyük példának a 10211 számot. Kerestessük meg a táblázatban, ahol megtalálja, ott B,C,D oszlopban található számokat adjuk össze. Mivel a 10211 szám kétszer is előfordul, így ebben a 2 sorban található számokat adja össze, de csak a B,C,D oszlopban!!!
Így az eredmény 3 lesz.
A segítséget előre is köszönöm!
Sziasztok!
Segítségre lenne szükségem. Keresek egy függvényt az alábbi feladatra. Aki tudja a megoldást, kérem írja meg. Fontos lenne.
A megoldandó feladat:
Vegyünk egy táblázatot (A1:F4).A B C D E F1 10211 1 1 1 1
2 10212 1 1 1 1
3 10211 1 1
4 10213 1 1 1
Amire nem tudok rájönni. Vegyünk egy cellát valahol a munkalapon, amiben a megoldást majd kiíratjuk. Azt az utasítást/függvényt szeretném hozzárendelni, hogy: egy általunk megadott azonosító számot (A oszlop) keressen meg, és az általunk megadott oszlopokig adja össze a benne található számokat, de ha a keresett szám többször is előfordul (10211) ne okozzon neki problémát.
A példa kifejtése: Vegyük példának a 10211 számot. Kerestessük meg a táblázatban, ahol megtalálja, ott B,C,D oszlopban található számokat adjuk össze. Mivel a 10211 szám kétszer is előfordul, így ebben a 2 sorban található számokat adja össze, de csak a B,C,D oszlopban!!!
Így az eredmény 3 lesz.
A segítséget előre is köszönöm!
Használható range-ben is a cells, így tartomány is megadható vele, pl. A1:C5-ös tartománnyal csinélunk valamit, és a számok helyett persze futó változókat is megadhatunk:
Csak egy ötlet a megoldáshoz, ha jól értem ilyen jellegű a probléma:
Itt az első oszlop celláin megy végig, amíg nem talál üreset, és átmásolja szomszédos B cellába. Egyéb feltételeket is lehetne vizsgálni, pl. csak akkor álljon le ha n darab üres ceelát talált, vagy az elején hagyja ki az üres cellákat.
dim i as long
i = 1 Cells(i, 1).Select While Trim$(ActiveCell.Value) <> ""
Cells(i, 1).Select Cells(i, 1).Copy Cells(i, 2).PasteSpecial i = i + 1 Wend
Range("C4").Select és Range("F4").Select mindig 1-el nő egész 50-ig - de még jobb ha addig megy, amig talál a "C" oszlopban értéket. Hogy lehetne ezt ciklusba foglalni, hogy ne kelljen egyesével zongorázni?
Sziasztok! Sűrgős segítségre lenne szükségem, az excel makro programozásban. A feladalt a következő: Makrorögzítéssel kiszámoltatok vmit, egy bizonyos területre. De ezt hogyan tudom végtelenítetni? Azaz, egészen konkrétan: Sub szamolj() Range("D4").Select ActiveCell.FormulaR1C1 = "=RC[-1]-RC[-2]" Range("D4").Select Selection.AutoFill Destination:=Range("D4:D18"), Type:=xlFillDefault Range("D4:D18").Select End Sub Tehát d4-tő d18ig van egy kivonás. Namost azt tudom, hogy ebben a kódban kéne valamit átírnom, ahhoz, hogy ha én a 19, 20,... sorokat feltöltöm adattal, akkor automatikusan végezze el oda is a számolásokat, egészen egy üres sorig. (a továbbiakban a makró újraindítása nélkül(?) ha további sorokba írtunk folyamatosan adatokat, akkor azt ő az előző sorban lévő képlet alapján folytonosan számolta. ) De mit és mire kell kicserélni??? Vmi olyan dereng, mintha ebben a sorban írtunk volna át vmit.: Selection.AutoFill Destination:=Range("E4:E18"), Type:=xlFillDefault Nincs vmi joker karakter, amit a 18 helyére beírva esetleg nem határozza meg a végét? Köszi a segítséget!
Most néztem az emailes kérdést: szóval a nyomógomb helyének változtatása: a nyomógomb fölé menve az egérrel , a jobb gombbal kattintva, ekkor előjön egy menü is, de közben meg is jelenik a nyomógomb körül egy másfajta keret ekkor, lehet elhúzni a gombot a keret fölé állva és lenyomva tartva a bal egérgombot..