-
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
bteebi
#26162
üzenetére
Szia!
Az világos, hogy honnan szeretnél másolni, az viszont nem egészen, hogy hova.
Mert a "forrás" munkafüzet megnyitása után az abban levő munkalap válik aktívvá, tehát az itt
" For oszlop = 2 To 10 Step 4
'ebben a sorban valószínűleg több hiba is van:
ActiveSheet.Cells(19 + 2 * adat, oszlop) = 1000 * (Left(fajlnev.Sheets("Sheet1").Cells(36 + 2 * (adat - 1), 16), Len(fajlnev.Sheets("Sheet1").Cells(36 + 2 * (adat - 1), 16) - 1)))
ActiveSheet.Cells(19 + 2 * adat, oszlop).NumberFormat = "0"
Next oszlop"
hivatkozott Activesheet sajnos a forrás fájlodban van.Tehát ebben az esetben neked nem a forrás fájl hivatkozással van problémád, hanem a cél fájl hivatkozásával.
Ezt pedig úgy tudod megoldani, hogy az "eredeti" munkafüzeted kitöltendő munkalapját (amiből a többit megnyitod), egy változóhoz rendeled mielőtt még egy másik fájlt megnyitnál (pl.Set cellap=activesheet), mivel most még az az aktív munkalap.
Ezek után a számolás: cellap.cells(19+2*adat,oszlop) -ra kell hogy hivatkozzon és persze akkor fajlnev.sheets("Sheet1").cells helyett maradhat az Activesheet.cells."az eredeti adatok általános formátuma pl. "3.2k"" Ez azt jelenti, hogy mindig van a szám után egy betű és a formátum szöveg?
Ha igy van, akkor a használható a replace függvény is: replace(activesheet.cells(36+2*(adat-1),16),right(activesheet.cells(36+2*(adat-1),16),1),"").
Viszont a "beszúrt" programsorból úgy látom, az eredeti érték számformátum, ezért működik a közvetlen szorzás 1000-el, vagyis nem kell semmilyen levágás, átalakítás!Még valami: ahol Activesheet.Cells van, ott az Activesheet elhagyható, mert az az alapértelmezés.
Üdv.
Új hozzászólás Aktív témák
- Parfüm topik
- 5.1, 7.1 és gamer fejhallgatók
- Kerékpárosok, bringások ide!
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- Eredeti játékok OFF topik
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Gyúrósok ide!
- Assassin's Creed: Valhalla
- Fejhallgató erősítő és DAC topik
- Milyen TV-t vegyek?
- További aktív témák...
- Microsoft és egyéb dobozos és OEM szoftverek
- Game Pass Ultimate előfizetések 3 - 36 hónapig azonnali kézbesítéssel! 13 hónap ultimate - 50.000 ft
- HP. Laptop. i5. Model: 15-da1002nq
- Játékkulcsok ! : PC Steam, EA App, Ubisoft, Windows és egyéb játékok
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem.
- HIBÁTLAN iPhone 15 Pro 128GB Natural Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS4538
- ASUS TUF Gaming F16 Laptop! i7-14650HX / RTX 5060 / 16GB DDR5 / 1TB NVMe! BeszámítOK
- iKing.Hu - Apple MacBook Pro 16 M1 Pro (2021) 32GB/512GB karcmentes 91% akku 188 ciklus
- Apple iPhone 12 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP EliteBook 830 G8 13,3" i7 -1185 G7, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Fferi50