Формулаларды сілтемені ауыстырмай көшіріңіз

проблема

Бізде осындай қарапайым кесте бар делік, онда сомалар екі қалада әр ай үшін есептеледі, содан кейін жиынтық J2 сары ұяшықтағы бағам бойынша еуроға түрлендіріледі.

Формулаларды сілтемені ауыстырмай көшіріңіз

Мәселе мынада, егер сіз D2:D8 ауқымын формулалармен парақтың басқа жеріне көшірсеңіз, Microsoft Excel бағдарламасы осы формулалардағы сілтемелерді автоматты түрде түзетіп, оларды жаңа орынға жылжытады және санауды тоқтатады:

Формулаларды сілтемені ауыстырмай көшіріңіз

Тапсырма: есептеу нәтижелерін сақтай отырып, формулалар өзгермейтін және сол қалпында қалуы үшін формулалары бар диапазонды көшіріңіз.

1-әдіс. Абсолюттік сілтемелер

Алдыңғы суреттен көріп отырғаныңыздай, Excel тек салыстырмалы сілтемелерді ауыстырады. $J$2 сары ұяшыққа абсолютті ($ белгілері бар) сілтеме қозғалмады. Сондықтан формулаларды дәл көшіру үшін барлық формулалардағы барлық сілтемелерді абсолютті сілтемелерге уақытша түрлендіруге болады. Формула жолағында әрбір формуланы таңдап, пернені басу керек F4:
Формулаларды сілтемені ауыстырмай көшіріңіз
Жасушалардың көп санымен бұл опция, әрине, жоғалады - бұл тым ауыр.

2-әдіс: Формулаларды уақытша өшіру

Көшіру кезінде формулалардың өзгеруін болдырмау үшін Excel оларды формула ретінде қарастыруды тоқтататынына (уақытша) көз жеткізу керек. Мұны теңдік белгісін (=) әдетте формулаларда табылмайтын кез келген басқа таңбамен ауыстыру арқылы жасауға болады, мысалы, көшіру уақыты үшін хэш белгісі (#) немесе амперсанттар жұбы (&&). Бұл үшін:

  1. Формулалары бар ауқымды таңдаңыз (біздің мысалда D2:D8)
  2. басыңыз Ctrl + H пернетақтада немесе қойындыда Басты – Табыңыз және таңдаңыз – Ауыстыру (Басты бет — Табу және таңдау — ауыстыру)

    Формулаларды сілтемені ауыстырмай көшіріңіз

  3. Пайда болған диалогтық терезеде біз нені іздейтінімізді және немен алмастыратынымызды және ішіне енгізіңіз Параметрлер (Опциялар) нақтылауды ұмытпаңыз Іздеу аумағы – Формулалар. басамыз Барлығын ауыстырыңыз (Барлығын ауыстыру).
  4. Алынған ауқымды өшірілген формулалармен қажетті жерге көшіріңіз:

    Формулаларды сілтемені ауыстырмай көшіріңіз

  5. ауыстырыңыз # on = сол терезені пайдаланып, формулаларға функционалдылықты қайтару.

3-әдіс: Блокнот арқылы көшіру

Бұл әдіс әлдеқайда жылдам және оңай.

Пернелер тіркесімін басыңыз Ctrl+Ё немесе батырма Формулаларды көрсету қойындысы формула (Формулалар — формулаларды көрсету), формуланы тексеру режимін қосу үшін – нәтижелердің орнына ұяшықтар олар есептелетін формулаларды көрсетеді:

Формулаларды сілтемені ауыстырмай көшіріңіз

D2:D8 диапазонымызды көшіріп, оны стандартқа қойыңыз қойын дәптер:

Формулаларды сілтемені ауыстырмай көшіріңіз

Енді қойылған барлық нәрсені таңдаңыз (Ctrl + A), оны алмасу буферіне қайта көшіріңіз (Ctrl + C) және параққа қажетті жерге қойыңыз:

Формулаларды сілтемені ауыстырмай көшіріңіз

Түймені басу ғана қалады Формулаларды көрсету (Формулаларды көрсету)Excel бағдарламасын қалыпты режимге қайтару үшін.

Ескерту: бұл әдіс кейде біріктірілген ұяшықтары бар күрделі кестелерде сәтсіздікке ұшырайды, бірақ көп жағдайда ол жақсы жұмыс істейді.

4-әдіс. Макрос

Егер сілтемелерді ауыстырмай-ақ жиі формулаларды көшіруге тура келсе, онда бұл үшін макросты пайдалану мағынасы бар. Пернелер тіркесімін басыңыз Alt + F11 немесе батырма Visual Basic қойындысы әзірлеуші (Әзірлеуші), мәзір арқылы жаңа модульді кірістіріңіз Кірістіру – модуль  және осы макростың мәтінін сол жерге көшіріңіз:

Sub Copy_Formulas() Dim copyRange диапазон ретінде, pasteRange ретінде диапазон Қате Жалғастыру Келесі орнату copyRange = Application.InputBox("Көшіру үшін формулалары бар ұяшықтарды таңдаңыз.", _ "Формулаларды дәл көшіру", Әдепкі:=Selection.Address, Type := 8) copyRange ешнәрсе болмаса, шығыңыз Sub Set pasteRange = Application.InputBox("Енді қою ауқымын таңдаңыз." & vbCrLf & vbCrLf & _ "Ауқым өлшемі бойынша бастапқы ұяшықтар ауқымына тең болуы керек " & vbCrLf & _ " көшіру үшін." , "Формулаларды дәл көшіру", _ Әдепкі:=Selection.Address, Type:=8) Егер pasteRange.Cells.Count <> copyRange.Cells.Count Содан кейін MsgBox "Көшіру және қою ауқымдарының өлшемі әр түрлі болады!", vbExclamation, "Көшіру қатесі" Егер pasteRange ештеңе болмаса, ішкі соңынан шығыңыз, онда Sub-дан шығыңыз Else pasteRange.Formula = copyRange.Formula Аяғы болса, ішкі

Макросты іске қосу үшін түймені пайдалануға болады. макростар қойындысы әзірлеуші (Әзірлеуші ​​— макростар) немесе пернелер тіркесімі Alt + F8. Макросты іске қосқаннан кейін ол сізден бастапқы формулалар мен кірістіру ауқымы бар ауқымды таңдауды сұрайды және формулаларды автоматты түрде көшіреді:

Формулаларды сілтемені ауыстырмай көшіріңіз

  • Формулалар мен нәтижелерді бір уақытта ыңғайлы қарау
  • Excel формулаларында R1C1 анықтамалық мәнері не үшін қажет
  • Формулалары бар барлық ұяшықтарды қалай тез табуға болады
  • PLEX қондырмасынан нақты формулаларды көшіруге арналған құрал

 

пікір қалдыру