|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] работа с датами в vb6 |
|
VBA - [решено] работа с датами в vb6
|
Пользователь Сообщения: 105 |
Профиль | Отправить PM | Цитировать добрый день!
Пишу программу для расчета отпусков, столкнулся с такой проблемой: есть 2 поля начало периода и конец периода работы, в них значения date, нужно рассчитать сколько полных лет, дней и месяцев отработал человек: Option Explicit Dim a As Date, b As Date, c, d, e As Integer Private Sub Command1_Click() a = Text1.Text 'дата начала периода b = Text2.Text ' дата конца периода c = b - a ' число отработанных дней Text5.Text = c d = (b - a) / 12 ' число отработанных месяцев Text4.Text = d e = (b - a) / 365 ' число отработанных лет Text3.Text = e End Sub Нужно например так: 2 года 8 месяцев 1 день. Может быть вопрос глупый, но я чет не соображу никак. Заранее спасибо за ответ! |
|
Отправлено: 12:23, 05-09-2018 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать artemu88, старайтесь сразу прикладывать готовый проект, так будет проще отвечающим.
Project1.vbp
Type=Exe Form=Form1.frm Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#..\..\Windows\SysWOW64\stdole2.tlb#OLE Automation Startup="Form1" Command32="" Name="Project1" HelpContextID="0" CompatibleMode="0" MajorVer=1 MinorVer=0 RevisionVer=0 AutoIncrementVer=0 ServerSupportFiles=0 CompilationType=0 OptimizationType=0 FavorPentiumPro(tm)=0 CodeViewDebugInfo=0 NoAliasing=0 BoundsCheck=0 OverflowCheck=0 FlPointCheck=0 FDIVCheck=0 UnroundedFP=0 StartMode=0 Unattended=0 Retained=0 ThreadPerObject=0 MaxNumberOfThreads=1 Form1.frm
VERSION 5.00 Begin VB.Form Form1 Caption = "Form1" ClientHeight = 2100 ClientLeft = 60 ClientTop = 345 ClientWidth = 5850 LinkTopic = "Form1" ScaleHeight = 2100 ScaleWidth = 5850 StartUpPosition = 3 'Windows Default Begin VB.TextBox tbxResultInterval Height = 375 Left = 240 Locked = -1 'True TabIndex = 3 Top = 1440 Width = 5295 End Begin VB.CommandButton cmdCalculate Caption = "Calculate" Height = 975 Left = 2760 TabIndex = 2 Top = 240 Width = 2775 End Begin VB.TextBox tbxFinishDate Height = 375 Left = 240 TabIndex = 1 Top = 840 Width = 2295 End Begin VB.TextBox tbxStartDate Height = 375 Left = 240 TabIndex = 0 Top = 240 Width = 2295 End End Attribute VB_Name = "Form1" Attribute VB_GlobalNameSpace = False Attribute VB_Creatable = False Attribute VB_PredeclaredId = True Attribute VB_Exposed = False Option Explicit Private Sub cmdCalculate_Click() Dim dtStartDate As Date Dim dtFinishDate As Date Dim dtPartDate As Date Dim intYears As Integer Dim intMonth As Integer Dim intDays As Integer If IsDate(Me.tbxStartDate.Text) Then dtStartDate = CDate(Me.tbxStartDate.Text) If IsDate(Me.tbxFinishDate.Text) Then dtFinishDate = CDate(Me.tbxFinishDate.Text) intYears = DateDiff("yyyy", dtStartDate, dtFinishDate) dtPartDate = DateAdd("yyyy", intYears, dtStartDate) intMonth = DateDiff("m", dtPartDate, dtFinishDate) dtPartDate = DateAdd("m", intMonth, dtPartDate) intDays = DateDiff("d", dtPartDate, dtFinishDate) Me.tbxResultInterval.Text = intYears & " year(s) " & intMonth & " month(s) " & intDays & " day(s)" Else MsgBox "Finish date is not a date" End If Else MsgBox "Start date is not a date" End If End Sub Private Sub Form_Load() ' Две следующие строки для примера, в реальном проекте удалите их Me.tbxStartDate.Text = "01.01.1980" Me.tbxFinishDate.Text = "31.12.1999" End Sub |
Отправлено: 17:17, 05-09-2018 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2003/XP/2000 - [решено] Excel: График из столбца с датами. | ven00m | Microsoft Office (Word, Excel, Outlook и т.д.) | 1 | 26-03-2012 03:07 | |
VBA - Работа с датами | Наташок | Программирование и базы данных | 2 | 01-02-2011 08:41 | |
VBA - [решено] (VB6) Работа с БД (mdb или др.) | Sanchos | Программирование и базы данных | 5 | 13-07-2010 17:29 | |
[решено] "Мигалка". работа с датами в JS, PHP | Artem-Samsung | Вебмастеру | 1 | 31-01-2009 01:10 | |
проблема с датами в JS | dascon | Вебмастеру | 10 | 07-07-2005 01:23 |
|