-
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
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - 15% AKCIÓ
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- MS SQL Server 2016, 2017, 2019
- Fallout 4 Pip-Boy Edition eladó
- G.Skill Aegis 16GB DDR4 3200MHz VADIÚJ, GARANCIÁS!
- Új DELL Inspiron 14 (5435)/AMD RYZEN 7-7730U/16GB/512 SSD/14"/FHD/IPS/Garancia
- ÁRGARANCIA! Épített KomPhone Ultra 7 265KF 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
- AKCIÓ! Sony Playstation 5 PRO 2TB Digital játékkonzol garanciával extrákkal hibátlan működéssel
- iKing.Hu - Apple iPhone 13 Pro Max Graphite ProMotion 120 Hz, Pro kamerák 256 GB-100%-3 hó gari!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

Fferi50