-
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
-
commanDOS
senior tag
Sziasztok! Egyelőre nem találtam megoldást a következő problémára:
Van egy függvényem, ami egy kis táblázatból dolgozik. Időközben igény lett a táblázat adatainak módosítására.
A következőt szeretném megoldani: Külön excel fájlokban (vagy munkalapon) létrehozni 3 egyforma méretű, de különböző adatokkal feltöltött táblázatot és hozzákapcsolni a függvényt tartalmazó excel fájlhoz. Ezt már megoldottam, de macerás a váltás a táblázatok között. Létezik olyan megoldás, hogy az egyik cellában egy lenyíló menüből kiválasztom, hogy adott területre a 3 táblázat közül melyiket hívja be? -
makoss
veterán
Üdv!
Online exel táblázatban hogyan kell beállítani, hogy megjegyezze minden rublikába íráskor, ha a billentyűzeten lenyomok egy betűt, felhozza azt a nevet, vagy amit korábban beírtam? [link]

-
Behuska
újonc
Sziasztok,
Van egy munkalapom amin vannak olyan sorok amik egyesített cellákat tartalmaznak. Van arra mód, hogy úgy rendezzem a sorokat (ABC sorrendben), hogy az egyesített sorok megmaradjanak?
Köszi
-
válasz
Fferi50
#39168
üzenetére
Kösz , jó lett , de ez az fkeres nekem olyan zavaros kicsit.
A kérdésem az lenne hogy lehet korlátozni egy adott oszlopban vagy pár cellában a beírható ertek mennyiségét?
Konkrét példával gondolok itt arra hogy azt akarom h pl. a B3-B8 oszlop tartományba csak 1 db érték szerepelhessen , azaz ha pl a B5-ben van 23 , akkor a többi 5 cellába tiltsa meg az excel hogy adatot lehessen beírni. -
Üdv. Kollégák nem boldogulok, mit cseszek el? 1 cellába be akarom függvénnyel írni, a sheet nevét:
=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,32)
ez ugye nekem nem jó, mert magyarul kell:=KÖZÉP(CELLA("filenév";A1);KERES("]";CELLA("filenév";A1))+1;32)A vesszőket pontos vesszőre cseréltem, mert nálunk ugye úgy kell, de valamiért nem jó. Képletkiértékelővel a keres-el megtalálja, de a következő lépésnél már
#ÉRTÉK-et ad vissza. Köszi!
-
wednesday
őstag
válasz
Delila_1
#39692
üzenetére
Biztos egyszerűbbé is lehetne tenni, összevonni műveleteket (pl kiválasztás+rögzítés stb). Nem tudom.

Urlap1 -> beviszi a táblába az adatokat
Urlap-> kiveszi, amire rákeresünk (és módosítjuk ha szükséges) Ezt a módosítást színezhetné ki a táblázatban, és írná át a nevet.
Az se lenne egy hátrány, ha több sorom lehetne. Csak a táblán kívüli részek fixek, meg van fejléc, lábléc is. Az aláírás meg mindig a lap alján lenne. Nekem nem lenne probléma, mindig kijelölni a nyomtatási területet minden egyes aktuális lapnál, de nem én fogom használni.
Köszönöm.
-
-
Laciahegyrol
csendes újonc
Ez komoly, köszi az infót!
Pl. van egy bő 1000 termékből álló lista, amit naponta vizsgálni kell. Csupán annyi, hogy ne kelljen minden nap a feltételeknek megfelelően végig kerestetni vele, hanem pl. az első 100 már nem fog változni és nem kell vele foglalkozni, akkor ne a 2. sortól vizsgálódjon.
Üdv: Laci -
wednesday
őstag
válasz
Delila_1
#39685
üzenetére
Pontosítok.

Kezdem az elejéről, nehogy kihagyjak valamit.
Az Urlap kinézete

A kép annyiban hibás, hogy nem a B8-nál van a név, hanem a D8 egyesített cellába, legördülő menüben.
Ami eddig működik és frankó. Kiválasztom a nevet majd beírom a rublikákba az adatokat. Majd ezek az adatok a következő fülre mentésre kerülnek egy makróval egy táblázatba, olyan elrendezésbe, amit a fenti képen linkeltem.
Igen ám, de kitalálták, hogy szükség lenne módosításra könnyen és gyorsan, ha nem éppen az az illető jön a dolgokért, aki előzőleg rögzítésre került. Erre írt nekem Mutt egy makrót, amit (#39630)-as hsz-ban linket.
Ez csinálja azt, hogy az adatbázisból kikeresi a név és dátum egyezésnél az alatta lévő adatokat, amit egy generált adatlapra ment el. A keresés nem az Urlapon történik, hanem az Urlap1-en. A generált adatlapot meg elnevezi a keresés alapján. Itt már elég lesz csak a nevet átírni, majd nyomtatni, menteni stb. Ezzel volt az a problémám, hogy a generált adatlap nem veszi át a formátumot, fej láblécet, oldalbeállítást stb.
És itt jön a kérésem. Az új Urlapon (a generálton) már kitöltve szerepnek az adatok (ahol módosítják a nevet) Ez alapján megkeresné a Mentes lapon lévőket és a változást (ami csak név változás) át kéne vezetnem az az összesítő táblázatba. Egyrészt beszínezheti azt a név, dátum és a hozzá tartozó adatokat pl: lilára.
De az is jó, ha kicseréli a nevet, bár ez lehet nem fontos, hanem egy megjegyzés rublikába majd beírják a másik nevet. Tehát ez egy oda-vissza működős dolog, ahol én inkább külön szedtem az eredeti Urlapot, és a módosító (Urlap1) ürlapot és ezek dolgoznak a Mentésen lévő táblázatból. -
andreas49
senior tag
válasz
Laciahegyrol
#39684
üzenetére
-
Laciahegyrol
csendes újonc
válasz
andreas49
#39680
üzenetére
Szia!
Egy ötlet:
A darab függvény megszámolja, hány cella van a tartományban, ami számot tartalmaz.
A darab2 függvény megszámolja hány nem üres cella van a tartományban.
Hány szám: darab függvény.
Hány betű: összesből (darab2 függvény) kivonod a számok (darab függvény) számát.Üdv: Laci
-
marec1122
senior tag
Sziasztok!
Köszönöm szépen akkor lesz ez a segédoszlopos megoldás

-
Fferi50
Topikgazda
válasz
marec1122
#39678
üzenetére
Szia!
Ha számolni is szeretnél az eredménnyel, akkor két cella kell hozzá:
Az elsőben a raklapokat számolod, a másodikban a zsákmaradékot.
Az első képlete Kerek.Le(A1/A2;0), a második képlete Maradék(A1;A2).
Egyéni cellaformázást adhatsz mindkét cellának a cellaformázás egyéni menüpontjában:
első cellára 0\rl, a második cellára 0\zs.Üdv.
-
andreas49
senior tag
Erre valaki?
Sziasztok
Az alábbira kérném a segítségeteket:
Van egy sor, amiben pl. A-Z-ig adatokat (mezőn belül csak számot és csak betűt ) tartalmazhat. A sor első mezőjébe kellene kiíratni, hogy melyik adatból hány darab van.
Köszi a segítséget előre is. -
marec1122
senior tag
Sziasztok!
Ismét segítségért fordulok hozzátok.
Van egy cellánk A1 amiben zsákok száma van megadva, A2 amiben az van megadva hány zsák fér el egy raklapon. A3-ba kiszámoljuk az előző kettő hányadosaként hogy mennyi raklapunk van. például A1:125 A2:20 akkor A3:6,25. Az a kérdés hogy létezik e olyan lehetőség hogy ez speciális számformátummal legyen megadva. pl: 6,25= 6rl és 5zs (rl=raklap zs=zsák).Előre is köszönöm ha valaki tud segíteni.
-
wednesday
őstag
válasz
Delila_1
#39665
üzenetére
Nagyon köszönöm.
Most már csak egy színező makróra lenne szükségem.

Indítson keresést az "Urlap"-on lévő D8 és D15-ös cellákba beírt név és dátum egyezésére, a "Mentes" adatlapon. Ha megtalálta az egyezést, a nevet a dátumot a hozzá tartozó adatokat színezze be a másik fülön lévő táblázatban, mondjuk lilára. Innen majd megtudom, hogy mi került módosításra.
a Táblázat elrendezése meg ilyen: A táblázat nem színes, csak személtetés miatt, hogy mi hova tartozik.

-
Mutt
senior tag
válasz
Laciahegyrol
#39669
üzenetére
Szia,
Van még lehetőség akár a Windows Registry-ben is tárolni az eredményt.
Call SaveSetting("Valami", "Érték", "Változóm", SajatEgesz)Előhívni pedig így lehet:
SajatEgesz = GetSetting("Valami", "Érték", "Változóm")Kérdés, hogy pontosan mire kell neked a korábbi állapot mentése? Egyáltalán milyen gyakran változik amit írtál?
üdv
-
Delila_1
veterán
válasz
Laciahegyrol
#39669
üzenetére
Idézet Krizsák László könyvéből:
"Előfordul, hogy az eljárás ismételt meghívásakor szeretnénk az előző befejezéskori értékeket visszanyerni.
Ilyen esetekben használható a Static változó definiálás.A Static hatására az eljárásból kilépve a változó értéke nem semmisül meg, hanem csak elrejtésre kerül.
(A memóriában nem szabadul fel a tárolására használt terület, ezért sok ilyen változó használata nem célszerű.) Az eljárás következő meghíváskor a kilépéskori értéket kapjuk vissza.Bár ezek alapján látszólag a Static változókhoz a hívó programból is hozzá lehetne férni (benne vannak a memóriában), de ez nem valósul meg, mivel a változók általában csak az őket definiáló programokban érhetőek el."
-
Delila_1
veterán
-
Delila_1
veterán
válasz
Laciahegyrol
#39669
üzenetére
A Static tip. változó csak addig tartja meg az értékét, míg be nem zárod a füzetedet.
-
Laciahegyrol
csendes újonc
válasz
Delila_1
#39668
üzenetére
Egyik oldalon találtam ezt:
"Az előző értékek megtartásához a változót a Static típusúnak kell definiálni: Static SajatEgesz As Integer."
Ebből gondoltam, hogy mégis van mód, hogy ne kelljen az értéket újra számítással meghatározni. Nálam sehogy nem működik, vagy nem azt csinálja, ami nekem kell.A névadásnak annyi köze van hozzá, hogy az alábbi módszerrel sem kell a munkalap celláiban tárolni az értékeket:
Pl. létrehozol egy hétnapjai tömböt 7 elemmel, a hét napjaival, majd pl. egy fkeres függvény második argumentumába nem kell a munkalapon levő táblát kijelölni, hanem megadod neki, hogy a hétnapjai tömböt használja.Üdv: Laci
-
Delila_1
veterán
válasz
Laciahegyrol
#39667
üzenetére
A füzet bezárásakor a makró változóinak értéke lenullázódik.
Nem értem, mi köze a névadásnak az egyes értékek tárolásához.A lenti makróban is egy cella tartalmazza az értéket, amit beolvashatsz egy változóba, csak itt egy újonnan létrehozott tartomány egy bizonyos cellájáról van szó.
Sub mm()
Dim valtozo As Variant
'Nevet adunk a Data lapon lévő B2:K20 tartománynak
Sheets("Data").Names.Add Name:="Tartomany", RefersToR1C1:="=Data!R2C2:R20C11"
'betesszük a valtozo-ba a megadott tartomány 2. sorában, 3. oszlopában lévő értéket
valtozo = Sheets("Data").Range("Tartomany")(2, 3)
MsgBox valtozo
End Sub -
Laciahegyrol
csendes újonc
válasz
Delila_1
#39666
üzenetére
Köszönöm ismét a válaszod!
Ha nem szeretném a változó tartalmát munkalapon elhelyezni, vagy egyáltalán bármely munkalapon elérhetővé tenni?
Nekem is megfordult a fejemben, hogy cellában tároljam. Múltkor láttam például, hogy lehet tömböt készíteni a névkezelőben. Az ilyen megoldást szeretném megtudni.
Üdv: Laci -
Delila_1
veterán
válasz
Laciahegyrol
#39664
üzenetére
A makró végén írasd be egy cellába
Sheets("Munkalap").Range("AA1")=változóúj indításkor innen olvashatod ki.
változó=Sheets("Munkalap").Range("AA1") -
Delila_1
veterán
válasz
wednesday
#39661
üzenetére
Sub LapMasolas()
Dim lookup_name As String, lookup_date As Date
lookup_name = "ÚjLapNeve" 'Cellahivatkozás is adhatsz nevet-> lookup_name = Range("A3")
lookup_date = Date 'Mai dátum. Cellahivatkozással-> lookup_date =Range("C10")
Sheets(1).Copy Before:=Sheets(2)
'A lap másolása után az új lap lesz aktív
ActiveSheet.Name = lookup_name & "_" & Format(lookup_date, "YYYYMMDD")
'Ha a fenti, megjegyzések szerinti hivatkozás alapján akarsz nevet adni, az ActiveSheet.Name kezdetű
'sor helyett legyen ActiveSheet.Name = Range("A3") & "_" & Format(Range("C10"), "YYYYMMDD")
'Az új lap D8 és D15 cellájából törli az értékeket
Range("D8,D15") = ""
End Sub -
Laciahegyrol
csendes újonc
Sziasztok,
Szeretnék segítséget kérni: hogy tudom megoldani, hogy a makróban egy változó értékét a futás után, sőt mentés, kilépés után is eltárolja?
Köszönöm előre is!
Üdv: Laci -
andreas49
senior tag
Sziasztok
Az alábbira kérném a segítségeteket:
Van egy sor, amiben pl. A-Z-ig adatokat (mezőn belül csak számot és csak betűt ) tartalmazhat. A sor első mezőjébe kellene kiíratni, hogy melyik adatból hány darab van.
Köszi a segítséget előre is. -
wednesday
őstag
válasz
Delila_1
#39660
üzenetére
Köszi.
Ugye az a probléma, hogy a Sheets neve is generálódik. A nevet és dátumot kapja meg.
If wsOut Is Nothing Then
'hozzon létre egy új lapot a formanyomtatvány alapján és nevezze át
Set wsOut = Sheets.Add
wsOut.Move after:=Sheets(Data)
wsOut.Name = lookup_name & "_" & Format(lookup_date, "YYYYMMDD")
End IfwsForm.Range("A1
100").Copy wsOut.Range("A1")
wsOut.Range("D8").Validation.Delete
wsOut.Range("D15").Validation.DeleteEz a teljes makró. Nem tudom ezt hova tehetném be. Ehhez sajnos amatőr vagyok.

-
wednesday
őstag
Szia!
Köszi szépen mégegyszer.
Van valami, amiről előzetesen nem beszéltem, mert nem is gondoltam rá. Arra van lehetőség, mikor generál egy új lapot a makró, akkor a kiinduló lap nézetés és elrendezését is másolja le?
Fejléc, lábléc, sor- és oszlop beállítások, formátum stb.
-
wednesday
őstag
-
wednesday
őstag
Sziasztok!
Azt szeretném megoldani, ha 6-nál több sorra lenne szükségem, akkor az új sorok új oldalra kerüljenek, de a táblázaton kívüli szövegek a legvégére kerüljenek? Nincs valami opció, hogy bizonyos területet csak a végére szúrjon be nyomtatásnál vagy pdf generálnál? Ez nem lábléc lenne, az külön kell.

-
wednesday
őstag
Sziasztok!
Azt szeretném megoldani, ha 6-nál több sorra lenne szükségem, akkor az új sorok új oldalra kerüljenek, de a táblázaton kívüli szövegek a legvégére kerüljenek? Nincs valami opció, hogy bizonyos területet csak a végére szúrjon be nyomtatásnál vagy pdf generálnál? Ez nem lábléc lenne, az külön kell.
-
tpeter77
addikt
sziasztok,
Van egy Excel táblám, aminek a Munka1 fülén vannak a szabadságigénylő lapon megjelenítendő adatok a munkavállalókról,
rendre egymás alatti sorokban jelennek meg az alábbiak: név, beosztás, cím, TAJ, telefonszám.
Az összes adat a Munka2 fülön van felvéve. Az oszlopok rendre ugyanazok mint a Munka1-ben de itt egymás mellett vannak.Szeretném megkönnyíteni a helyzetet, hogy a Munka1 lapon elég legyen a név mezőt legördíteni, és a kiválasztott munkavállaló többi adatát másolja be a program az alatta lévő cellákba.
Ezt szeretném megvalósítani, kérem segítsetek.
Köszönöm! -
Delila_1
veterán
válasz
mcwizard
#39648
üzenetére
Mutt megoldásához még 1:
Minden oszlop látszik. Nézet menü, Munkafüzetnézetek, Egyéni nézetek, Hozzáadás. Megadod a nevet, pl. Teljes, OK.
Elrejted az F-G-H oszlopokat, menü mint az előbb, az új név NukuFGH.
Ezután a menüben tetszésed szerint választhatsz a két új elrendezésed közül. -
Mutt
senior tag
válasz
mcwizard
#39648
üzenetére
Szia,
Makróval lehet megoldani automatikusan amit írtál/kértél. A munkalap SelectionChange eseménye segít ebben.
Jobb klikk a lap nevén és Kód megjelenítése opciót válaszd, majd másold be ezt a szerkesztő ablakba:Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, ActiveSheet.UsedRange) Is Nothing Then
If Target.Column >= 5 And Target.Column <= 8 Then
Columns("F:H").EntireColumn.Hidden = False
Else
Columns("F:H").EntireColumn.Hidden = True
End If
End If
End SubKézi megoldás pedig, hogy F:H tartomány csoportba foglalod, ekkor az oszlop nevek felett megjelenik egy gomb amivel szintén el tudod érni amit kértél egy plusz kattintással.
üdv
-
mcwizard
tag
Sziasztok!
Az megoldható valahogy, hogy az F, G és H oszlopok legyenek rejtve, és automatikusan jelenjenek meg, ha az E oszlop bármely cellájába "kattintok"(Bocsi, de a szakszavakkal nem vagyok tisztában). Ameddig az E, F, G vagy H oszlopok valamelyikében dolgozok, addig maradjanak is láthatók az F, G és H oszlopok. Ha végeztem és az előbb említett oszlopokon kívül bármelyik cellába "kattintok", akkor automatikusan legyen újra rejtett az F, G és H oszlop.
(Excel2016, magyar)
Előre is köszönöm a segítséget!
-
Mutt
senior tag
Szia,
Munkafüzet felépítésének védelme
Azonban pár perces Google search-el egy kezdő is ki tudja ütni ezen védelmeket. Ne várj csodát.
üdv
-
lappy
őstag
Szeretnék egy google drive-ra feltöltött excel fájlt levédeni. Azaz csak olvasható legyen alapból, de ha a kódot beírom akkor szerkeszthető is.
Hogyan tudom ezt megoldani? -
lappy
őstag
Sziasztok
Nem éppen excel de hátha tudtok segíteni. Van egy ppt abban beillesztek egy swf fájlt. Ennek megadom a helyét akkor működik. De amikor máshol szeretném megnyitni akkor már nem ott lesz az swf file. Vba ban lehetséges hogy keresse meg és ha megtalálta akkor tegye ezt bele mint elérési útvonal. -
Mutt
senior tag
-
Mutt
senior tag
válasz
Laciahegyrol
#39638
üzenetére
Szia,
Próbáld ki, hogy ez a minta megy-e nálad?
Ha igen, akkor a nálad lévő fájlban más a felépítés. Több infó kell.
üdv
-
Laciahegyrol
csendes újonc
-
Delila_1
veterán
válasz
gaben86
#39635
üzenetére
Először meg kell találni a sort, amelyik a kiválasztott azonosítóhoz tartozik. Ezt a HOL.VAN függvénnyel keresheted ki.
=HOL.VAN(Munka2!H1;$A:$A;0)Ezt használhatod az INDEX függvényben.
=INDEX(Munka2!$A:$BO;HOL.VAN(Munka2!H1;$A:$A;0);1)ahol az első paraméter, a Munka2!$A:$BO határozza meg a tartományt, amiben keresel,
a második paraméter a tartományban lévő keresett sor, amit fentebb már írtam,
az utolsó paraméter (1) adja meg, hogy a tartomány melyik oszlopából kéred az adatod. Az 1 az A oszlopból, a 2 a B-ből, stb...Ha a másik lap egyes oszlopaiba a Munka2 lap előző oszlopának az értékét akarod beilleszteni – B-be a Munka2 lap A oszlopát –, akkor az oszlopszám helyére kerülhet a képletben OSZLOP()-1 . Az OSZLOP() függvény az aktuális oszlop számát adja meg.
Tehát a kigyűjtendő lapon kell az egyes cellákba beírni az INDEX-HOL.VAN párost. Törlésre nincs feltétlenül szükség, hiszen az üres cellák értékei is felülíródnak a képletek által.
-
uvyp
csendes tag
Sziasztok!
2019es Magyar excelben hogyan lehet beállítani,hogy az adott oszlopban már egyszer szereplő szavakat ne kelljen újból végig kiírni, hanem a kezdő betű leütésekor felajánlja a szót? Jelenleg csak akkor ajánlja fel ha az adott oszopban nincs az egymás alatt lévő cellák között üres cella.
Köszi a választ!
-
gaben86
csendes tag
Sziasztok!
Szeretnék segítséget kérni az alábbiakban: munkafüzetben 2 munkalap van az egyik "Munka2" adatforrás, amiben ügyfelek adatai szerepelnek, az "a2:a237" oszlop ügyfelek azonosítóját tartalmazza, a többi oszlop "b2:bo237" különféle növénykultúra terület adatait, "b1:bo1" fejlécnek tekintendő.
Ez a táblázat soronként "ügyfelenként" tartalmaz üres cellákat.A másik munkalap "növények" kötött formátumú, nyomtatásra előkészített lap.
Arra van e lehetőség, hogy a növények munkalap legördülő listájából (h1) kiválasztott "ügyfél" azonosítóra az adott ügyfélhez tartozó adatok átkerüljenek a "Munka2" táblából, de úgy, hogy az üres cellák kimaradjanak, csak az adatot tartalmazó cellákat kellene áthoznia a hozzá tartozó fejlécekkel.
A legtöbb átmentendő adat max 15db, a "b2, d2, f2, h2, k2, m2, o2, q2, t2, v2, x2, z2, ac2, ae2, ag2"
összevont cellába kerülne a fejléc, a hozzá tartozó értékek pedig, a "b4, d4, f4......." cellákba, ezek nem összevontcellák.
Mentést követően a feltöltött cellákat üríteni kellene,majd kezdődhetne előröl egy másik üzemet kiválasztva.Remélem jól meg tudtam fogalmazni -és értelmezhető amit írtam.
Előre is köszönöm segítségetek!

Üdv. G.
-
Mutt
senior tag
válasz
Laciahegyrol
#39633
üzenetére
Szia,
2 megoldási javaslat:
1. A formon az OK gomb Tag tulajdonságának a használata.
2. Globális változó, amelyet a form is elér.A példában van 3 gombom (Összeadás, Kivonás és Szorzás) mindegyikhez a "Kattintas" makró van társítva.

Sub Kattintas()
'1-es változat - ahol Sajat a form neve, amelyen bOK a gomb
Sajat.bOK.Tag = ActiveSheet.Shapes(Application.Caller).AlternativeText
'2-es változat - ahol a muvelet egy globális változó
muvelet = ActiveSheet.Shapes(Application.Caller).AlternativeText
Sajat.Show
End SubVan egy form "Sajat" név alatt, amin van egy OK és egy Mégsem gomb (bOK és bCancel).
Az OK gomb eseménye ennyi:Private Sub bOK_Click()
Dim a As Long, b As Long
Randomize 3
a = Int(Rnd() * 100) + 1
b = Int(Rnd() * 100) + 1
Select Case bOK.Tag '1-es változat
'Select Case muvelet '2-es változat
Case "Összeadás"
MsgBox a & " + " & b & " = " & a + b
Case "Kivonás"
MsgBox a & " - " & b & " = " & a - b
Case "Szorzás"
MsgBox a & " * " & b & " = " & a * b
End Select
End SubRemélem ezen el tudsz indulni.
üdv
-
Laciahegyrol
csendes újonc
Sziasztok,
Szeretnék segítséget kérni, hogy lehetne megoldani, hogy egy munkalapon levő különböző gombok ugyanazt az űrlapot nyissák meg, majd az űrlapon levő OK gomb segítségével az először megnyomott gomb függvényében más parancs fusson le?
Köszönöm: Laci -
Mutt
senior tag
válasz
wednesday
#39624
üzenetére
Szia,
Felraktam ide egy változatot, amely tudja azokat a dolgokat amiket kértél.
Plusz dolog a részemről, hogy tettem adatvalidációt az űrlapon a név és dátum mezőkre, mert simán lehet hogy vki olyan komibinációt választ amihez nincs adat. Ha vki választ egy nevet, akkor VBA kikeresi hogy mely dátumok valósak hozzá. Ez fordítva is igaz, vagyis dátum alapján leszűkíti a VBA a neveket is.
Ha új keresést akar vki, akkor át kell váltani egy másik lapra és visszajönni az űrlapra.üdv
-
Delila_1
veterán
válasz
wednesday
#39628
üzenetére
Private Sub CommandButton1_Click()
Dim sor As Variant
On Error Resume Next
sor = Sheets(1).Range("A:A").Find(CDate(TextBox1)).Row
If IsEmpty(sor) Then
MsgBox "Nem található " & TextBox1 & " dátum az A oszlopban.", vbCritical
On Error GoTo 0
Exit Sub
Else: MsgBox sor
End If
End Sub -
wednesday
őstag
Köszi szépen.

Ezzel remélem kezdhetek valamit. Egyelőre szenvedek ezzel a feltételes másolással.
Valami ilyesmi kéne.
Ha megvan a dátum név kombó, akkor a név alatti adatokat addig másolja amíg egy újabb dátum névhez nem ér (az már egy másik csoport). Bár ez az addig másolja sem állja meg a helyét, hiszen egyelőre fix 6 helyem van. Ha 5-nél több van új adatlapra kerülne. Például munka3 és 7-12ig, munka4 13-18 stb. Nem kell olyan sok. ugyanazon név és dátum.Vagy megoldom, hogy addig generálja a sorokat az űrlapon amíg szükséges.
-
lappy
őstag
válasz
wednesday
#39624
üzenetére
itt van a fájlból a két makró
Private Sub CommandButton1_Click()
b = 1
For a = 9 To 15
If Worksheets("Munka1").Cells(a, 2).Value = TextBox1.Value And Worksheets("Munka1").Cells(a, 3).Value = ComboBox1.Value Then
Worksheets("Munka2").Cells(b, 2).Value = Worksheets("Munka1").Cells(a, 2).Value
Worksheets("Munka2").Cells(b, 3).Value = Worksheets("Munka1").Cells(a, 3).Value
Worksheets("Munka2").Cells(b, 4).Value = Worksheets("Munka1").Cells(a, 4).Value
Worksheets("Munka2").Cells(b, 5).Value = Worksheets("Munka1").Cells(a, 5).Value
Worksheets("Munka2").Cells(b, 6).Value = Worksheets("Munka1").Cells(a, 6).Value
Worksheets("Munka2").Cells(b, 7).Value = Worksheets("Munka1").Cells(a, 7).Value
b = b + 1
End If
Next a
End SubThisWorkbook
Private Sub Workbook_Open()
Munka1.ComboBox1.AddItem "készpénz"
Munka1.ComboBox1.AddItem "utalvány"
Munka1.ComboBox1.AddItem "kártya"
End Sub -
wednesday
őstag
válasz
wednesday
#39623
üzenetére
Na találtam a neten egy egész használható megoldást. Csak a feladathoz kéne igazítanom. Viszont megnyitva nem látom a makrót.
Én is két adat alapján tudnék keresni. Név meg dátum szerint, és hozzá tartalmazó adatokat kéne átmásolnom a megfelelő helyre. A kikeresés után az átmásolandó adatok nem fixek, hanem addig tartanak, ahol a következő név és dátum kezdődik az én példámba. Ezeket az adatokat kéne meghatározott cellákba másolni, azzal a különbséggel, hogy magát a nevet és dátumot (csop. vezetőt és fizetési módot) is másolni kéne.
-
wednesday
őstag
Sziasztok!
Arra van lehetőség, hogy kijelölés után indítsak egy másolás makrót és csak a kijelölt tartományból másol ki bizonyos meghatározott cellákat egy másik fülön lévő meghatározott cellákba? Az űrlap egyesített cellákat tartalmaz.
Az első fülön, a táblázatba sok adat található, mindig csak bizonyos adatokat kéne átmásolnom egy űrlapra. Az űrlapon található cellák (ahova másolunk) mindig fixek. A változó az első fülön lévő adatok, amik a kijelöléstől függnek.
Például kijelölöm A11:G16 ig a cellákat, de lehetne akár A21:G26, A82:G90 stb. (ez a rész okozza a fejtörést)
A11 kerül a másik fülön lévő urlap2 D15 cellába
C11 kerül az urlap 2 D8:L8 egyesített cellábaC12:G16-ig (ameddig tart a kijelölés) másol urlap 2 "B18:L23" azért az idézőjel mert összevont oszlopok vannak benne, ugyanúgy 5 sornyi adatot kell áthozni (vagy amennyi ki van jelölve).
Régebben segítettetek nekem egy Űrlapból mentés táblázatba makróba. Na most itt meg kéne fordítani a dolgot, vagy nem is megfordítani, hanem egy új űrlapra másolni a táblázatból a kijelölt adatokat.
Mondjuk azt ez egy "módosít űrlap", amivel régebbi adatokat másolunk vissza a táblázatból, hogy a egy két rész módosítása után újra ki lehessen nyomtatni stb.
-
mcwizard
tag
Sziasztok!
Olyan dologban kérném a segítségeteket, hogy megoldható-e az egy legördülő lista esetén, hogy a listából több elemet választhassak ki (Pl jelölőnégyzet segítségével), amik aztán vesszővel elválasztva kerülnének az adott cellába.
(Excel 2016, Magyar)Előre is köszönöm az esetleges válaszokat!
Üdv, Zoli! -
ny.janos
tag
válasz
Zoli42ab
#39614
üzenetére
Szia!
Ha a vizsgálandó értékeid az A és B oszlopban vannak, és soronként szeretnéd a nagyobbat jelölni, akkor használhatod a feltételes formázásban az adott képletet is (kettőnél több oszlopra alkalmazva értelemszerűen a legnagyobbat fogja kiemelni az általad megadott módon):
=A1=MAX($A1:$B1) -
Mutt
senior tag
válasz
l.skywalker
#39616
üzenetére
Szia,
Nem teljesen világos a kérdés, mert azt is írod, hogy az utolsó sort VBA-ban már kikerested de közben kell egy képlet amivel ugyanezt meg tudod határozni.
Ha VBA-ban van egy változód amiben ott az utolsó sor azonosítója és azt VBA-n kívül akarod használni, akkor a Névkezelőbe feltudod venni:
ActiveSheet.Names.Add Name:="Utolsosor", RefersTo:=UtolsoSorEz munkalap körben hozza létre a változót, ha másik lapon akarsz ráhivatkozni, akkor az ActiveSheet-et hagyd el (vagy cseréld le Thisworkbook -ra).
Innentől már az INDIRECT függvénnyel tudsz a tartományra hivatkozni:
=INDIREKT("A5:A"&Utolsosor)Egy lépésben az A5:A_utolsó sora így is leírható:
ActiveSheet.Names.Add Name:="Utolsosor", RefersTo:=Range("A5", Range("A" & Rows.Count).End(xlUp))Ha képlettel kell az utolsó sor, akkor pedig használható:
=KERES(2;1/(A:A<>"");SOR(A:A))üdv
-
Delila_1
veterán
válasz
l.skywalker
#39616
üzenetére
=SZUM(INDIREKT("A2:A"&DARAB2(A:A)))=ÁTLAG(INDIREKT("A2:A"&DARAB2(A:A)))Az A1 cellában van az oszlop címe.
-
l.skywalker
titán
Sziasztok. Egy tartomány "végét" hogyan tudnám legegyszerűbben meghatározni, hogy az utolsó sor legyen?
A5:A_utolsó sora.
Dynamic Range-t nem akarok csinálni mert egy VBA-val már meghatároztam egy másik munkalapon az adott utolsó sor értékét, de nem tudom, hogy függvényban hogyan tudnám beilleszteni azt az értéket az adott oszlop jelölő után.
-
Zoli42ab
újonc
Helló Mindenkinek!
Azt hogyan lehet megvalósítani Excellben, hogy ha az egyik cellában levő szám nagyobb a másik cellában levő számnál, akkor a nagyobbnak a kitöltési szine pl. legyen piros?
If A1 > B1 then A1.cell.color:= red
Valszeg nem így kell, de ebből talán érthető, mit is szeretnék.
Válaszotokat előre is köszönöm! -
wednesday
őstag
Sziasztok!
Szeretnék egy olyan makrót készíteni, ahol egy legördülő menüből kiválasztom a cég nevét és a alatta lévő cellákba meg automatikusan betölti a hozzá tartozó adatokat egy másik fülön lévő táblázatból. Például székhely adószám stb.
Segítségeteket köszönöm!

-
Iethau
újonc
Ezt a gyorsaságot
Nagyon köszönöm mindkettőtöknek a választ! -
föccer
nagyúr
válasz
Iethau
#39608
üzenetére
Én csinálnék egy segédoszlopot a partnerek listája mellett, amiben egy szerszerű hol.van() függvénnyel keresnék a számlák adatai között. Ahol #hiányzik hibát kapsz, ott nincs találat. Ezután bekapcsolnám az autoszűrőt, kiszűrném az összes #hiányzik hibát és az eredmény táblát kijelölve simán kimásolnám a leszűrt adatokat és egy üres munkalapra érték beillesztéssel bepakolnám.
A-Z 30 másodperces művelet.

üdv, föccer
-
Delila_1
veterán
válasz
Iethau
#39608
üzenetére
A két lap neve nálam Régi és Friss. Az ügyfelek neve mindkét lapon az A oszlopban van. Írd át a makróban a saját lapjaid nevére.
A makrót modulba másold, ennek módját lásd a Téma összefoglalóban.Sub Frissites()
Dim sor As Long, talal, usor As Long
Sheets("Régi").Activate
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = usor To 2 Step -1
On Error Resume Next
talal = Application.Match(Cells(sor, "A"), Sheets("Friss").Columns("A"), 0)
If IsError(talal) Then Rows(sor).Delete Shift:=xlUp
On Error GoTo 0
Next
End Sub -
Iethau
újonc
Sziasztok!
A következő dologhoz szeretnék segítséget kérni. Excel 2013. Adott egy lap, 17e sorral ami egy ügyfél lista. Adott a másik lap, amin kb. 20e sor van, az elmúlt pár évben kiállított számlák természetesen az előző ügyféllistából. Szeretném kitörölni az ügyféllistából azokat, akik nem szerepelnek a második lapon, azaz nem állítottunk ki nekik számlát az elmúlt években. Megoldható ez valamiféle egyszerű szűréssel? Előre köszönöm a segítő válaszokat!
-
Mutt
senior tag
válasz
MZsoltee
#39598
üzenetére
Szia,
A sorok magassága nyomdai pontokban van megadva, 72 pont = 1 inch = 2,54 cm
Az oszlop szélesség pixelben van és függ a használt betűtípus szélességétől. Bővebben itt.Megoldás:
1. Kapcsolj át Lapelrendezés nézetbe
2. Ekkor azonos mértékegységben (centi, pontok) tudod állítani a magaságot, szélességet.
3. Válts vissza normál nézetbe.üdv
-
Fferi50
Topikgazda
válasz
modflow
#39600
üzenetére
Szia!
Alapból minden cella zárolt egy új munkalapon. De a zárolás csak akkor érvényes, ha bekapcsolod a munkalap védelmet. Magyar Excelben Véleményezés - lapvédelem.
A "szabad" celllákat kijelölöd - jobb egérgomb - cellaformázás - védelem - a Zárolt négyzetből kiveszed a pipát.Üdv.
Új hozzászólás Aktív témák
- KERESEK: Poly Voyager 4320 M UC USB-C 218478-02M Part number: 77Z30AA
- HIBÁTLAN iPhone 12 Mini 64GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3453
- Apple iPhone 13 256GB / Kártyafüggetlen / 12Hó Garancia / 100% Akku
- Samsung UE75DU7172U 189 cm / 75 4K UHD Smart TV 6 hó garancia Házhozszállítás
- Telefon felvásárlás!! iPhone 16/iPhone 16 Plus/iPhone 16 Pro/iPhone 16 Pro Max
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő






100").Copy wsOut.Range("A1")



