Инженерные расчеты

В инженерной среде нет ничего необычного в том, чтобы каким-либо образом «нормализовать» числа. Например, вам может потребоваться показать числовые значения, нормализованные до кратных 10 ^ 3, так что 7340 выражается как 7,34, а 73400 выражается как 73,4.

В Excel можно использовать настраиваемый числовой формат для выражения информации в экспоненциальном представлении, который нормализует отображение числа до кратного 10 ^ 3. Для этого выполните следующие действия:

  1. Выберите ячейки, которые нужно отформатировать.
  2. Выберите параметр «Ячейки» в меню «Формат». Excel отображает диалоговое окно «Формат ячеек».
  3. Убедитесь, что выбрана вкладка «Число».
  4. В списке категорий формата выберите «Пользовательский». (См. Рис. 1.)
  5. Рис. 1. Вкладка «Число» диалогового окна «Формат ячеек».

  6. В поле «Тип» введите ## 0.0E + 0 в качестве формата . (Это дает только одно число справа от десятичной точки. Если вы хотите больше, увеличьте количество нулей после десятичной точки.)
  7. Нажмите OK.

Теперь, когда вы вводите в ячейку число, например 7340, Excel отображает его как 7.3E + 3. Из-за того, как был введен формат ячейки, часть после E всегда будет кратна 3.

Это нормально и хорошо, но что, если вы хотите только 7,3 в ячейке, а затем метрический префикс с единицей измерения в соседней ячейке, например килограммы? Это немного сложнее, но это можно сделать с помощью формул. Например, предположим, что у вас есть исходный номер в ячейке A2, вам нужен нормализованный номер в ячейке B2, а метический префикс и название единицы в ячейке C2. Все, что вам нужно сделать, это ввести следующую формулу в ячейку B2:

 = IF (OR (A2> = 1, A2  

Предполагая, что единицы, с которыми вы работаете, являются воображаемой единицей, называемой foo, в ячейке C2 вы должны использовать другую формулу, например следует:

 = IF (OR (A2> = 1, A2  

Эти формулы могут показаться слишком длинными, и они таковыми являются. Однако они будут работать для любого числа от -9.99999E-18 до 9.99999E + 20. Например, если вы поместите число .000125 в ячейку A2, тогда ячейка B2 будет содержать 125, а ячейка C2 будет содержать Millifoos.

Если вы предпочитаете не использовать более длинные формулы, подобные этим, в ваших книгах , вы можете разработать пару функций VBA, чтобы добиться цели. Следующая функция MySciNum возвращает нормализованное число.. Таким образом, вы должны использовать = MySciNum (A2) в ячейке B2, чтобы получить такие же результаты, как указано выше:

 Функция MySciNum (BaseNum As Double) As Double Select Case BaseNum Case Is> = 1 while Abs  (BaseNum)> 1000 BaseNum = BaseNum/1000 Wend Case 0 'Ничего не делать Case Else While Abs (BaseNum)  

Эта функция только возвращает число. Чтобы вернуть единицы с соответствующим префиксом метрики, вы должны использовать следующую функцию. Все, что вам нужно сделать, это передать ему ссылку на ячейку и имя отдельного объекта. Например, вы можете использовать = MySciPre (A2, «foo»). Макрос выглядит следующим образом:

 Функция MySciPre (BaseNum As Double, Unit As String) As String Dim OrigNum As Double Dim Pref As Integer Dim Temp As String Pref = 0 OrigNum = BaseNum Select Case BaseNum Case  Is> = 1 Пока Abs (BaseNum)> 1000 BaseNum = BaseNum/1000 Pref = Pref + 1 Wend Case 0 Pref = 99 Case Else Пока Abs (BaseNum)  0 Then Temp = LCase (Temp) Temp = UCase (Left (Temp)  , 1)) и Mid (Te  mp, 2) If Abs (OrigNum)  1 Then Temp = Temp & "s" End If MySciPre = TempEnd Function 

Оцените статью
Frestage.ru
Добавить комментарий