Hirdetés
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- Parci: Milyen mosógépet vegyek?
- sziku69: Fűzzük össze a szavakat :)
- gban: Ingyen kellene, de tegnapra
- gerner1
- Meggyi001: Áram nélkül....méltóság nélkül.....
- Hieronymus: Az igaz barátság kezdete
-
LOGOUT
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
szix96
#24501
üzenetére
Szia!
Íme egy lehetőség:
Sub fileosszegzo()
Dim mf As Workbook, lap As Worksheet, fnev, usor As Long
Set mf = ActiveWorkbook
Set lap = ActiveSheet
Do While MsgBox("Akar adatokat beolvasni ?", vbYesNo) = vbYes
usor = lap.Range("A" & Rows.Count).End(xlUp).Row + 1
fnev = Application.GetOpenFilename()
If fnev <> False Then
Workbooks.Open Filename:=fnev ' megnyitás
Range("A8:E56").Copy Destination:=lap.Range("A" & usor)
'lap.Range("A56").PasteSpecial 'Beillesztés
ActiveWindow.Close False 'Bezárja
Range("A2").Select 'Rááll és vége
End If
Loop
MsgBox "Beolvasás vége!", vbInformation
End SubNéhány megjegyzés hozzá:
- az mf ebben az esetben teljesen felesleges, hiszen nem is használjuk a makróban
- a megnyitás után mindig a megnyitott munkafüzet lesz aktív - ezt lehet kihasználni a másolásnál amit lehet közvetlenül a célterületre "küldeni".
- a makró mindig az A oszlop első üres sorától másolja be a következő fájl adatait
- honnan tudod, hogy a megnyitott fájlban éppen az a munkalap az aktív, amire neked szükséged van? Ha csak egy munkalap van benne, akkor ok, de egyébként baj lehet, hiszen más esetleg (vagy akár Te is) elmozdíthatta az aktív munkalapot.
- természetesen a másoladó területet (ami most Range("A8.... nál kezdődik) szintén meg lehet adni úgy, hogy megkeressük a forrás fájlban - csak a szempontokat kell hozzá ismerni.
- a bezárásnál a False paraméter azt jelenti, hogy nem kell az esetleges változtatásokat menteni a forrásban
- a bezárás után ismét az eredeti fájlod lesz az aktív munkafüzet.A do while ciklus addig megy, amíg a kérdésre igent válaszolsz. Ha nem választasz fájlt, akkor nincs mit bemásolni, utána a kérdésre válaszolj nemmel, ha ténylegesen be akarod fejezni a beolvasást, vagy válassz fájlt és akkor folytatódik a beolvasás. (De ha igent válaszolsz és utána nem választasz fájlt, akkor a ciklus továbbra is "pörög" - ez szándékosan van így, hiszen el is téveszthetted a file választást.)
Üdv.
Új hozzászólás Aktív témák
- Vivo X300 Ultra - tárcsázz, ha van rá keret!
- Luck Dragon: Asszociációs játék. :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- BestBuy topik
- Áprilisi hardverpasziánsz
- VR topik
- Xbox tulajok OFF topicja
- Samsung Galaxy Felhasználók OFF topicja
- Parkside szerszám kibeszélő
- Milyen okostelefont vegyek?
- További aktív témák...
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- HP. Laptop. i5. Model: 15-da1002nq
- The Elder Scrolls Online Imperial Collector s Edition
- Samsung Galaxy Watch 4 LTE 6 hónap Garancia Beszámítás Házhozszállítás
- Lenovo ThinkPad 40AN Thunderbolt 3 Workstation Dock (Gen1)
- LG UltraGear 32GS60QC-B VA Monitor! 2560x1440 / 180Hz / 1ms / FreeSync
- iPhone 16 Pro Max 156GB Fekete Titán - 27% ÁFA (0397)
- Csere-Beszámítás! Apple Macbook Pro 2013 vége! 512GB SSD, I7, 16GB DDR3, Intel Iris Pro! Olvass!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50