Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
VBA скрипт, который проходится по всем ячейкам во второй колонке и удваивал их?
 

Пожалуйста, приведите пример VBA   скрипта, чтобы он проходился по всем ячейкам во второй колонке и удваивал их

То есть чтобы не мышкой вручную выделять все ячейки в колонки, я скриптом.

Буду очень благодарен !

 
Навскидку и на коленке
Код
Sub ddd()
 Dim dd&, i&
 dd = Cells(Rows.Count, 2).End(xlUp).Row
  For i = 1 To dd
    Cells(i, 2).Value = Cells(i, 2).Value * 2
  Next i
End Sub
не пинайте очень сильно,я пытаюсь научиться
 
Советую освоить спецкопипаст с умножением на скопированное значение - быстрее и проще чем ждать/писать и даже использовать макрос.
 
еще вариант,кнопка test
 
Код
Sub test()
     Dim z, i&: z = Range("B1:B" & Range("B" & Rows.Count).End(xlUp).Row).Value
    For i = 1 To UBound(z): z(i, 1) = z(i, 1) * 2: Next
   Range("B1").Resize(UBound(z), 1).Value = z
End Sub
Изменено: кузя1972 - 4 Июн 2018 09:49:03
 
Игорь, разве копирование множителя и спецвставка быстрее, чем нажать на кнопочку? ))
 
Между нажатием на кнопочку (на форуме) и появлением макроса (для одной конкретной работы) прошло 5 минут! А ещё нужно внедрить... Да за это время можно столько накопипастить!
Хотя конечно если именно эту работу нужно проделывать постоянно - нужна кнопочка :)
 
Цитата
Hugo написал:
нужна кнопочка
на которой макрос с
Цитата
Hugo написал:
спецкопипаст с умножением на скопированное значение
:D
Код
Sub tt()
    Set s_ = Selection 'что было выделено
    Application.ScreenUpdating = 0
    r1_ = Cells(Rows.Count, 2).End(3).Row
    With Cells(r1_ + 1, 2)
        .Value = 2
        .Copy
        Cells(1, 2).Resize(r1_).PasteSpecial Paste:=xlPasteValues, Operation:=xlMultiply
        .ClearContents
    End With
    s_.Select 'возвращаем выделение, которое было
    Application.ScreenUpdating = 1
End Sub
Изменено: _Boroda_ - 4 Июн 2018 10:53:53
Скажи мне, кудесник, любимец ба’гов...

 
Ну и мой вариант ))
Код
Sub qqq()
    [B2:B10] = Evaluate("B2:B10*2")
End Sub
 
Цитата
Hugo написал:
Хотя конечно если именно эту работу нужно проделывать постоянно - нужна кнопочка
Оно, конечно, если тех строк 100500 в буквальном смысле, то с одной стороны можно и кнопочку, а с другой — Ctrl+Shift+End не сильно и медленнее...
 
Цитата
StoTisteg написал:
Ctrl+Shift+End не сильно и медленнее...
Это если справа от столбца В ничего нет
Вангую - Контрл+Шифт+СтрелкаВниз
Это если в столбце В нет пустых ячеек между ячейками с данными
Скажи мне, кудесник, любимец ба’гов...

 
Укорачиваем #8
Код
[B2:B10] = [B2:B10*2]
 
Цитата
_Boroda_ написал:
Вангую - Контрл+Шифт+СтрелкаВниз. Это если в столбце В нет пустых ячеек между ячейками с данными
подписываюсь!  :D
Юрий М, только надо учесть, что не сработает, если стиль ссылок R1C1 (проверил). А вообще крутой способ - ни видел :idea:
Изменено: Jack Famous - 4 Июн 2018 12:19:27
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Цитата
Jack Famous написал:
не сработают, если стиль ссылок R1C1
А нефиг! )
 
Юрий М,  :D ну вообще да - ишь какие!
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Цитата
Юрий М написал:
Jack Famous  написал:не сработают, если стиль ссылок R1C1А нефиг! )
А пофиг   :D

Код
Sub qqq()
     Application.ReferenceStyle = xlA1
    [B2:B10] = [B2:B10*2]
End Sub
"Все гениальное просто, а все простое гениально!!!"
 
Nordheim, ну тогда уж "запомнить", сделать дела и вернуть в конце всё обратно - так совсем хорошо))
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
Спасибо большое !
 
кузя1972, Вы прикрепили файл для примера, спасибо ! Я еще не очень в этом разобрался, но ведь запись макроса VBA происходит н в файле, а в собственно excel. Правильно?
 
Цитата
vkcntoread написал:
Правильно?
изучайте  ;)
«Тот, кто несет фонарь, спотыкается чаще, чем тот, кто идет следом.»
Иоганн Пауль Фридрих Рихтер
 
vcntoread,в ответ на #18:сохраните свой файл как Excel 97-2003 или файл с поддержкой макросов,запишите свой первый макрос: Вид -Макросы-Запись макроса-Остановить запись,вслед за записанным макросом Макрос1 скопируйте макросы данной темы,сделайте кнопки и пользуйтесь.Можно мой файл сохранить как ,под удобным Вам именем и загнать туда данные вместо моего примера данных.
Страницы: 1
Читают тему (гостей: 1)
Наверх