Страницы: 1
RSS
лишние пробелы в числах при экспорте данных
 
когда вставляю в лист экселя данные из другой программы, то на месте разрядов остаются пробелы, из-за которых эксель не признает данные числами (выделил в файле розовым цветом). и автозамена пробелов не помагает  
 
приходится копировать таблицу в ворд и там производить автозамену пробелов во всей колонке.  
 
можно ли это как-то исправить в самом экселе? спасибо!
 
Hi!  
Your problem connected with ","  
replace "," with "." and ok
MyExcelWorld One World One Dream!
Microsoft MVP Excel from 2012
Aydin Aliyev
 
Скопировать пробел из ячейки - Ctrl+H - найти: вставляем скопированный пробел, заменить: ничего не ставим. Заменить всё (предварительно выделив диапазон или весь лист с данными).
 
А сами пробовали? Менял и пробел и запятую. Остается текст. Предлагаю:  
Public Sub www()  
   Dim c As Range  
       Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _  
       :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
   For Each c In [A1].CurrentRegion.Cells
       c.Value = CDbl(c.Value)  
   Next  
End Sub
Я сам - дурнее всякого примера! ...
 
{quote}{login=Serge 007}{date=24.08.2010 01:27}{thema=}{post}Скопировать пробел из ячейки - Ctrl+H - найти: вставляем скопированный пробел, заменить: ничего не ставим. Заменить всё (предварительно выделив диапазон или весь лист с данными).{/post}{/quote}  
 
да, так работает, спасибо!))  
 
только что же это за "пробел"-пустота, который не является "пробелом"-символом клавиатуры???
 
Это, так называемый неразрывный пробел. Его код 160. Можно ещё так:  
Sub qw()  
Dim c As Range  
For Each c In [A1].CurrentRegion.Cells
c = CDbl(Replace(c, Chr(160), ""))  
Next  
End Sub
 
{quote}{login=Юрий М}{date=24.08.2010 01:46}{thema=}{post}Это, так называемый неразрывный пробел. Его код 160. Можно ещё так:  
Sub qw()  
Dim c As Range  
For Each c In [A1].CurrentRegion.Cells
c = CDbl(Replace(c, Chr(160), ""))  
Next  
End Sub{/post}{/quote}  
Юр, CDbl и с пробелами видит число. Вот если в рег. настройках стоит точка... Блин, и так работает:  
Public Sub www()  
Dim c As Range  
For Each c In [A1].CurrentRegion.Cells
c.Value = CDbl(c.Value)  
Next  
End Sub
Я сам - дурнее всякого примера! ...
 
да и так тоже получаеться  
 
with (Сtrl+H)
MyExcelWorld One World One Dream!
Microsoft MVP Excel from 2012
Aydin Aliyev
Страницы: 1
Читают тему
Loading...