-
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ítod
Dim fnev As String
fnev = Dir("F:\123\*.xlsx")
Do While fnev <> ""
Workbooks.Open "F:\123\" & fnev
With 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").Value
End With
Workbooks(fnev).Close SaveChanges:=True 'a változás után bezárjuk a munkafüzetet
fnev = Dir()
Loop
MsgBox "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 Integer
For i = 1 To Sheets("Seged").Range("D3").Value
Workbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Sheets("Seged").Cells(i, 2).Value).Range("D4").Value = Sheets("Seged").Range("D1").Value
Workbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Sheets("Seged").Cells(i, 2).Value).Range("E4").Value = Sheets("Seged").Range("D2").Value
Next
MsgBox "Kész."
End Sub
Ha 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 Integer
Dim Cel_Ws As String
Cel_Ws = "CélMunkafüzetNeve"
For i = 1 To Sheets("Seged").Range("D3").Value
Workbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Cel_Ws).Range("D4").Value = Sheets("Seged").Range("D1").Value
Workbooks(Sheets("Seged").Cells(i, 1).Value).Sheets(Cel_Ws).Range("E4").Value = Sheets("Seged").Range("D2").Value
Next
MsgBox "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
- Peugeot, Citroën topik
- AMD vs. INTEL vs. NVIDIA
- Formula-1
- Eredeti játékok OFF topik
- Egérpad topik
- Battlefield 6
- Ubiquiti hálózati eszközök
- Újjászületés: szombattól új szerverkörnyezetben a PROHARDVER! lapcsalád
- „Új mérce az Android világában” – Kezünkben a Vivo X300 és X300 Pro
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- További aktív témák...
- Telefon felváráslás!! Xiaomi 13T, Xiaomi 13T Pro, Xiaomi 14T, Xiaomi 14T Pro
- ÓRIÁSI AKCIÓK / MICROSOFT WINDOWS 10,11 / OFFICE 16,19,21,24 / VÍRUS,VPN VÉDELEM / SZÁMLA / 0-24
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AS USB-C Dock Gen2 (akár 3x4K felbontás)
- Xiaomi Redmi 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Gigabyte Z790 i7 14700KF 32GB DDR5 1TB SSD RTX 4070S 12GB Be Quiet! Pure Base 501 750W
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő