Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Работа с датами / 25 сообщений из 64, страница 1 из 3
18.06.2011, 18:32
    #37314195
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Помогите разработать программу для обработки вводимой пользователем даты.
Программа должна реализовывать следующие функции.
1. Показывать составные части введённой даты (число, месяц, год) по отдельности (функции DateSerial, Day, Month, Year, раздел справки Dates, подраздел Dates and Times Keyword Summary).
2. Дублировать вывод номера месяца в году его текстовым названи-ем (например: месяц апрель — выводится число 4 и название месяца — апрель).
3. Показывать название дня недели для введённой даты (функция WeekDay).
4. Показывать текущую дату и время.
5. Вычислять разницу между указанной и текущей датой в целых годах.
6. Определять день недели первого числа месяца указанной даты (DateSerial).
...
Рейтинг: 0 / 0
18.06.2011, 18:41
    #37314201
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDee, вводимой пользователем даты
куда???
...
Рейтинг: 0 / 0
18.06.2011, 18:47
    #37314205
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович ЭндрюJeiDee, вводимой пользователем даты
куда???
а с чем связать удобнее будет?... в принципе без разницы
...
Рейтинг: 0 / 0
18.06.2011, 18:49
    #37314207
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDee,
на ВБА пойдёт??
...
Рейтинг: 0 / 0
18.06.2011, 18:53
    #37314212
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович ЭндрюJeiDee,
на ВБА пойдёт??
а в чем будет различие VB и VBA, это связка с Access идет? или как?
...
Рейтинг: 0 / 0
18.06.2011, 18:57
    #37314217
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович ЭндрюJeiDee,
на ВБА пойдёт??
коротко да или нет???
Access вообще боюсь
...
Рейтинг: 0 / 0
18.06.2011, 18:57
    #37314218
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович ЭндрюJeiDee,
на ВБА пойдёт??
Пойдет если на Microsoft Visual Basic 6 запустится :-)
...
Рейтинг: 0 / 0
18.06.2011, 19:00
    #37314220
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDee,

нет не запустится
...
Рейтинг: 0 / 0
18.06.2011, 19:18
    #37314241
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович ЭндрюJeiDee,

нет не запустится

А кто может помочь на VB 6
...
Рейтинг: 0 / 0
18.06.2011, 21:29
    #37314331
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ну, я могу помочь... ближе к ночи.

ЦЭ не прав, конечно.
Всю обработку можно сделать хоть на VBA, хоть на VB, хоть на VBscript... просто для этого достаточно использовать общий функционал.
И затем отдать вам готовый код, одинаково работающий хоть в VS от 6 и выше, хоть в Office от 97 и выше...
...
Рейтинг: 0 / 0
19.06.2011, 10:10
    #37314537
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDeeПомогите разработать программу для обработки вводимой пользователем даты.
Программа должна реализовывать следующие функции.
1. Показывать составные части введённой даты (число, месяц, год) по отдельности (функции DateSerial, Day, Month, Year, раздел справки Dates, подраздел Dates and Times Keyword Summary).
2. Дублировать вывод номера месяца в году его текстовым названи-ем (например: месяц апрель — выводится число 4 и название месяца — апрель).
3. Показывать название дня недели для введённой даты (функция WeekDay).
4. Показывать текущую дату и время.
5. Вычислять разницу между указанной и текущей датой в целых годах.
6. Определять день недели первого числа месяца указанной даты (DateSerial).

1) если ты вводишь даты вручную, не проще создать 3 текстбокса? например, text1.text для числа, 2 для месяца, 3 для года
2) if text2.text = "4" or text2.text = "04" then text7.text = "Апрель"

3) почитай лень разбираться http://msdn.microsoft.com/ru-ru/library/82yfs2zh(v=vs.90).aspx
4) text10.text = date. если нуно отдельно день месяц год: text10.text = day(date) text20.text = month(date) text30.text = year(date)
5) сначала обработка:
If Len(text20.text) < 2 Then text20.text = "0" & text20.text
If Len(text10.text) < 2 Then text10.text = "0" & text10.text
If Len(text1.text) < 2 Then text1.text = "0" & text1.text
If Len(text2.text) < 2 Then text2.text = "0" & text2.text
потом здесь будет результат в целых годах: Text6.Text = Val(Text30.Text & Text20.Text & Text10.Text) - Val(Text3.Text & Text2.Text & Text1.Text)
6) просто находишь день недели вот этой даты: text5.text = ":01" & ":" & Text2.Text & Text3.Text
удачи
...
Рейтинг: 0 / 0
19.06.2011, 10:33
    #37314548
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
BelowZero,

>1) если ты вводишь даты вручную, не проще создать 3 текстбокса? например, text1.text для числа, 2 для месяца, 3 для года

кому как мне одного хватает, пишешь 7 8 шарит, что это 7 августа 2011 г.
...
Рейтинг: 0 / 0
19.06.2011, 10:34
    #37314549
BelowZero
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Ципихович Эндрю,

да, просто афффтор сам просил JeiDeeПоказывать составные части введённой даты (число, месяц, год) по отдельности
...
Рейтинг: 0 / 0
19.06.2011, 16:30
    #37314778
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
BelowZero,

Я не могу разобраться как вводить дату уже 3 часа маюсь. Вот код:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Dim oldDate As Date
Dim oldWeekDay As Integer
Dim Den As String
Dim Mesyac As Integer
Dim God As Integer
Den = Text1.Text
Mesyac = Label4.Caption
God = Text3.Text

oldDate = # 6 / 19 / 2011 #
oldWeekDay = Weekday(oldDate)
Print oldDate
If oldWeekDay = "2" Then Label5.Caption = "Понедельник"
If oldWeekDay = "3" Then Label5.Caption = "Вторник"
If oldWeekDay = "4" Then Label5.Caption = "Среда"
If oldWeekDay = "5" Then Label5.Caption = "Четверг"
If oldWeekDay = "6" Then Label5.Caption = "Пятница"
If oldWeekDay = "7" Then Label5.Caption = "Суббота"
If oldWeekDay = "1" Then Label5.Caption = "Воскресенье"
так работает.
Как только меняю

oldDate = #Mesyac/Den/God#
пишется ошибка. Понять не могу почему.
oldDate = "Mesyac/Den/God" так тоже не хочет нормально работать, без кавычек так же
...
Рейтинг: 0 / 0
19.06.2011, 16:34
    #37314782
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDeeКак только меняю
oldDate = #Mesyac/Den/God#
пишется ошибка. Понять не могу почему.Сказано ж тебе использовать DateSerial
...
Рейтинг: 0 / 0
19.06.2011, 16:37
    #37314786
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Shocker.ProJeiDeeКак только меняю
oldDate = #Mesyac/Den/God#
пишется ошибка. Понять не могу почему.Сказано ж тебе использовать DateSerial
Спасибо) проблема 3ех часовая решена))
Буду дальше делать
...
Рейтинг: 0 / 0
19.06.2011, 16:40
    #37314793
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDee
Код: plaintext
1.
2.
3.
4.
5.
6.
If oldWeekDay = "2" Then Label5.Caption = "Понедельник"
If oldWeekDay = "3" Then Label5.Caption = "Вторник"
If oldWeekDay = "4" Then Label5.Caption = "Среда"
If oldWeekDay = "5" Then Label5.Caption = "Четверг"
If oldWeekDay = "6" Then Label5.Caption = "Пятница"
If oldWeekDay = "7" Then Label5.Caption = "Суббота"
If oldWeekDay = "1" Then Label5.Caption = "Воскресенье"

все проще
Код: plaintext
1.
?WeekdayName( 5 )
пятница
...
Рейтинг: 0 / 0
19.06.2011, 17:56
    #37314850
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
[quot Shocker.Pro]JeiDee
Код: plaintext
1.
[src vba]?WeekdayName( 5 )
пятница

Чета не понял как это использовать...
Вот еще вопрос возник... как написать примерно в таком виде:
Код: plaintext
Label4.Caption = Day(Date) + " " + Month(Date)
тут какая то ошибка допущена но в C# нормально работало вроде
...
Рейтинг: 0 / 0
19.06.2011, 18:05
    #37314856
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
Код: plaintext
Label4.Caption = "Сейчас:   " & Day(Date) & " Число"
Вот этот вопрос решил таким образом
...
Рейтинг: 0 / 0
19.06.2011, 18:16
    #37314861
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
BelowZero5) сначала обработка:
If Len(text20.text) < 2 Then text20.text = "0" & text20.text
If Len(text10.text) < 2 Then text10.text = "0" & text10.text
If Len(text1.text) < 2 Then text1.text = "0" & text1.text
If Len(text2.text) < 2 Then text2.text = "0" & text2.text
потом здесь будет результат в целых годах: Text6.Text = Val(Text30.Text & Text20.Text & Text10.Text) - Val(Text3.Text & Text2.Text & Text1.Text)

А зачем такой код писать если можно легче так:
Код: plaintext
1.
2.
3.
Dim Razica As Integer
Raznica = Year(Date) - God
Print Raznica
...
Рейтинг: 0 / 0
19.06.2011, 18:21
    #37314864
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDeeА зачем такой код писать если можно легче так:
Код: plaintext
1.
2.
3.
Dim Razica As Integer
Raznica = Year(Date) - God
Print Raznica

А нет, так не правильно... там же целые года
...
Рейтинг: 0 / 0
19.06.2011, 18:24
    #37314867
JeiDee
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
[quot JeiDee]BelowZero5) сначала обработка:
If Len(text20.text) < 2 Then text20.text = "0" & text20.text
If Len(text10.text) < 2 Then text10.text = "0" & text10.text
If Len(text1.text) < 2 Then text1.text = "0" & text1.text
If Len(text2.text) < 2 Then text2.text = "0" & text2.text
потом здесь будет результат в целых годах: Text6.Text = Val(Text30.Text & Text20.Text & Text10.Text) - Val(Text3.Text & Text2.Text & Text1.Text)

Вот эта строка что обозначает... не понимаю.
Код: plaintext
If Len(text20.text) <  2  Then text20.text = "0" & text20.text
и для чего вот это
Код: plaintext
& text20.text
Классно было бы если объяснить что такое text20, text10, text1, text2. text30, text3
...
Рейтинг: 0 / 0
19.06.2011, 18:35
    #37314883
VSVLAD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
...
Рейтинг: 0 / 0
19.06.2011, 18:37
    #37314887
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
JeiDee,

If Len(text20.text) < 2 Then text20.text = "0" & text20.text
If если
Len(text20.text) длина содержимого текст бокса ...
< 2 догадайтесь
Then тогда
text20.text содержимое текст бокса
= догадайтесь
"0" & text20.text нуль и ...
то есть не 2, а 02
ОК??
...
Рейтинг: 0 / 0
19.06.2011, 18:40
    #37314889
Ципихович Эндрю
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами
написали бы в формате "00" и парень бы не мучился
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Работа с датами / 25 сообщений из 64, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]