- gban: Ingyen kellene, de tegnapra
- hdanesz: Hyundai Ioniq 28kWh - Első benyomások - második felvonás
- Elektromos rásegítésű kerékpárok
- Viber: ingyen telefonálás a mobilodon
- sziku69: Fűzzük össze a szavakat :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Gurulunk, WAZE?!
- Luck Dragon: Asszociációs játék. :)
- btz: Internet fejlesztés országosan!
- vrob: Az IBM PC és a játékok a 80-as években
-
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
-
Mutt
senior tag
Hello,
...miért áll meg a debug a Range("B21:B" & usor). Select sornál....
Az egyik probléma, hogy az usor-t rosszul határozod meg.
A .Range("B21:B" & Rows.Count).End(xlDown).Row + 1 azt mondja, hogy menjen el az utolsó sorba és használja a következőt, az utolsó után már nincs sor.Ha a B21 után használt utolsó cella sora kell, akkor xlDown helyett xlUp-ot használj.
A másik probléma itt, hogy a .Range("B21:B" & Rows.Count).End nem jó, mivel azt csinálod hogy B21:B1048576-os tartományt kijelölöd, a kurzor továbbra is B21-ben van, de nyomsz egy END-et vagyis elugorsz végre B1048576-re. Ez így felesleges, egy lépésben csináld: Range("B" & Rows.Count).End
A kódban a Selectek miatt nem lehet követni, hogy éppen hova akarsz dolgozni. Valójában az aktív lapod nem változik, maradsz a beolvas-on, ezért javaslom, hogy rendesen írd ki, hogy éppen hol akarsz módosítani.
pl. Range("B21:B" & usor).Select helyett
ThisWorkbook.Sheets(lapnev).Range("B21:B" & usor).SelectVégül pedig lehet pár dolgot egylépésben is csinálni.
Range("D2").Select
Selection.Copyhelyette:
Range("D2").CopyVagy a végén:
Sheets("beolvas").Select
Range("A2").Select
Selection.Clearhelyette:
Sheets("beolvas").Range("A2").ClearItt van a javított változat:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim usor As Long
Dim lapnev As String
If Range("A2") <> Empty And Range("A4") = "OK" Then
Range("D2").Copy
lapnev = Range("F2")
Sheets(lapnev).Select
usor = ThisWorkbook.Sheets(lapnev).Range("B" & Rows.Count).End(xlUp).Row + 1
ThisWorkbook.Sheets(lapnev).Range("B21:B" & usor).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("beolvas").Range("A2").Clear
End If
End Subüdv
Új hozzászólás Aktív témák
Hirdetés
- Adobe Előfizetések - Adobe Creative Cloud All Apps - 12 Hónap - NYÁRI AKCIÓ!
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Most kedvező áron!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Gyermek PC játékok
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- 127 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4080 (ELKELT)
- BESZÁMÍTÁS! 4TB Toshiba P300 SATA HDD meghajtó garanciával hibátlan működéssel
- Samsung Galaxy A22 5G 128GB, Kártyafüggetlen, 1 Év Garanciával
- REFURBISHED és ÚJ - HP Thunderbolt Dock G2 230W docking station (3TR87AA)
- REFURBISHED - HP USB-C Universal Dock G1 docking station (DisplayLink)
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged