-
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
Csabex
#52836
üzenetére
Szia!
Majdnem.
A műveletek "álnév" alatt értem az általad végzendő műveleteket, kb. akkor így lehetne:Sub Masolas()' Feltétel: A forrás munkafüzet legyen nyitva, mielőtt a makrót elindítodDim fnev As Stringfnev = Dir("F:\123\*.xlsx")Do While fnev <> ""Workbooks.Open "F:\123\" & fnevWith ActiveWorkbook ' mivel az éppen megnyitott munkafüzet lesz aktív.Sheets(1).Range("D4").Value = Sheets("Seged").Range("D1").Value 'a Sheets(1) helyett írhatod a Sheets("név") formát, ahol a név a munkalap neve.Sheets(1).Range("E4").Value = Sheets("Seged").Range("D2").ValueEnd WithWorkbooks(fnev).Close SaveChanges:=True 'a változás után bezárjuk a munkafüzetetfnev = Dir()LoopMsgBox "Kész."End Sub
Továbbá a For ciklusra sincs szükség, hiszen a neveket a Dir parancs adja vissza..
Üdv. -
Fferi50
Topikgazda
válasz
Csabex
#52825
üzenetére
Szia!
A második kérdésedre egy ötlet - bár nem legördülő menü...
Beszúrsz ActiveX parancsgombokat, amiknek a jobb egérgomb - tulajdonságok menüpontban megjelenő Properties ablakában megkeresed a Picture tulajdonságot, ide bemásolod a megfelelő logot. A parancsgomb(ok)hoz hozzárendeled a szükséges makró(ka)t.
Igaz, ebben az esetben egy oszlopra/sorra szükséged van a parancsgombok elhelyezésére, de talán nem zavar túlságosan.
Másik megoldási lehetőség, hogy a Ribbonra kitehetsz saját Menücsoportokat, amelyben lehet legördülő ikonokat is definiálni. Ehhez szükség van egy szerkesztőre pl. Office RibbonX Editorra. Ha gondolod, privátban tudok valamennyi segítséget adni hozzá hétvége felé.
Üdv. -
föccer
nagyúr
válasz
Csabex
#52827
üzenetére
A második az nekem fekete lyuk. Régen néztem ezt és elvileg combobox-al meg lehet csinálni, de azt még nem néztem meg sosem, hogy hogyan kell megcsinálni.
Meg lehet csinálni azt is, hogy egy megadott könyvtárban lévő összes fájlt szépen megnyitja és menti, de azt így fejből nem tudom beírni. Egy fájlrendszer objektumot kell definiálni és azzal megoldható.
-
föccer
nagyúr
válasz
Csabex
#52825
üzenetére
LEgyen egy seged munkalapon A1-től A16-ig felsorola a munkafüzetek nevei, B1-től B16-ig a munkafüzetek nevei. D1-be a D4 cellába bekerülő, D2-be az E4-be bekerülő. D3-ba =darab2(A:A)
Rakj ki egy gombot a fejlesztőeszközök menüből, amire a megírt makrót fogod rakni.
Sub Masolas()Dim i As IntegerFor i = 1 To Sheets("Seged").Range("D3").ValueWorkbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Sheets("Seged").Cells(i, 2).Value).Range("D4").Value = Sheets("Seged").Range("D1").ValueWorkbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Sheets("Seged").Cells(i, 2).Value).Range("E4").Value = Sheets("Seged").Range("D2").ValueNextMsgBox "Kész."End SubHa ugyan az a munkalap néven van az összes munkafüzetben, akkor lehet egyszerűsíteni, hogy nem hazsnálod a Seged B oszlopát. Akkor így módosul:
Sub Masolas()Dim i As IntegerDim Cel_Ws As StringCel_Ws = "CélMunkafüzetNeve"For i = 1 To Sheets("Seged").Range("D3").ValueWorkbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Cel_Ws).Range("D4").Value = Sheets("Seged").Range("D1").ValueWorkbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Cel_Ws).Range("E4").Value = Sheets("Seged").Range("D2").ValueNextMsgBox "Kész."End Sub -
Fferi50
Topikgazda
válasz
Csabex
#48678
üzenetére
Szia!
Ha szövegformátumú a cella, akkor a keresés 5, csere 7, -re.
Ha szám formátum, akkor másként lehet:
Ha pl. 7-re szeretnéd cserélni, akkor egy segédcellába beírod 2, majd ezen a cellán Ctrl+C (azaz másolás), utána a kijelölt tartományon irányított beillesztés - művelet: összeadás. Ezután a segédcellát törölheted.
Üdv.
Új hozzászólás Aktív témák
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- Game Pass Ultimate előfizetések 1 - 36 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN! AKCIÓ!
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- 203 - Lenovo Legion Pro 5 (16ARX8) - AMD Ryzen 7 7745HX, RTX 4070
- EREDETI NINTENDO Pokemon Go Plus autocatcher dobozban eladó
- 512GB NVMe SSD, 1 év gar - 2230
- Dell Precision 5530 15,6" UHD touch, i7 8850H, 16GB RAM, 4GB VGA, 512GB SSD, jó akku, számla, gar
- Dell Precision 7550 i7-10850H 32GB 512GB Nvidia RTX3000 6GB 1 év garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Fferi50