Главная
Новый форум
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Как определить формат ячейки с датой в Excel

 
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование в БЭСТ-4
View previous topic :: View next topic  
Author Message
vla



Joined: 15 Mar 2005
Posts: 60
Location: Гаклин Владимир Ильич
Occupation: ООО БэстСиб, консультант
Interests: Новосибирск

PostPosted: 22 Jun 2007 10:23    Post subject: Как определить формат ячейки с датой в Excel Reply with quote

Пытаюсь вывести дату в Excel:
oAS:Cells(x,y):Value:=OemToAnsi(dtoc(xdat))

Если определить формат как
oAS:Cells(x,y):NumberFormat:="@"
- выводится числом.
Как задать формат для даты - нигде не нашел.

Записал в макрос перевод числа в дату и подсмотрел определение: Selection.NumberFormat = "dd/mm/yy;@"
и вставил себе.
Но при попытке использовать конструкцию типа
oAS:Cells(x,y):NumberFormat:="dd/mm/yy;@" - Excel ругается на ошибку выполнения, и нечитаемо. Понятно только ... NumberFormat ... Range.
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 22 Jun 2007 12:12    Post subject: Reply with quote

Давайте по порядку.
Сделаем программу с отладчиком.
Дойдем до нужной строки.
Дальше переключимся в нижнее поле и напишем там
?oAs:Cells......и так далее
Смотрим что возвращает отладчик
Дальше пробуем добавить например :Value()
И в отладчике смотрим что и как и находим причину как будет работать а как нет
Back to top
View user's profile Send private message Send e-mail
Марина



Joined: 27 Aug 2002
Posts: 501
Location: Кондрина Марина Александровна
Occupation: ОАО БКО программист
Interests: Боровичи Новгородской обл

PostPosted: 22 Jun 2007 12:28    Post subject: Reply with quote

Попробуйте ...Value:=dtoc(xdat), а NumberFormat просто не задава
Back to top
View user's profile Send private message
Плешивцев Евгений



Joined: 03 Apr 2007
Posts: 95
Location: Плешивцев Евгений

Interests: Волгоград

PostPosted: 22 Jun 2007 14:59    Post subject: Reply with quote

как сказала Марина, так и надо. У меня такая же конструкция:
Code:
      oAS:Cells(nLine,1):Value:=nNum
      oAS:Cells(nLine,1):NumberFormat:="#0" 

      oAS:Cells(nLine,2):Value:=OemToAnsi(Contract->NameAgent)
      oAS:Cells(nLine,2):NumberFormat:="@" 
     
      oAS:Cells(nLine,3):Value:= nOst
      oAS:Cells(nLine,3):NumberFormat:="# ##0.00"   

      oAS:Cells(nLine,4):Value:=dtoc(dDatV)

      oAS:Cells(nLine,5):Value:=dtoc(dDat2)

      oAS:Cells(nLine,6):FormulaR1C1:="=RC[-1]-RC[-2]+1"
      oAS:Cells(nLine,6):NumberFormat:="#0"   

      oAS:Cells(nLine,7):FormulaR1C1:=OemToAnsi("=(RC[-4]*RC[-1])/ДЕНЬ(RC[-2])")
      oAS:Cells(nLine,7):NumberFormat:="# ##0.00"   
Back to top
View user's profile Send private message
Марина



Joined: 27 Aug 2002
Posts: 501
Location: Кондрина Марина Александровна
Occupation: ОАО БКО программист
Interests: Боровичи Новгородской обл

PostPosted: 22 Jun 2007 16:22    Post subject: Reply with quote

Евгений, а такая странная запись FormulaR1C1, RC[-4] это примерно как понять? Никогда такого не видела
Back to top
View user's profile Send private message
Плешивцев Евгений



Joined: 03 Apr 2007
Posts: 95
Location: Плешивцев Евгений

Interests: Волгоград

PostPosted: 22 Jun 2007 16:42    Post subject: Reply with quote

это вот так:


а нужно для упрощения получения адреса клетки. Например:
Code:
oAS:Cells(nLine,6):FormulaR1C1:="=RC[-1]-RC[-2]+1"

это значит что я стою на какой то линии nLine, на 6 колонке и в эту клетку помещаю формулу:
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование в БЭСТ-4 All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group

Rambler
Rambler's Top100 Рейтинг@Mail.ru