2015-07-31 11 views
0

Может ли кто-нибудь помочь мне в создании всех значений моих выбранных значений диапазона Абсолют (или применение абсолютной формулы для каждой ячейки в диапазоне) с помощью одной кнопки с использованием Excel VBA?Excel Macro или VBA для определения абсолютных значений диапазона

A    B    C 
5.119999886 -13.06999969 -13.14000034 
-5.76999998 -12.52000046 -12.78999996 
-5.88000011 -13.69999981 -14.13000011 
5.46999979 -12.61999989 -12.48999977 
+0

Не точно VBA, но при необходимости можно записать, выберите диапазон данных, нажмите Ctrl H (Заменить), найдите Найти, добавьте знак «-» и замените все. Это удалит отрицательный знак из всех чисел, и он станет абсолютным. – Vasim

+0

Работал хорошо, но это заняло время только потому, что у меня 6 столбцов и 150 000 строк, так или иначе, спасибо, что решила мою проблему. –

ответ

0

Вы можете сделать что-то вроде этого:

Sub MakeAbsolute() 

     Dim c As Range 
     Dim rngToAbs As Range 

     'Set the worksheet name and range appropriately 
     Set rngToAbs = Worksheets("Sheet1").Range("A1:C2") 

     For Each c In rngToAbs 
       c.Value = Abs(c.Value) 
     Next c 

End Sub 

Вы должны изменить Sheet1 на ваше имя рабочего листа и A1:C2 на любой диапазон ячеек вы хотите взять абсолютное значение.

Надеюсь, код достаточно прост, чтобы понять, но основная идея заключается в том, что мы объявим конкретный диапазон, пропустим каждую ячейку в этом диапазоне и изменим значение этой ячейки как абсолютное значение, применив Abs функция.

+0

Спасибо, что это сработало хорошо, но я не хочу исправлять диапазон или имя листа, я хочу использовать его в любом месте в моей книге, просто выбрав желаемый диапазон и запустив код Macro/VBA. –

0

Рассмотрим:

Sub dural() 
    Dim rng As Range 
    Set rng = Range("A1:F10") 
    rng.Replace what:="-", lookat:=xlPart, replacement:="" 
End Sub 
+0

Спасибо, это сработало, но я не хочу фиксированного диапазона. –

+0

Затем замените 'Set rng = Range (" A1: F10 ")' на 'Set rng = Selection' –

0

не совсем VBA, но при необходимости могут быть записаны.

Выберите диапазон данных, нажмите Ctrl H (Заменить), найдите Найти, добавьте знак «-» и замените все. Это удалит отрицательный знак из всех чисел, и он станет абсолютным.

Примечание: Как упоминалось в комментарии, OP соглашается с тем, что это работает для него, поэтому отправляя его в качестве ответа.