Всем привет! При формировании бирок для ячеек с изделиями по списку из БД столкнулся с проблемой правильного отображения кодов изделий разной длины. Изначально стояла задача для кодов длиной 10 символов и проблем с отображением не наблюдалось. Перенос из списка в бирку осуществляю обычным равенством текущей ячейки исходной.
[vba]
Код
Sub x() For i = 1 To 10 With SHdetals .Cells(i, 6).Value = .Cells(i, 1).Value End With Next MsgBox "END" End Sub
[/vba]
Формат текущей ячейки "Текстовый"
Но тут подсунули список с кодами разной длины и началось проблемы - коды с длиной в 12, 14, 18 символов стали отображаться в итоге как экспоненциальное число с символом E. Добавил в равенство ячеек дополнительно """ & [vba]
Код
Sub xxx() For i = 1 To 10 With SHdetals .Cells(i, 6).Value = "'" & .Cells(i, 1).Value End With Next MsgBox "END" End Sub
[/vba]
Частично проблема решилась, но осталась с длиной в 12 и 18 символов. Что удивительно в файле примере проблема решилась с длиной в 12 символов, а в самом файле нет. Такое ощущение, что excel против четного количества пар чисел) Подскажите пожалуйста, как все же исправить.
Всем привет! При формировании бирок для ячеек с изделиями по списку из БД столкнулся с проблемой правильного отображения кодов изделий разной длины. Изначально стояла задача для кодов длиной 10 символов и проблем с отображением не наблюдалось. Перенос из списка в бирку осуществляю обычным равенством текущей ячейки исходной.
[vba]
Код
Sub x() For i = 1 To 10 With SHdetals .Cells(i, 6).Value = .Cells(i, 1).Value End With Next MsgBox "END" End Sub
[/vba]
Формат текущей ячейки "Текстовый"
Но тут подсунули список с кодами разной длины и началось проблемы - коды с длиной в 12, 14, 18 символов стали отображаться в итоге как экспоненциальное число с символом E. Добавил в равенство ячеек дополнительно """ & [vba]
Код
Sub xxx() For i = 1 To 10 With SHdetals .Cells(i, 6).Value = "'" & .Cells(i, 1).Value End With Next MsgBox "END" End Sub
[/vba]
Частично проблема решилась, но осталась с длиной в 12 и 18 символов. Что удивительно в файле примере проблема решилась с длиной в 12 символов, а в самом файле нет. Такое ощущение, что excel против четного количества пар чисел) Подскажите пожалуйста, как все же исправить.Sancho
CaramelManiac, Спасибо! Не знал про такое свойство Format, поэтому и затруднялся как быть с разной длиной символов. Но во второй строке теперь первые 0 "убиваются", а они должны быть. Попробовал оба варианта что с ', что без.
CaramelManiac, Спасибо! Не знал про такое свойство Format, поэтому и затруднялся как быть с разной длиной символов. Но во второй строке теперь первые 0 "убиваются", а они должны быть. Попробовал оба варианта что с ', что без.Sancho
[/vba] PS Cтало понятно, почему у Вас ёxcel так странно себя вёл - это "грязные" исходные данные в столбе "A". Они содержат непечатаемые пробельные символы, т.е. Вы видите не совсем то, то содержится в ячейках.
[/vba] PS Cтало понятно, почему у Вас ёxcel так странно себя вёл - это "грязные" исходные данные в столбе "A". Они содержат непечатаемые пробельные символы, т.е. Вы видите не совсем то, то содержится в ячейках.CaramelManiac
Сообщение отредактировал CaramelManiac - Четверг, 26.11.2020, 13:08