Страницы: 1
RSS
Макрос по заполнению значений в пустых ячейках
 
Всем привет!
Есть вот такой макрос, который заполняет пустые ячейки из первой непустой ячейки. Беда в том, что он ломает форматы, можно ли допилить его так, чтобы он копировал не только значения, но и форматы?
Работает так: есть столбец, с данными, но данные не во всех ячейках, нужно скопировать первую ячейку, вставить ее значение с форматом до следующей заполненной ячейки ниже по строкам. Вот типа исходник:
0512154123
   
   
   
 051215357415
   
   
41254456521
   
   
Должно получиться вот так, но на деле нолики впереди макрос съедает, вставляя значение в формате "Общий"
0512154123
0512154123
0512154123
0512154123
 051215357415
051215357415
051215357415
41254456521
41254456521
41254456521
Код
Public Sub SetName()
    Dim s As String
    Dim pRange As Range
    Set pRange = Application.Selection
    
    For Each c In pRange
        If Trim(c.Value) <> "" Then
            s = Trim(c.Value)
        Else
            c.Value = s
        End If
    Next c
    
End Sub 
Изменено: Eldosk - 18.06.2015 06:57:04
 
Можно так:
Код
Sub qq()
    Dim r As Range: Application.ScreenUpdating = False
    For Each r In Selection
        r = Trim(r): If r = "" Then r.Offset(-1).Copy r
    Next: Application.ScreenUpdating = True
End Sub
Чем шире угол зрения, тем он тупее.
 
Можно и Вашим макросом, только заменить s = Trim(c.Value) на s = Trim(c.Text), формат ячеек в диапазоне должен быть Текстовый
Согласие есть продукт при полном непротивлении сторон
 
SAS888, супер!!! Спасибо!
Страницы: 1
Наверх