Kezdőlap › Fórumok › Excel témák › [Resolved] Táblázat kijelölése
- This topic has 14 hozzászólás, 3 résztvevő, and was last updated 4 years, 3 months telt el by horvimi.
-
SzerzőBejegyzés
-
2020-07-31-09:38 #7422
Makró felvevővel elkészítettem életem első makróját, az táblázatot formáztam meg vele. Az egyik első lépés volt a táblázattá alakítás, amit a makró felvevő így fogalmazott meg:
ActiveSheet.ListObjects.Add(xlSrcRange, Range(„$A$10:$J$1000”), , xlYes).Name = _
„Táblázat1″
Csakhogy az a probléma, hogy a makrót olyan táblázatra is rá szeretném engedni, ami nemcsak ezer soros, ha pedig csak 3 soros, akkor meg felesleges 1000 sorral dolgoznia.
Tehát az lenne a kérdés, hogy milyen módon tudom első lépésben megkerestetni a makróval a táblázat utolsó celláját, hogy ez alapján tudja definiálni a Táblázat 1-et. Fixen az A10 az első adatcella és a J oszlop az utolsó oszlop, valamint a J oszlop minden cellája kitöltött, ha nem adattal, akkor nullával. Csatolok egy mintát.
Maga a probléma is érdekelne, hogy van-e olyan függvény, ami megkeresi az utolsó adatcellát egy táblázatban, ami egy képlethivatkozásban lehet használni. Fkeres ” ” nem jó, mert a táblázat más oszlopaiban van ki nem töltött cella.
Előre is köszönöm a segítséget, nagy kincsek vagytok.2020-07-31-09:43 #7424ez a táblázat, a könyvelő program xls-ben adja ki magából.
A makrót nem engedi feltölteni, esetleg ha adtok tippet, hogy milyen módon alakítsam át, hogy feltölthető legyen.Attachments:
You must be logged in to view attached files.2020-07-31-09:59 #7428Szia!
Makrós fájlokat ZIP-ben lehet feltölteni.
Ha a táblázat mindig az A10-ben kezdődik, akkor elég megadnod az A10 körülötti tartományt, amit így kell:
ActiveSheet.ListObjects.Add(xlSrcRange, Range("A10").CurrentRegion, , xlYes).Name = "Táblázat1"
Ha ezeket az alapokat meg szeretnéd tanulni, ajánlom figyelmedbe a makrók alapjait bemutató videó tanfolyamunkat:
https://videotanfolyam.pentaschool.hu/Imre
- A hozzászólás módosításra került: 4 years, 3 months telt el-horvimi.
2020-07-31-10:31 #7437Köszönöm, sikerült beillesztenem.
A makrómban van olyan rész is, amikor csak a J oszlopban dolgozik , ami most így kezdődik:
Range(„J12:J1000”).SelectItt működne egy olyan megoldás a te megoldásod mintájára, hogy
Range(„J12”).CurrentColumn).Select ?Vagy ilyen nincs?
Megnézem ezt a tanfolyamot, az Excel lett az új hobbim (komolyan).
Üdv: Erika2020-07-31-10:41 #7439Még az előző megoldást beillesztve (figyeltem, hogy a windows jól kezeli-e a vágólapot) lefuttattam a makrót és azt írja ki, hogy Syntax error. Próbáltam jól átmásolni, de lehet, hogy még máshol is kell javítani, mert a szintaxist megzavarta máshol a csere? Zip-be tettem a makrót és csatoltam a képernyőfotóval együtt.
Attachments:
You must be logged in to view attached files.2020-07-31-10:42 #7441és a képernyőfotó a már megváltoztatott makróról
Attachments:
You must be logged in to view attached files.2020-07-31-10:59 #7443Szia Erika!
A J10:Jalsó cella táblázattá alakítása:
ActiveSheet.ListObjects.Add(xlSrcRange, Range("J10:J" & Range("J" & Rows.Count).End(xlUp).Row)).Name = "Táblázat1"
Üdv,
Kati2020-07-31-11:12 #7445Ja, bocs!
A CurrentRegion után nem kell a zárójel bezárás.
Javítottam fent.CurrentColumn nincsen 🙂
Ha már sikerült táblázattá alakítani, akkor a J oszlopot én már név szerint használnám, mert akkor nem számít meddig tart.Range("Táblázat1[oszlopnév]").Select
Nézd meg azt a tanfolyamot, indulásnak sokat segítene.
Van benne utolsó sor megállapítás is különböző esetekre.Imre
2020-07-31-11:12 #7446Kedves Kati!
Az nem gond, hogy ez az oszlop már a makró elején definiált Táblázat1 része? Vagy akkor csak simán Táblázat2-nek kell nevezni és a Táblázat2 a Táblázat1 része?
Bocsánat, ha triviálist kérdezek, még most kezdem ezt az egészet.2020-07-31-11:29 #7448Nem tudtam, hogy egy meglévő táblázat egy részére akarsz hivatkozni.
Imre 11:12 válaszát nézd meg!2020-07-31-17:18 #7449Imre megoldása azért nem jó nekem, mert nem a teljes J oszlopot szeretném kijelölni és Refillel kitölteni. A J12-ben SUM képlet szerepel és ezt szeretném lefelé másolni végig, a J1 és J11 közötti mezők nem szabad, hogy ebbe belekerüljenek.
Van-e olyan definiálási mód, ami j12-től lefelé meghatározza a teljes J oszlopot, amíg csak van benne adat?2020-07-31-17:40 #7450Hát, itt már elvi kérdéseket kell feszegetni.
Elsőként, táblázaton belül nem lehet másik táblázat.
Második, hogy táblázattá alakított tartományban egy oszlop elvileg csak azonos típusú adatokat tartalmazhat.
Fokozottan igaz ez a képletekre.
Bármely cellába beírsz egy képletet, azt kitölti a teljes oszlopra automatikusan. Nem kell Fill.Nem tudom, hogy mit tartalmaz ez a tábla, mire használod, stb.., de ha egy oszlopban keverednek az értékek és a képletek, az az álmos könyv szerint nem szerencsés.
Érdemesebb ketté venni vagy a képletet egy külön oszlopba tenni.Természetesen van makró kód, ami kijelöl egy oszlopot egy konkrét cellától a végéig.
Leírom neked, de szerintem még nagyon sokszor meg fogsz akadni.Range(Range("J12"),Range("J12").End(xlDown)).Select
Ha felveszel egy makrót, ahol a J12-re kattintasz, majd nyomsz egy Ctrl-Shift-Lenyíl kombinációt, akkor valami hasonlót fogsz kapni. nem ugyanezt, de lényegében igen.
Ha az Excel lenne a hobbid, akkor alaposan meg kell ismerned a lehetőségeit, és utána azt makrózni.
Épp holnap indul egy délutános Excel haladó kurzus távoktatásban. Nem érdekel? 🙂
https://excel-bazis.hu/tanfolyam/excel-haladoknakSok mindent megtudhatsz a táblázatokról is.
2020-07-31-18:04 #7451Megnéztem a kódot, amit a PERSONAL-ban küldtél.
Ha jól látom, akkor a 9-es sorban van egy aggregáció a táblázat oszlopaira.
A 10-es sorban van a táblázat fejléce.
A 11-es sorban nem tudom mi van, az nem derül ki, gondolom az adatok részeként jön valahonnan, de teszel bele egy feltételes formázást az egyedi elemekre.
A 12. sortól vannak az adatok ha jól gondolom.Gondold át, hogy a 11-es sornak muszáj-e a táblázaton belül lennie.
Még egy javaslat: Az aggregációs sor és a táblázat fejléce között célszerű egy üres sort hagyni. Akármilyen kicsi magasságúra állíthatod, de nem szerencsés közvetlenül a fejléc fölé tenni.Imre
2020-07-31-22:40 #7452NAGYON-NAGYON KÖSZÖNÖM!!!
Az útmutatások alapján mindent sikerült megoldani.
Sajnos most nem tudok csatlakozni a Excel haladóhoz, pedig semmi mást nem tennék szívesebben. De el fog jönni az ideje, biztos vagyok benne! Köszi még egyszer!!!!2020-08-01-10:55 #7453Mi is örülünk 🙂
-
SzerzőBejegyzés
- Be kell jelentkezni a hozzászóláshoz.