Hirdetés
- Luck Dragon: Asszociációs játék. :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- hcl: Olympus E-PL1 nyomozás
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- MasterDeeJay: Asus B150-Plus D3 coffeetime mod! (DDR3)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- hcl: GPT diszk kisebbre klónozása
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
-
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
- Microsoft Office 2024 Home Business dobozos
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Autodesk & CorelDRAW - Azonnal - Számlával - Garanciával
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- PC Szervizeket, Gépépítőket keresek B2B szoftver partnerségre (E-számlával)
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Keresek Xbox Series S / Series X / Playstation 5 konzolokat
- iPhone 11 Pro 64GB 95% (3 hónap garancia)
- Kezdő Gamer PC-Számítógép! Csere-Beszámítás! I7 4770K / GTX 1060 6GB /16GB RAM /250SSD + 500GB SSHD
- Nvidia Quadro M2000/ P2000/ P4000/ P5000/ RTX 4000/ RTX 5000/ RTX A2000
- -68%OFF HP Spectre x360 14 (14-ef2276ng) i7-1355U/16GB/1TBSSD/3K 3000X2000 Amoled
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50