Страницы: 1
RSS
В тексте дописать "0" перед однозначными числами
 
Здравствуйте, помогите расставить цифру "0" в таблице
 
макросом устроит?
 
Цитата
V написал:
макросом устроит?
да
 
Код
Sub Button1_Click()
    arr = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Value
    For i = 1 To UBound(arr)
        ss = Split(arr(i, 1), ",")
        For j = 0 To UBound(ss)
            If Len(ss(j)) = 1 Then
                a = "0" & ss(j)
            Else
                a = ss(j)
            End If
            If j = 0 Then arr(i, 1) = a Else arr(i, 1) = arr(i, 1) & "," & a
        Next
    Next
    [C1].Resize(UBound(arr)) = arr
End Sub
 
Код
Function добавить_0(ячейка As Range)
For Each T In Split(ячейка, ",")
    If IsEmpty(добавить_0) Then
        добавить_0 = Format(T, "00")
    Else
        добавить_0 = добавить_0 & "," & Format(T, "00")
    End If
Next
End Function
 
Цитата
V написал:
Код
Всем спасибо
 
модифицированный вариант
Код
Sub Button1_Click()
    arr = Range("A1:A" & Cells(Rows.Count, 1).End(xlUp).Row).Value
    For i = 1 To UBound(arr)
        ss = Split(arr(i, 1), ",")
        For j = 0 To UBound(ss)
                ss(j) = Format(ss(j), "00")
        Next
        arr(i, 1) = Join(ss, ",")
    Next
    [C1].Resize(UBound(arr)) = arr
End Sub
По вопросам из тем форума, личку не читаю.
 
Продолжаем модифицировать )
Код
Function fAddSymbol(sText As String, Optional sSeparator As String = ",", _
                Optional NewSymbol As String = "0", Optional LenText As Long = 2)
    Dim aSplitText
    Dim sTemp As String, j As Long
    
    aSplitText = Split(Trim(sText), sSeparator)
    
    For j = 0 To UBound(aSplitText)
        If Len(aSplitText(j)) < LenText Then
            aSplitText(j) = Right$(String(LenText, NewSymbol) & aSplitText(j), LenText)
        End If
        
        sTemp = sTemp & sSeparator & aSplitText(j)
    Next j
    
    fAddSymbol = Mid$(sTemp, Len(sSeparator) + 1)
End Function

Функцию - в модуль листа, в ячейку формулу
= fAddSymbol(A1)
По умолчанию к значениям между запятыми добавляется (если нужно) ноль, чтобы значения состояли из двух символов.  Если исходная длина больше 2, то остается исходное значение.
Функция может работать с дополнительными параметрами:
= fAddSymbol(ссылка, разделитель, добавляемый символ, длина фрагмента)
Пример:
= fAddSymbol(A1;;"w";3)
 
От вам делать нехрен)))
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Jack Famous написал: От вам делать нехрен)))
Выполняем указ президента, да же если он не всем президент - сидим по домам  :D
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх