Turinys
Problema
Tarkime, turime tokią paprastą lentelę, kurioje kiekvienam mėnesiui dviejuose miestuose suskaičiuojamos sumos, o tada suma iš geltonojo langelio J2 paverčiama eurais.
Problema ta, kad jei nukopijuosite diapazoną D2:D8 su formulėmis kur nors kitoje lapo vietoje, tada Microsoft Excel automatiškai pataisys nuorodas šiose formulėse, perkels jas į naują vietą ir nustos skaičiuoti:
Užduotis: nukopijuokite diapazoną su formulėmis, kad formulės nesikeistų ir liktų tokios pat, išlaikant skaičiavimo rezultatus.
1 būdas. Absoliučios sąsajos
2 būdas: laikinai išjunkite formules
Norėdami, kad formulės nepasikeistų kopijuojant, turite (laikinai) įsitikinti, kad „Excel“ nustojo jas laikyti formulėmis. Tai galima padaryti pakeičiant lygybės ženklą (=) bet kokiu kitu simboliu, kurio paprastai nėra formulėse, pvz., maišos ženklu (#) arba ampersandų pora (&&) kopijavimo laikui. Už tai:
- Pasirinkite diapazoną su formulėmis (mūsų pavyzdyje D2:D8)
- Spauskite Ctrl + H klaviatūroje arba skirtuke Pagrindinis puslapis – Rasti ir pasirinkti – Pakeisti (Pagrindinis – Rasti ir pasirinkti – Pakeisti)
- Pasirodžiusiame dialogo lange įveskite tai, ko ieškome ir kuo keičiame, ir į jį Parametrai (Galimybės) nepamirškite paaiškinti Paieškos sritis – Formulės. Paspaudžiame Pakeiskite visus (Pakeisti viską).
- Nukopijuokite gautą diapazoną su išjungtomis formulėmis į reikiamą vietą:
- pakeisti # on = atgal naudodami tą patį langą, grąžindami formulių funkcionalumą.
3 būdas: nukopijuokite naudodami užrašų knygelę
Šis metodas yra daug greitesnis ir paprastesnis.
Paspauskite spartųjį klavišą Ctrl+Ё arba mygtuką Rodyti formules kortelė formulė (Formulės – Rodyti formules), įjungti formulių tikrinimo režimą – vietoje rezultatų langeliuose bus rodomos formulės, pagal kurias jie skaičiuojami:
Nukopijuokite mūsų diapazoną D2:D8 ir įklijuokite jį į standartą Notepad:
Dabar pasirinkite viską, kas įklijuota (Ctrl + A), dar kartą nukopijuokite į mainų sritį (Ctrl + C) ir įklijuokite į lapą reikiamoje vietoje:
Belieka tik paspausti mygtuką Rodyti formules (Rodyti formules)norėdami grąžinti Excel į įprastą režimą.
Pastaba: šis metodas kartais nepavyksta sudėtingose lentelėse su sujungtais langeliais, tačiau daugeliu atvejų jis veikia gerai.
4 būdas. Makro
Jei dažnai tenka daryti tokį formulių kopijavimą nekeičiant nuorodų, prasminga tam naudoti makrokomandą. Paspauskite spartųjį klavišą Alt + F11 arba mygtuką "Visual Basic" kortelė ryškalas (Programuotojas), įdėkite naują modulį per meniu Įterpimas – modulis ir nukopijuokite šios makrokomandos tekstą ten:
Sub Copy_Formulas() Pritemdykite copyRange kaip diapazoną, pasteRange kaip diapazoną, kai įvyko klaida Tęsti Next Set copyRange = Application.InputBox("Pasirinkite langelius su formulėmis, kurias norite kopijuoti.", _ "Tiksliai nukopijuokite formules", Default:=Pasirinkimas. Adresas, Tipas := 8) Jei copyRange nėra nieko, tada išeikite iš Sub Set pasteRange = Application.InputBox("Dabar pasirinkite įklijavimo diapazoną." & vbCrLf & vbCrLf & _ "Didžiapas turi būti lygus pradiniam " & vbCrLf & _ " langelių diapazonui nukopijuoti." , "Tiksliai nukopijuoti formules", _ Default:=Selection.Address, Type:=8) If pasteRange.Cells.Count <> copyRange.Cells.Count Tada MsgBox "Kopijuoti ir įklijuoti diapazonai skiriasi dydžiu!", vbŠauktukas, "Kopijavimo klaida" Išeiti antrinės dalies pabaiga, jei jei pasteRange nėra nieko, tada išeiti iš sub. Else pasteRange.Formula = copyRange.Formula pabaiga, jei pabaiga
Galite naudoti mygtuką makrokomandai paleisti. Makrokomandos kortelė ryškalas (Kūrėjas – makrokomandos) arba spartusis klavišas Alt + F8. Paleidus makrokomandą, ji paprašys pasirinkti diapazoną su originaliomis formulėmis ir įterpimo diapazoną ir automatiškai nukopijuos formules:
- Patogus formulių ir rezultatų peržiūra vienu metu
- Kodėl „Excel“ formulėse reikalingas R1C1 nuorodos stilius
- Kaip greitai rasti visas ląsteles su formulėmis
- Įrankis tikslioms formulėms nukopijuoti iš PLEX priedo