MyTetra Share
Делитесь знаниями!
Заполнение пустых ячеек случайными числами
Время создания: 16.03.2019 23:43
Текстовые метки: VBA, Cells, Rnd, рандом, Работа с диапазонами ячеек и листами
Раздел: Разные закладки - VBA - Excel - Cells
Запись: xintrea/mytetra_db_adgaver_new/master/base/1514729619j2qzej267p/text.html на raw.githubusercontent.com

Заполнение пустых ячеек случайными числами

  • Макросы VBA Excel
  • Работа с диапазонами ячеек и листами

Макрос перебирает в цикле все ячейки выделенного диапазона,
и в пустые ячейки вставляет случайные числа от 1 до 12:

 

Sub FillBlankCellsWithRandomNumbers()
    ' заполняет пустые ячейки выделенного диапазона
    ' случайными значениями от 1 до 12

    Dim cell As Range, ra As Range
    ' ограничиваем выделенный диапазон используемой областью листа
    Set ra = Intersect(Selection, ActiveSheet.UsedRange)
 
    If ra Is Nothing Then
        MsgBox "В выделенном диапазоне нет пустых ячеек!", _
               vbExclamation, "Нечего заполнять"
    Else
        Application.ScreenUpdating = False    ' отключаем обновление экрана

        ' перебираем все ячейки в выделенном диапазоне
        For Each cell In ra.Cells
            ' если ячейка пустая - вычисляем случайное число, и заносим его в ячейку
            If Trim(cell) = "" Then cell = Fix(Rnd() * 12 + 1)
        Next cell
 
        ' можно и так - записать во все ячейки формулу,
        ' а потом заменить формулы значениями
        'ra.Formula = "=INT(RAND()*12+1)":         ra.Value = ra.Value
    End If
End Sub
  • 19160 просмотров
Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования