Як перетворити рядок рівнянь в Excel у фактичне рівняння?


0

У мене є лист Excel з базовим макетом наступним чином:

| Setting | Value |
| x + 10  | ....  |
| x + 20  | ....  |
| x + 35  | ....  |

Де Value Комірку для кожного рядка обчислюється на основі x + 10і т.д. Клітини в Settings стовпці форматуються як рядки, оскільки вони призначені для наочного представлення значення налаштування. Чи є простий спосіб перетворення x + 10 від рядка до числового значення, заданого значенням x доступна в комірці десь у аркуші?

Я розглянув кілька подібних питань, наприклад Excel перетворює рівняння рядків на математичну функцію , але самі питання включають більше складності, ніж те, що я роблю, і я шукаю просте рішення, яке не стосується VBA.

Відповіді:


2

Існує вбудована в стару функцію VBA, що називається оцінкою, яка приймає точну строку, яка є прийнятною математичною формулою Excel і перетворює її в числа і оператори і вирішує. У вашому випадку ви маєте два кроки. Одним з них є виконання заміни для X, а друге - вирішення отриманого рівняння.

Це рішення створить допоміжну колонку лише для ілюстрації кроків. Останній клітині не потрібен допоміжний стовпець, доки формули з різних кроків будуть правильно вкладені в наступну формулу.

ЧАСТИНА 1 - ЗАМІНА

Подивіться на формулу заміщення. Ця формула буде шукати заданий рядок в іншій комірці і замінити її іншим значенням.

SUBSTITUTE(string of text, text you are looking for, text you want to change to, optional occurrence to change)

У тимчасовій допоміжній колонці використовуйте наступну формулу та скопіюйте її вниз. Припустимо, що ваше значення для X знаходиться в комірці Q4. і перша формула, з якою ви маєте справу, знаходиться в B2.

=SUBSTITUTE(B2,"X",$Q$4)

Отже, якщо X дорівнює 10, слід завершити роботу з стовпцем, який виглядає так:

| Setting |helper | Value |
| x + 10  |10 + 10| ....  |
| x + 20  |10 + 20| ....  |
| x + 35  |10 + 35| ....  |

ЧАСТИНА 2 - Оцінка

кілька критичних кроків тут. Виберіть клітинку праворуч від 10 + 10. Причина полягає в тому, що коли ми робимо цю формулу, ми хочемо, щоб вона мала справу з клітинами щодо позиції клітини, в якій ми створюємо формулу. Для цього перейдіть на вкладку FORMULAS на стрічці. На стрічці Формули в розділі визначених імен виберіть Визначити ім'я. У полі "Ім'я" вкажіть його назву. Я, як правило, люблю ВІДПОВІДЬ. те, що ви виберете, буде таким, як ви будете посилатися на нього у вашій камері, як і будь-яка інша функція. У полі "Посилання" введіть наступне рівняння:

=Evaluate(C3)

Важливо, щоб ви залишили $ off посилання на клітинку. C3 в цьому випадку відноситься до осередку з 10 + 10. Після завершення натисніть кнопку OK. У цю клітинку, яку ви вибрали на початку, введіть

=ANSWER

Де ANSWER - назва вашої формули. Потім він повинен схопити клітку ліворуч і оцінити її і дати вам відповідь 20. Коли ви копіюєте стільницю, вона посилається на наступну формулу вниз і так далі, наскільки ви копіюєте.

Щоб зробити це без допоміжного стовпця, вам необхідно визначити формулу за допомогою формули-заміни, щоб ваша назва була схожа на:

=EVALUATE(SUBSTITUTE(B2,"X",$Q$4))

Тепер трюк в тому, що вам потрібно буде створити це для кожного робочого аркуша, який ви хочете використовувати його, і ваш нахиляє повторити назву вашої формули. Я ще не знайшов жодної роботи.


0

Ви можете зробити це за допомогою текстових редакторів, фактично - доки визначено, що змінні у ваших текстових формулах відображаються на певні клітинки робочого листа.

Спочатку скопіюйте текст-як-формулу в текстовий редактор, i.n. Notepad ++ (навіть Word або Windows Notepad може працювати для простих випадків).

Потім замінити ваші змінні на посилання на клітинки, наприклад, замінити x → A1.

Тепер перейдіть у формулу View в Excel, якщо ви використовуєте Excel 2010, це можна зробити, натиснувши формули - (група контрольних кнопок формул) - показати формули.

Далі скопіюйте нові формули з текстового редактора назад в Excel.

Нарешті, знову натисніть "показати формули", щоб вийти з View Formula. Вуаля!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.