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.
Egy makrós fájlban a sendkeys paranccsal külső programba írok át adatokat, illetve onnan másolok vissza az Excelbe.
Az átmásolás, illetve az adott cellába való beillesztés évek óta remekül működött, de most a "SendKeys "^V"" (Ctrl+V) nem csinál semmit.
Mivel tudnám helyettesíteni?
A gond, hogy paste speciallal beilleszti, ám egyéb makró funkció nem működik. A cellába való beíráskor (másoláskor) egy mappa létrehozó makrónak kellene elindulni, de a paste special az nem indítja el, pedig a "SendKeys "^V"" elindította.
(Eseményvezérelt) Makróval oldható meg. Pl. Jobb egérgomb kattintás után:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 1 Then 'ide annak az oszlopnak a számát írd, ahol a nevek vannak Application.EnableEvents = False Select Case Target.Value ' a nevek alapján váltunk munkalapot Case "elso nev" Sheets(elso).Activate Case "masodik nev" Sheets(masodik).Activate End Select Application.EnableEvents = True End If Cancel = True End Sub
A Case értékeket addig folytasd, amíg neved van.
Ha túl sok név lenne, akkor egyszerűbben is meg lehet csinálni, akkor kell hozzá egy kis táblázat, hogy melyik névhez melyik munkalap tartozik és csak a táblázatban kell megkeresni a névhez a munkalapot:
Adott egy excel fájl, amiben felhasználói adatok vannak, mindenkinek külön lapja van (mert egyedi adatokat is kell feljegyezni) Ha infó kell, akkor egy összesítő lapon kell kiválasztani a neveket, majd kiválasztás után megjelennek a kívánt adatok. (ezek csak sorok)
Azt szeretném elérni, hogy ha kiválasztok 1 (vagy több) nevet,az összesítő lapon, akkor valamilyen módon egy kattintással oda tudjak ugrani a kiválasztott user egyéni lapjára. A legjobb lenne, ha a nevére kattintva, de az is tökéletesen jó, ha mondjuk egy külön lapon valahogy eltárolható a link és fkeres-el a neve mellé/elé teszem egy cellába. vagy bármi :) (makró nélkül).
sajnos sehogy sem tudom megoldani, nektek van ötletetek ? nagyon köszönöm!
Szia, bocs a megkésett válaszért, de csak most jutottam hozzá, hogy teszteljem a megoldást. A helyzet az, hogy bár nem voltak egyesítve a cellák, de mivel töröltem a közbeeső dátumokat, így azoknak a tartalma üres lett. Ezért viselkedtek úgy, mintha összevontak lennének.
Miután betettem egy-egy szóközt a hétfőt követő cellákba, megszűnt a középre pozicionálás.
Egyébként a tengelyfelirat formázását próbáltam, de azzal nem találtam megoldást. Talán azért, mert a tengelyfeliratot két oszlop határozza meg.
Arra ügyelj, hogy az Összegző lap mindig az utolsó helyen álljon.
A makrót bill.kombinációhoz rendelheted: Alt+F8-cal behívod a makró(ka)t, kijelölöd az Osszegzes nevűt, majd az Egyebekre kattintva megadsz egy betűt a Ctrl+ -hoz.
Örömmel venném a makrót is hozzá, mert ez rendszeres feladat lesz. Ha a jövőre nézve esetleg azt is figyelembe vennéd a makrónál, hogy több munkalap is lehet, nem csak a mostani kettő. Nagyon köszönöm.
De a munka1-en cseréld fel az oszlopokat - tehát a számokat tartalmazó oszlop legyen az első, mert ebből fog keresni a függvény, majd visszaadni az általad megadott oszlopból az eredményt.
Az alábbiakhoz szeretnék segítséget kérni. (Érteni nem értek az excelhez, csak használom.)
Adott két excel munkafüzet. Mindkettő A oszlopában szöveg, B oszlopában szám szerepel. A munkafüzetek adatai eltérő számú sorból állnak. Munkafüzet1 (B) szám oszlopában szereplő számok nagy része megegyezik Munkafüzet2 (B) szám oszlopában szereplő számok egy részével.
A feladat az volna, hogy egy külön munkalapfülön az összes egyező érték megjelenjen a hozzá tartozó szöveggel együtt.
Példa:
munka1
Munkafüzet1 Munkafüzet2
A oszlop B oszlop A oszlop B oszlop
alma 503 körte 225
dinnye 1144 barack 888
hagyma 225 szilva 503
málna 888 eper 777
.... ...
.... ...
Végeredmény (kellene):
Munkafüzet1
munka2
A oszlop B oszlop C oszlop
225 hagyma körte
503 alma szilva
888 málna barack
...
...
Remélem így érthető. Segítségeteket előre is köszönöm.