-
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
Mr.Scofield
#23663
üzenetére
Szia!
Egyszerű: azért, mert torlo makródban cellánként törölsz és alapesetben ez azzal jár együtt,hogy a törölt cella helyére becsúszik a következő cella, jelen esetben az A helyére a B, a B helyére a C, de ugye Te utána az A-cellát már nem törlöd mégegyszer, csak a B-t és ilyenmódon a C törlése már teljesen felesleges is, mert abban már régen nincs is adat. (Próbáld ki manuális törléssel, hogy lásd, miről is beszélek.)
Megoldás: töröld egyben a 3 cellát, vagy töröld 3 x az A oszlopban levő cellát.
Egyben törlés: Sheets("Adatok").Range(Sheets("adatok").Cells(sorszam, "A"), Sheets("adatok").Cells(sorszam, "C")).DeleteDe még jobb szerintem, ha csak a tartalmat törlöd: cells(sorszam,"A").clearcontents, de ezt is csinálhatod egyszerre mindhárom cellán.
Üdv.
-
Delila_1
veterán
válasz
Mr.Scofield
#23648
üzenetére
-
Mr.Scofield
újonc
válasz
Mr.Scofield
#23647
üzenetére
Már megvan.

-
Fferi50
Topikgazda
válasz
Mr.Scofield
#23641
üzenetére
Szia!
Akkor ez így mégis makró lesz a Userformhoz. és a törlést is meg kell valósítanod.
Üdv.
-
Delila_1
veterán
válasz
Mr.Scofield
#23641
üzenetére
3 féle választ kaptál, amiből már az újonnan feltett két gomb makróját kikövetkeztetheted.
Módosításnál a textboxok (cellák?) értékeit beviszed az adatokat tartalmazó cellákba
Sheets("Munka1"). Range("A" & sor)=TextBox1Törlésnél sheets("Munka1").Rows(sor).Delete Shift:=xlUp
-
Fferi50
Topikgazda
válasz
Mr.Scofield
#23637
üzenetére
Szia!
Még egy lehetőség makró nélkül:
A második munkalapnak azt a celláját, ahová a nevet szeretnéd látni, kijelölöd, majd az Adatok- érvényesítés menüpont alatt az érvényesítés legyen lista, a forrása pedig az első munkalap név oszlopának értékes cellái. (még jobb, ha ezt a cellatartományt elnevezed és csak a nevet írod be).
A két másik adatot tartalmazó cellát fkeres függvénnyel tudod kitölteni.
Ennek is az a hátránya, hogy magától nem fordul vissza. Viszont a listát akár egészében is láthatod a kiválasztás során.Üdv.
-
Delila_1
veterán
válasz
Mr.Scofield
#23637
üzenetére
Harmadik megoldás, nem userform, de nem is makró nélkül.
Nem írtad az Excel verzióját, ezért 2003-ban írtam meg, azt mindegyik érti.A Kiírás lapon a kitöltendő mezők nem textboxok, csak formázott cellák.
-
slashing
senior tag
válasz
Mr.Scofield
#23637
üzenetére
Makró nélkül is majdnem meglehet csinálni csak nem teljesenolyan lesz olyan mint ahogy leírtad. (elején végén nem fog visszaugrani)
A második lapra beszúrsz egy léptetőnyílt űrlapvezérlő elemet. Cellacsatolásnak megadsz egy olyan cellát amit biztosan nem fogsz használni kezdőértéknek meg 1-et adsz.
Oda ahova nevet szeretnéd megjeleníteni oda meg csinálsz egy indirekt hivatkozást:
=INDIREKT("Munka1!A"&F19)
Ebben a képletben az F19 az a cella amit megadsz a léptetőnyíl cellacsatolásának. Így az alapértéke a celládnak a Munka1 A1 lesz a nyilakkal lépkedve meg változik a Név. A másik két oszlopra meg elég egy sima fkeres függvény is...
valahogy így: [link]
-
Fferi50
Topikgazda
válasz
Mr.Scofield
#23637
üzenetére
Szia!
A formot már megvan? Akkor tegyél fel legalább egy képet róla, hogy lehessen látni, mi van benne.
A makró elvi vázlata:
a rekordokat számolja egy változó
amikor megjeleníted a userformot (activate exemény), a rekordszámláló változó legyen egy, utána meghívsz egy olyan eljárást amelyben kitöltöd az első szövegmezőt az A oszlop rekordszámlálónak megfelelő sorú cellája értékéve, a másodikat a B oszlop ugyanazon cellája értékéve, a harmadikat a C oszlop ugyanazon cella értékével (rekordbetöltő).
amikor a következő gombot megnyomják (gomb_click esemény) megnézed, hogy a rekordszámlálód elérte-e a huszat. Ha igen, egyre állítod, ha nem növeled eggyel. utána meghívod a rekordbetöltő eljárást.
amikor az előző gombot megnyomják (gomb_click esemény) megnézed, hogy a rekordszámláló érte egy-e, ha igen, húszra állítod, ha nem, akkor csökkented eggyel. utána meghívod a rekordbetöltő eljárást.A rekordsorszámot megadhatod egy publikus változóban, akkor minden eljárás használhatja, amelyik a form kódlapján van.
Üdv.
-
Fferi50
Topikgazda
válasz
Mr.Scofield
#23635
üzenetére
Szia!
A második oldalra tegyél fel egy userformot a megfelelő vezérlőkkel (cimkék, parancsgombok, spinbutton) és írj hozzá megfelelő megjelenítő makrót.
Üdv.
Új hozzászólás Aktív témák
- E-roller topik
- Az olcsó Macbook sokkolja a PC-ipart az ASUS társvezetője szerint
- bambano: Bambanő háza tája
- Távol-keleti webshopok OFF topikja (játékok, kuponok, stb.)
- Azonnali mobilos kérdések órája
- Ami Kínában OnePlus Pad Pro, az errefelé mégis csak Pad 2 lett
- Okosóra és okoskiegészítő topik
- Yettel topik
- Milyen routert?
- Autóhifi
- További aktív témák...
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Xbox / Microsoft Store feltöltőkártya kód (digitális, HU) több címlet, több db, azonnal, olcsón
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem.
- Apple iPhone 16 Pro Max 256GB,Újszerű,Dobozaval,12 hónap garanciával
- iPhone 13 256GB 100% (1év Garancia) - ÚJ EREDETI AKKUMULÁTOR - AKCIÓ
- GYÖNYÖRŰ iPhone 14 Pro Max 128GB Deep Purple-1 ÉV GARANCIA - Kártyafüggetlen, MS3913
- GYÖNYÖRŰ iPhone 13 Pro Max 128GB Alpine Green -1 ÉV GARANCIA - Kártyafüggetlen, MS4599, 100% Akksi
- MEGA Akció! Számla + garancia! Apple Macbook Pro 14 - Apple M3 Pro Chip!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Fferi50