ADT/ODE: Calendar Control Cannot Format Individual Dates |
The information in this article applies to:
-
Microsoft Access Developer's Toolkit, versions 2.0, 7.0
-
Microsoft Office 97 Developer Edition Tools
-
Microsoft Office Developer Edition 97
Moderate: Requires basic macro, coding, and interoperability skills.
SYMPTOMS
In the Calendar control included with Microsoft Access 97, Microsoft Access
for Windows 95 version 7.0, and the Microsoft Access Developer's Toolkit
(ADT) versions 2.0 and 7.0, you can change the formatting of all the text,
but you cannot change the formatting of individual dates.
CAUSE
This is a design limitation of the Calendar control.
RESOLUTION
This article assumes that you are familiar with Visual Basic for
Applications and with creating Microsoft Access applications using the
programming tools provided with Microsoft Access. For more information
about Visual Basic for Applications, please refer to your version of the
"Building Applications with Microsoft Access" manual.
NOTE: Visual Basic for Applications is called Access Basic in Microsoft
Access version 2.0. For more information about Access Basic, please refer
to the "Building Applications" manual.
A workaround for this behavior is to use a text box on your form that
reflects the date selected in the Calendar control. The following example
demonstrates how to create such a text box:
- From the Database window, do one of the following.
-
In Microsoft Access 97:
In Design view, open the form to which you want to add the text box.
On the Insert menu, click ActiveX Control, and then select Calendar
Control 8.0. After you have selected the Calendar control, click OK.
- In Microsoft Access 7.0:
In Design view, open the form to which you want to add the text box.
On the Insert menu, click Custom Control, and then select the
Calendar control. After you have selected the Calendar control, click
OK.
- In Microsoft Access 2.0:
In Design view, open the form to which you want to add the text box.
On the Edit menu, click Insert Object and then select the Insert Control
option button. In the Control Type box, select Calendar Control. If the
Calendar control does not appear in the box, click the Add Control
button and select the MSASB20.OCX file from your ADT directory. After
you have selected the Calendar control, click OK.
- Change the Calendar control's Name property to Calendar1.
- Add a new text box to the form. Change the text box's Name property to
CalendarDate.
- To display the form's module, select the Calendar control, click the
control's OnClick property field, click the Build button to the right
of the field, select Code Builder, and then click OK.
- Enter the appropriate code so that the procedure looks as follows.
NOTE: In the following sample code, an underscore (_) at the end of a
line is used as a line-continuation character. Remove the underscore
from the end of the line when re-creating this code in Access Basic.
Sub calendar1_Click ()
Me!calendardate.value = Format(Me!calendar1.object.value, _
"dddddd")
End Sub
This procedure sets the value of the CalendarDate text box to the value
of the date selected in the Calendar control, with a Long Date format.
Note that you can use the format of your choice--you do not have to use
the Long Date format.
- Close the module.
- View the form in Form view, and select different dates.
STATUS
Changes to the Calendar control are being reviewed and will be considered
for possible inclusion in a future release of the Microsoft Office
Developer Edition Tools.
REFERENCES
For more information about the Calendar control, search the Help Index
for "calendar control," or ask the Microsoft Access 97 Office Assistant.
Additional query words:
Keywords : IntpOle
Version : WINDOWS:2.0,7.0,97
Platform : WINDOWS
Issue type : kbprb
|
|
|