Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 18.05.2017, 14:22   #1
Maxim360
Пользователь
 
Регистрация: 12.07.2013
Сообщений: 26
Репутация: 10
По умолчанию Разбить период дат на массив

Добрый день!
Прошу помощи.
Есть массив


Нужно сделать такой результат:


Массив в итоге содержит даты от "дата начала" до "дата конца" по каждой позиции

Как это можно сделать в Access? База данных в аттаче
Буду признателен за помощь!
Вложения
Тип файла: rar Разбить_даты.rar (28.0 Кб, 2 просмотров)
Maxim360 вне форума   Ответить с цитированием
Старый 18.05.2017, 15:07   #2
Aleksandr H.
Профессионал
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Адрес: Wild West Ukraine
Сообщений: 1,670
Репутация: 591

icq: 86-069-220
skype: aleksandr.gryb
По умолчанию

почему 2017 год для позиция 111 признак 1 в результате?

Код:

Sub Macro()
    Dim rs As Recordset
    Dim s As String
    Dim r As Integer
    Dim f As Boolean
    Dim f1, f2, f3, f4
    f = False ' Result doesnt exist yet
    s = "SELECT * FROM [Исходный]"
    DoCmd.SetWarnings False
    DoCmd.DeleteObject acTable = acDefault, "tblResult"
    DoCmd.SetWarnings True
    
    Set rs = CurrentDb.OpenRecordset(s)
    If Not rs Is Nothing Then
        rs.MoveLast
        rs.MoveFirst
        Do While Not rs.EOF
        f1 = rs.Fields(0): f2 = rs.Fields(1): f3 = rs.Fields(2): f4 = rs.Fields(3)
        If f1 <> "" And f1 <> "" Then
            If f1 < f2 Then
              Do While f1 <= f2
                If Not f Then
                    s = "SELECT " & Format(f1, "\#mm-dd-yyyy\#") & " as [" & rs.Fields(0).Name & "] ," & f3 & _
                        " as [" & rs.Fields(2).Name & "] ," & f4 & " as [" & rs.Fields(3).Name & "] INTO tblResult"
                    CurrentDb.Execute (s)
                    f = True
                Else
                    s = "INSERT INTO tblResult ([" & rs.Fields(0).Name & "],[" & rs.Fields(2).Name & "],[" & _
                    rs.Fields(3).Name & "]) " & _
                        "VALUES (" & Format(f1, "\#mm-dd-yyyy\#") & "," & f3 & "," & f4 & ")"
                    CurrentDb.Execute (s)
                End If
                f1 = f1 + 1
              Loop
            End If
        End If
        rs.MoveNext
        Loop
    End If
    rs.Close
    Set rs = Nothing
    If f Then
        DoCmd.OpenTable "tblResult"
    End If
End Sub

Вложения
Тип файла: rar Разбить_даты.rar (22.9 Кб, 0 просмотров)
__________________
Wix-Filters.A Filter For Every Application.
"спасибо" принимаются на webmoney: R676842461689, Z243088649038, U164738001305; QIWI: 38O97935I3O8; ПриватБанк.UA

Последний раз редактировалось Aleksandr H.; 18.05.2017 в 16:25.
Aleksandr H. на форуме   Ответить с цитированием
Старый 18.05.2017, 15:34   #3
Maxim360
Пользователь
 
Регистрация: 12.07.2013
Сообщений: 26
Репутация: 10
По умолчанию

Ой, это я затупил. Там везде должен быть 2017 год

Спасибо!
Maxim360 вне форума   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
показать комнаты которые не заняты в заданный период, и чтобы не происходило наложения дат Мистер SQL, базы данных 14 27.04.2017 18:00
Разбить массив Veryn4ik1993 Паскаль 7 10.01.2014 10:16
текст разбить на массив Aleksandraaa C++ Builder 0 30.05.2013 16:41
Как разбить выбранный период по месяцам? Vit@L Общие вопросы Delphi 5 26.12.2012 15:27
Разбить на массив spein PHP 5 09.05.2009 20:11




07:04.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru