Добавление нулей при недостаточном количестве чисел в ячейке
cresh12
Дата: Четверг, 01.10.2015, 08:54 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Добрый день! Интересует такой вопрос, существует ли в функция при помощи которой можно было бы добавлять недостающее количество нулей в ячейку. Например: необходимо чтобы во всех ячейках столбца были числа состоящие из 5 символов, число 123 должно быть как 12300, число 78 как 78000 Столбцы заполняются копированием из одной книги в другую таким способом, вдруг это важно [vba]Код
Case 6 Data = Replace(Replace(CStr("'" & arrSrc(i, 3)), ".", ""), "-", "") Case 7 Data = "11" Case 8 Data = arrSrc(i, 10) Case 9 Data = arrSrc(i, 11) Case 10 If arrSrc(i, 12) <> "" Then Data = arrSrc(i, 12) * 1000 Else Data = "'0000000" End If Case 16 If arrSrc(i, 22) = "" Then If arrSrc(i, 29) <> "" Then Data = arrSrc(i, 29) * 1000 If arrSrc(i, 29) = "" Then Data = "'000000000" Else Data = "'000000000" End If
[/vba]
Добрый день! Интересует такой вопрос, существует ли в функция при помощи которой можно было бы добавлять недостающее количество нулей в ячейку. Например: необходимо чтобы во всех ячейках столбца были числа состоящие из 5 символов, число 123 должно быть как 12300, число 78 как 78000 Столбцы заполняются копированием из одной книги в другую таким способом, вдруг это важно [vba]Код
Case 6 Data = Replace(Replace(CStr("'" & arrSrc(i, 3)), ".", ""), "-", "") Case 7 Data = "11" Case 8 Data = arrSrc(i, 10) Case 9 Data = arrSrc(i, 11) Case 10 If arrSrc(i, 12) <> "" Then Data = arrSrc(i, 12) * 1000 Else Data = "'0000000" End If Case 16 If arrSrc(i, 22) = "" Then If arrSrc(i, 29) <> "" Then Data = arrSrc(i, 29) * 1000 If arrSrc(i, 29) = "" Then Data = "'000000000" Else Data = "'000000000" End If
[/vba] cresh12
Сообщение отредактировал cresh12 - Четверг, 01.10.2015, 09:00
Ответить
Сообщение Добрый день! Интересует такой вопрос, существует ли в функция при помощи которой можно было бы добавлять недостающее количество нулей в ячейку. Например: необходимо чтобы во всех ячейках столбца были числа состоящие из 5 символов, число 123 должно быть как 12300, число 78 как 78000 Столбцы заполняются копированием из одной книги в другую таким способом, вдруг это важно [vba]Код
Case 6 Data = Replace(Replace(CStr("'" & arrSrc(i, 3)), ".", ""), "-", "") Case 7 Data = "11" Case 8 Data = arrSrc(i, 10) Case 9 Data = arrSrc(i, 11) Case 10 If arrSrc(i, 12) <> "" Then Data = arrSrc(i, 12) * 1000 Else Data = "'0000000" End If Case 16 If arrSrc(i, 22) = "" Then If arrSrc(i, 29) <> "" Then Data = arrSrc(i, 29) * 1000 If arrSrc(i, 29) = "" Then Data = "'000000000" Else Data = "'000000000" End If
[/vba] Автор - cresh12 Дата добавления - 01.10.2015 в 08:54
nilem
Дата: Четверг, 01.10.2015, 09:07 |
Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
может подойдет формат ячеек "00000"? вместо 123 будет 00123
может подойдет формат ячеек "00000"? вместо 123 будет 00123 nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение может подойдет формат ячеек "00000"? вместо 123 будет 00123 Автор - nilem Дата добавления - 01.10.2015 в 09:07
buchlotnik
Дата: Четверг, 01.10.2015, 09:11 |
Сообщение № 3
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
можно так Код
=A1&ПОВТОР(0;5-ОКРВВЕРХ(LOG10(A1+0,1);1))
можно так Код
=A1&ПОВТОР(0;5-ОКРВВЕРХ(LOG10(A1+0,1);1))
buchlotnik
Ответить
Сообщение можно так Код
=A1&ПОВТОР(0;5-ОКРВВЕРХ(LOG10(A1+0,1);1))
Автор - buchlotnik Дата добавления - 01.10.2015 в 09:11
cresh12
Дата: Четверг, 01.10.2015, 09:12 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
nilem , да, такой вариант подойдет)
nilem , да, такой вариант подойдет)cresh12
Ответить
Сообщение nilem , да, такой вариант подойдет)Автор - cresh12 Дата добавления - 01.10.2015 в 09:12
ShAM
Дата: Четверг, 01.10.2015, 09:27 |
Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1347
Репутация:
249
±
Замечаний:
0% ±
Excel 2010
Еще вариант формулой: ShAM
Ответить
Сообщение Еще вариант формулой: Автор - ShAM Дата добавления - 01.10.2015 в 09:27
cresh12
Дата: Четверг, 01.10.2015, 09:29 |
Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
к сожалению формулу не могу использовать, т.к. код из visual basic
к сожалению формулу не могу использовать, т.к. код из visual basic cresh12
Ответить
Сообщение к сожалению формулу не могу использовать, т.к. код из visual basic Автор - cresh12 Дата добавления - 01.10.2015 в 09:29
buchlotnik
Дата: Четверг, 01.10.2015, 09:47 |
Сообщение № 7
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
почему же не можете? Например, формула уважаемого Алишера будет выглядеть так:[vba]Код
Function nuli(a As String) nuli = a * 10 ^ (5 - Len(a)) End Function
[/vba]
почему же не можете? Например, формула уважаемого Алишера будет выглядеть так:[vba]Код
Function nuli(a As String) nuli = a * 10 ^ (5 - Len(a)) End Function
[/vba] buchlotnik
Ответить
Сообщение почему же не можете? Например, формула уважаемого Алишера будет выглядеть так:[vba]Код
Function nuli(a As String) nuli = a * 10 ^ (5 - Len(a)) End Function
[/vba] Автор - buchlotnik Дата добавления - 01.10.2015 в 09:47
cresh12
Дата: Четверг, 01.10.2015, 10:39 |
Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Спасибо) Очень красивое решение) А как сделать чтобы из 123 получалось 00123? Это так для саморазвития)
Спасибо) Очень красивое решение) А как сделать чтобы из 123 получалось 00123? Это так для саморазвития) cresh12
Ответить
Сообщение Спасибо) Очень красивое решение) А как сделать чтобы из 123 получалось 00123? Это так для саморазвития) Автор - cresh12 Дата добавления - 01.10.2015 в 10:39
nilem
Дата: Четверг, 01.10.2015, 10:58 |
Сообщение № 9
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
А как сделать чтобы из 123 получалось 00123?
формат ячеек - число - в поле Тип пишем 00000 - Ок (снимок во вложении)
А как сделать чтобы из 123 получалось 00123?
формат ячеек - число - в поле Тип пишем 00000 - Ок (снимок во вложении)nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение А как сделать чтобы из 123 получалось 00123?
формат ячеек - число - в поле Тип пишем 00000 - Ок (снимок во вложении)Автор - nilem Дата добавления - 01.10.2015 в 10:58
Roman777
Дата: Четверг, 01.10.2015, 11:08 |
Сообщение № 10
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
cresh12 , в продолжении решения формулами: Код
=ПРАВСИМВ(A1*10^(5-ДЛСТР(A1));ДЛСТР(A1*10^(5-ДЛСТР(A1)))-ДЛСТР(A1))&A1
[vba]Код
Function nuli2(a As String) nuli2 = Right(a * 10 ^ (5 - Len(a)), Len(a * 10 ^ (5 - Len(a)))-len(a)) & a End Function
[/vba]
cresh12 , в продолжении решения формулами: Код
=ПРАВСИМВ(A1*10^(5-ДЛСТР(A1));ДЛСТР(A1*10^(5-ДЛСТР(A1)))-ДЛСТР(A1))&A1
[vba]Код
Function nuli2(a As String) nuli2 = Right(a * 10 ^ (5 - Len(a)), Len(a * 10 ^ (5 - Len(a)))-len(a)) & a End Function
[/vba]Roman777
Много чего не знаю!!!!
Сообщение отредактировал Roman777 - Четверг, 01.10.2015, 11:09
Ответить
Сообщение cresh12 , в продолжении решения формулами: Код
=ПРАВСИМВ(A1*10^(5-ДЛСТР(A1));ДЛСТР(A1*10^(5-ДЛСТР(A1)))-ДЛСТР(A1))&A1
[vba]Код
Function nuli2(a As String) nuli2 = Right(a * 10 ^ (5 - Len(a)), Len(a * 10 ^ (5 - Len(a)))-len(a)) & a End Function
[/vba]Автор - Roman777 Дата добавления - 01.10.2015 в 11:08
buchlotnik
Дата: Четверг, 01.10.2015, 11:09 |
Сообщение № 11
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
можно и кодом:[vba]Код
Function nuli2(a As String) nuli2 = Format(a, "00000") End Function
[/vba]
можно и кодом:[vba]Код
Function nuli2(a As String) nuli2 = Format(a, "00000") End Function
[/vba] buchlotnik
Сообщение отредактировал buchlotnik - Четверг, 01.10.2015, 11:11
Ответить
Сообщение можно и кодом:[vba]Код
Function nuli2(a As String) nuli2 = Format(a, "00000") End Function
[/vba] Автор - buchlotnik Дата добавления - 01.10.2015 в 11:09
KSV
Дата: Четверг, 01.10.2015, 11:12 |
Сообщение № 12
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация:
255
±
Замечаний:
0% ±
Excel 2013
или сразу указать весь диапазон (если он известен) и один раз выполнить [vba]Код
Range("A2:A268").NumberFormat = "00000"
[/vba]
или сразу указать весь диапазон (если он известен) и один раз выполнить [vba]Код
Range("A2:A268").NumberFormat = "00000"
[/vba] KSV
KSV.VBA@gmail.com Яндекс.Деньги: 410011921213333
Ответить
Сообщение или сразу указать весь диапазон (если он известен) и один раз выполнить [vba]Код
Range("A2:A268").NumberFormat = "00000"
[/vba] Автор - KSV Дата добавления - 01.10.2015 в 11:12
cresh12
Дата: Понедельник, 05.10.2015, 09:42 |
Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
KSV , а можно сделать так чтобы после данной процедуры ячейки были в текстовом, а не числовом формате? Потому что если поменять после этого формат на текстовый, то пропадают нули
KSV , а можно сделать так чтобы после данной процедуры ячейки были в текстовом, а не числовом формате? Потому что если поменять после этого формат на текстовый, то пропадают нулиcresh12
Сообщение отредактировал Serge_007 - Вторник, 06.10.2015, 00:39
Ответить
Сообщение KSV , а можно сделать так чтобы после данной процедуры ячейки были в текстовом, а не числовом формате? Потому что если поменять после этого формат на текстовый, то пропадают нулиАвтор - cresh12 Дата добавления - 05.10.2015 в 09:42
KSV
Дата: Понедельник, 05.10.2015, 23:55 |
Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 770
Репутация:
255
±
Замечаний:
0% ±
Excel 2013
если поменять после этого формат на текстовый
а зачем менять? но если нужно число как текст, тогда как-нибудь так: [vba]Код
Data = Format(arrSrc(i, 12), "00000")
[/vba]
если поменять после этого формат на текстовый
а зачем менять? но если нужно число как текст, тогда как-нибудь так: [vba]Код
Data = Format(arrSrc(i, 12), "00000")
[/vba]KSV
KSV.VBA@gmail.com Яндекс.Деньги: 410011921213333
Ответить
Сообщение если поменять после этого формат на текстовый
а зачем менять? но если нужно число как текст, тогда как-нибудь так: [vba]Код
Data = Format(arrSrc(i, 12), "00000")
[/vba]Автор - KSV Дата добавления - 05.10.2015 в 23:55