41 / 32 / 12
Регистрация: 15.04.2013
Сообщений: 365
1

Date and Time Picker Control: почему он слетает?

30.05.2013, 11:26. Показов 6057. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Сделали мы программу в VBA. В общем на первом листе в Excel выложены списки (ComboBox), кнопки и еще разместили Ms Date and Time Picker Control, для выбора периода (формируем отчет за определнный период времени). На моём компьютере всё замечательно работало. Повезли заказчику: там ничего не заработало Возила не я, мой руководитель. Я им сделала скрин с References, но это не очень помогло,каких то библиотек просто не было. Руководитель вернулся, дал мне ноут и сказал попробовать на него поставить. Там стоит Windows XP и стоял какой старенький офис, причем неполностью установленный. Снесла старый офис, поставила 2007 (такой же стоит у меня). Открываю файл - не работает. Стала добавлять библиотеки, настроила всё, вроде заработало. И даже дата нормально отображалась и можно было выбирать (добавила библиотеку mscomct2.ocx). Сегодня открываю этот же файл, снова контролы с датами представлены в виде перечеркнутых красным прямоугольников В References галка стоит. Что еще с этим сделать - я не знаю. Как побороть этот Date and Time Picker Control ?И вообще как без потерь перенести на комп заказчика?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.05.2013, 11:26
Ответы с готовыми решениями:

Значение Date and Time Picker Control
Есть такой элемент для UserForm - Microsoft Date and Time Picker Control. Удобно выбирать дату, НО...

Элемент Microsoft Date and Time Picker Control 6.0
Подскажите, как заменить поле введения данных формы (отвечающее за введение даты в таблицу) на...

Date+Time picker
Сталкивались ли? Как выходили из ситуации?

Объект Date and Time Picker
У меня в форме используется объект Microsoft Date and Time Picker Control< version 6.0. Взялся он,...

10
81 / 24 / 2
Регистрация: 18.01.2013
Сообщений: 74
30.05.2013, 12:45 2
может для надежности лучше написать свой аналог календаря? я сделала так...
0
5471 / 1149 / 50
Регистрация: 15.09.2012
Сообщений: 3,515
30.05.2013, 13:21 3
Aline_u, у "Microsoft" есть два календаря и эти календари продаются с "MS Access". Если на компьютере нет "MS Access", то календарей тоже не будет.

Можно, кажется, скачать в интернете отдельно файлы с календарями и установить на компьютере, тогда и Access не нужно устанавливать.
0
41 / 32 / 12
Регистрация: 15.04.2013
Сообщений: 365
30.05.2013, 13:24  [ТС] 4
Скрипт, Access стоит, библиотеки есть и даже подключены в Реферансах. Вчера , когда не сработал контрол, я его удалила и посавила новый. А сегодня с утра открываю файл, а там "опять 25"

Добавлено через 51 секунду
mcherry, в VBA я новичок, поэтому не представляю как самой написать. Подскажете? Читала здесь на форуме, что переделывают готовый календарь
0
81 / 24 / 2
Регистрация: 18.01.2013
Сообщений: 74
30.05.2013, 13:47 5
я тоже пока не очень)))

календарь - кнопка, нажатие на которую вызывает форму-календарь

создала форму, на ней 2 текстбокса - выбор месяца и года + привязанные к ним SpinButton (стрелочки вверх/вниз)
каждому дню соответствует кнопка (можно по-другому сделать, но у меня пока так...)

файл выложить не могу, вот код - корявенько, зато работает (но, думаю, переделывать много нужно)...:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
Private Sub ChangeData()
 
Dim i As Integer
Dim my_day As Integer
Dim x As Integer
 
'здесь определяем номер дня недели первого числа выбранного месяца.... и количество дней в месяце...
 
my_day = 3
 
my_day = Weekday(CDate("01." & SpinButtonMonth.Value & "." & SpinButtonYear.Value))
 
If my_day = 1 Then my_day = 8
 
If (SpinButtonMonth.Value = 12) Then
    LastDay = 31 + my_day - 2
    Else
        LastDay = Day(CDate(DateAdd("d", -1, CDate("01." & SpinButtonMonth.Value + 1 & "." & SpinButtonYear.Value)))) + my_day - 2
End If
 
'определили:) идем дальше - нуменуем кнопочки 
 
For i = 1 To LastDay
 
x = i - my_day + 2
 
If x <= 0 Then
    UserCalendar.Controls("CommandButton" & i).Enabled = False
    UserCalendar.Controls("CommandButton" & i).Caption = ""
    Else
        UserCalendar.Controls("CommandButton" & i).Caption = x
        UserCalendar.Controls("CommandButton" & i).Enabled = True
End If
 
Next i
 
For i = LastDay + 1 To 38
 
    UserCalendar.Controls("CommandButton" & i).Enabled = False
    UserCalendar.Controls("CommandButton" & i).Caption = ""
 
Next i
 
 
End Sub
 
 
Private Sub SpinButtonMonth_SpinDown()
    Dim my_month As String
 
    UserCalendar.TextBox1.Text = MonthName(SpinButtonMonth.Value)
    
End Sub
 
Private Sub SpinButtonMonth_SpinUp()
    Dim my_month As String
    
    UserCalendar.TextBox1.Text = MonthName(SpinButtonMonth.Value)
    
End Sub
 
Private Sub SpinButtonYear_SpinDown()
    Dim my_month As String
 
    UserCalendar.TextBox2.Text = SpinButtonYear.Value
    
End Sub
 
Private Sub SpinButtonYear_SpinUp()
    Dim my_month As String
    
    UserCalendar.TextBox2.Text = SpinButtonYear.Value
    
End Sub
 
 
Private Sub TextBox1_Change()
    ChangeData   
End Sub
 
Private Sub TextBox2_Change()
    ChangeData
End Sub
 
Private Sub UserForm_Initialize()
 
SpinButtonMonth.Value = Month(Date)
 
SpinButtonYear.Value = Year(Date)
 
UserCalendar.TextBox1.Text = MonthName(SpinButtonMonth.Value)
UserCalendar.TextBox2.Text = SpinButtonYear.Value
 
End Sub
 
 
'==============================================================
'                  здесь много-много обработчиков кнопочек ......
'как сделать по-другому пока не придумала...(
 
Private Sub CommandButton_Click()
    Dim my_day
    my_day = ActiveControl.Caption
    
    'в нужное поле засим выбранную дату....
    UserForm1.TextBox1.Text = CDate(my_day & "." & SpinButtonMonth.Value & "." & SpinButtonYear.Value)
    UserCalendar.Hide
End Sub
 
 
Private Sub CommandButton1_Click()
    CommandButton_Click
End Sub
 
Private Sub CommandButton2_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton3_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton4_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton5_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton6_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton7_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton8_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton9_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton10_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton11_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton12_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton13_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton14_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton15_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton16_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton17_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton18_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton19_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton20_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton21_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton22_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton23_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton24_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton25_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton26_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton27_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton28_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton29_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton30_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton31_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton32_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton33_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton34_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton35_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton36_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton37_Click()
    CommandButton_Click
End Sub
Private Sub CommandButton38_Click()
    CommandButton_Click
End Sub
0
971 / 353 / 135
Регистрация: 27.10.2006
Сообщений: 764
30.05.2013, 14:03 6
Aline_u,

я отправил вам личное сообщение с ссылкой, где вы сможете скачать календарь для Excel.

P.S. Для всех остальных поищите в яндексе "Календарь на стандартных элементах Слэн" (Слэн - это человек с другого форума по Excel)
0
41 / 32 / 12
Регистрация: 15.04.2013
Сообщений: 365
30.05.2013, 14:28  [ТС] 7
mcherry, спасибо, но это не совсем то,что хотелось бы

Добавлено через 4 минуты
Pavel55, у меня не работает, скачала обновленный вариант
0
971 / 353 / 135
Регистрация: 27.10.2006
Сообщений: 764
30.05.2013, 14:49 8
см. файл
Вложения
Тип файла: rar Календарь для Excel.rar (49.0 Кб, 103 просмотров)
1
41 / 32 / 12
Регистрация: 15.04.2013
Сообщений: 365
30.05.2013, 14:54  [ТС] 9
Pavel55, Спасибо!

Я еще вот тут нашла http://forum.developing.ru/sho... -Календарь
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
35616 / 19509 / 4079
Регистрация: 12.02.2012
Сообщений: 32,552
Записей в блоге: 13
30.05.2013, 16:31 10
Загляните еще вот сюда: Авторские программы, библиотеки, надстройки и шаблоны (Service.zip)

и сюда:

Как наложить на форму количество лейблов, соответствующих количеству дней в месяце?
0
41 / 32 / 12
Регистрация: 15.04.2013
Сообщений: 365
31.05.2013, 15:28  [ТС] 11
Catstail, Спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.05.2013, 15:28
Помогаю со студенческими работами здесь

Дата через Date Time Picker
Доброго времени суток, возникла необходимость заносить дату не вручную, а выбирать через Date Time...

Date (time) Picker под Web
Всем привет. Поделитесь, пожалуйста, Date (Time) picker под web. Пасиба.

Date time picker 6.0 (самопроизвольное перемещение)
Добрый день! Подскажите, если кто сталкивался с такой проблемой. Размещаю на форме элемент ActiveX...

Как передать значение в date time picker
На форме есть диалог с компонентом Date Time Picker. Пытаюсь передать в него значение для...

Форма для ввода даты и времени "Date time picker"
Всем добрый день! Помогите пожалуйста разобраться с формой для ввода даты и времени! Скачал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru