Hirdetés

2024. május 10., péntek

Gyorskeresés

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)

Téma összefoglaló

Téma összefoglaló

  • Utoljára frissítve: 2023-11-13 08:31:56

LOGOUT.hu

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.

Összefoglaló kinyitása ▼

Hozzászólások

(#33142) Fferi50 válasza lenkei83 (#33141) üzenetére


Fferi50
őstag

Szia!

Szerintem kicsit túlkombinálod.
Ez a függvényes, ami csak 1 cella esetén müxik jól.
If (sh.CodeName = "munka5" Or 1 <= target.Column <= 2) Then
regiertek = target.Value ' ez volt a target értéke
Application.EnableEvents = False
Application.Undo
target.Cells.NumberFormat = "@"
If Application.CutCopyMode <> False Then ' ha másolásról van szó, akkor
target.PasteSpecial Paste:=xlPasteValues ' most bemásoljuk az értéket - ami megegyezik az előzőleg regiertekbe tett értékkel!
Application.CutCopyMode = False
target.Value = RemoveNotNum(regiertek) 'ezért itt jó a regiertek és a target.value is!!
Else
target.Value = RemoveNotNum(regiertek) 'ha nem másolás volt, akkor is kiszedjük a számokat
EndIf
mivel ez a két sor azonos, lehet az EndIf után tenni.

Ez pedig a Sub-bal, itt viszont a meghíváskor RANGE-et kell megadni, nem értéket!

If (sh.CodeName = "munka5" Or 1 <= target.Column <= 2) Then
regiertek = target.Value
Application.EnableEvents = False
Application.Undo
target.Cells.NumberFormat = "@"
If Application.CutCopyMode <> False Then
target.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
RemoveNotNum Target 'regiertek
Else
Target.Value=regiertek
RemoveNotNum Target 'regiertek
End If

Ez működik több cellás cél esetén is (meg egy cella esetén is).

Üdv.

Útvonal

Fórumok  »  OS, alkalmazások  »  Microsoft Excel topic (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.