Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Проблема с форматом даты Добавлено: 01.06.07 15:57  

Автор вопроса:  george | ICQ: 301137589 
В экселе есть такая проблема: есть ячейка с датой, но она не воспронимается как дата. Как ее сделать таковой программным способом? (непрограммным способом можно просто заменить все "." на ".", допустим, и все работает. Но когда я это делаю программным способом (то есть замену точек на точки делаю), формат так и не меняется).
Заранее всем спасибо.

Ответить

  Ответы Всего ответов: 14  

Номер ответа: 1
Автор ответа:
 bi-lya



Вопросов: 1
Ответов: 125
 Профиль | | #1 Добавлено: 01.06.07 16:42
Cells(a, b).NumberFormat = "m/d/yyyy"

Ответить

Номер ответа: 2
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #2 Добавлено: 01.06.07 17:01
Я не знаю почему, но не получается это провернуть. Он все равно не воспринимает это как дату

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 02.06.07 03:42
Наверное данные в ячейке не нормального формата даты. Попробуй сначала Replace точки, запятые итп, а потом то что bi-lya подсказал

Ответить

Номер ответа: 4
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #4 Добавлено: 04.06.07 13:03
Пробовал, ничего не получается

Ответить

Номер ответа: 5
Автор ответа:
 ADSemenov.ru



Вопросов: 5
Ответов: 276
 Web-сайт: www.adsemenov.ru
 Профиль | | #5
Добавлено: 04.06.07 14:14
____ Может быть просто он понимает только русское обозначение формата (Д, М и Г)?

Ответить

Номер ответа: 6
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #6 Добавлено: 04.06.07 14:34
Тогда записывая макрос, сам ручками, поставь ячейки нужный формат, и посмотри на полученный макрос...

Ответить

Номер ответа: 7
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #7 Добавлено: 04.06.07 15:28
Я собственно, так и делал. Не получается. Обозначения стандартные, на латинице

Ответить

Номер ответа: 8
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #8 Добавлено: 04.06.07 16:13
Источник корявого формата даты
http://pif.investfunds.ru/quotes/index.phtml. Там можно скачать любой файл. Формат даты везде одинаковый, я уже просто не знаю что делать.

Ответить

Номер ответа: 9
Автор ответа:
 Алексей



Вопросов: 0
Ответов: 2
 Профиль | | #9 Добавлено: 05.06.07 16:03
Возьми одну из этих строк:

Sub FormatDat()
    a = Date
    Range("A1";) = Format(a, "dd.mm.yy";)
    Range("A2";) = Format(a, "dd.mm.yyyy";)
    Range("A3";) = Format(a, "dddd dd.mm.yyyy";)
    Range("b1";) = Format(a, "dd,mm,yy";)
    Range("b2";) = Format(a, "dd,mm,yyyy";)
    Range("b3";) = Format(a, "dddd dd,mm,yyyy";)
End Sub

Ответить

Номер ответа: 10
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #10 Добавлено: 05.06.07 17:21
В общем нифига не помогает. Нашел единственный изъебствующий способ. Может кому поможет. А вообще всем спасибо
Range("b4";).End(xlDown).Select
    x = ActiveCell.Row
     For i = 4 To x
        Cells(i, 13).Select
        ActiveCell.FormulaR1C1 = "=RC[-12]*1"
    Next i
Range("M4";).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    
    Range("A4";).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A4";).Select
    Range(Selection, Selection.End(xlDown)).Select
    
    
    Selection.NumberFormat = "m/d/yyyy"

Ответить

Номер ответа: 11
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #11 Добавлено: 05.06.07 20:46
Пройдись циклом по ячейкам и каждой приплюсуй 0.

Ответить

Номер ответа: 12
Автор ответа:
 Алексей



Вопросов: 0
Ответов: 2
 Профиль | | #12 Добавлено: 06.06.07 10:45
george, а что не получается с моим примером?
Или я не правильно понимаю задачу?

Ответить

Номер ответа: 13
Автор ответа:
 GSerg



Вопросов: 0
Ответов: 1876


 Профиль | | #13 Добавлено: 06.06.07 10:52
Да, ты неправильно понимаешь задачу.

Ответить

Номер ответа: 14
Автор ответа:
 george



ICQ: 301137589 

Вопросов: 18
Ответов: 31
 Профиль | | #14 Добавлено: 06.06.07 15:01
да я по сути так и сделал. Просто вместо плюсованию на ноль я умножал все на 1, причем еще и испльзовал другие ячейки (возможно не очень быстродейственно на больших базах данных, но вообще приемлемо).

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам