powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Очень умное форматирование.
20 сообщений из 20, страница 1 из 1
Очень умное форматирование.
    #34075905
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проблемма встала такая, и встала колом. Программа мониторинга оборудования создает базу данных в Exel. Пример выложу. При отсутствии сигнала база данных перестает заполнятся, и ситуация возникает такая, чтопромежуток между записями может достигать двух часов. А теперь вопрос.
Можно ли с помощью возможностей офиса забить пропуски цифрами?
Помогите, горю... Без вас никак!
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076112
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужто недьзя? Ну редложите шоть что-то похожее...
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076144
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ничего сложного. Пишем процедуру, которая будет сравнивать время в смежных ячейках и добавлять значения в случае различия.
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076156
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
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.
Sub Mins()
Dim Mins1 As Integer
Dim Mins2 As Integer
Dim RowIndex As Long

    Mins1 = Minute(Cells( 23 ,  1 ).Value)

    RowIndex =  3 
    Do
        Mins1 = Minute(Cells(RowIndex -  1 ,  1 ).Value)
        Mins2 = Minute(Cells(RowIndex,  1 ).Value)
        
        If Mins2 =  0  Then Mins2 =  60 
        
        If Mins2 <> Mins1 +  1  Then
            Rows(RowIndex).Insert Shift:=xlDown
            
            Range("A" & RowIndex -  2  & ":A" & RowIndex -  1 ).AutoFill _
                Destination:=Range("A" & RowIndex -  2  & ":A" & RowIndex), Type:=xlFillDefault
        
            Cells(RowIndex,  2 ).Value = Cells(RowIndex -  1 ,  2 ).Value
            Cells(RowIndex,  3 ).Value = Cells(RowIndex -  1 ,  3 ).Value
        End If
        
        RowIndex = RowIndex +  1 
        
    Loop While Cells(RowIndex,  1 ).Value <> ""

End Sub
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076165
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vbapro
Код: plaintext
1.
    Mins1 = Minute(Cells( 23 ,  1 ).Value)


это можно удалить, осталось от отладки
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076189
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vbapro большое спасибо, осмелюсь попросить тебя еще об одном одолжениии...
Выложи документ в котором твой макрос работает, а то не все мне глупому понятно.
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076231
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на листе будет кнопка для запуска программы
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076270
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пишет ошибку в этой строчке

Range("A" & RowIndex - 2 & ":A" & RowIndex - 1).AutoFill _
Destination:=Range("A" & RowIndex - 2 & ":A" & RowIndex), Type:=xlFillDefault

Что делать?
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076300
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
попробуй весь код заменить на этот
Код: plaintext
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.
Option Explicit

Sub Mins()
Dim Mins1 As Integer
Dim Mins2 As Integer
Dim RowIndex As Long
Dim SourceRange As Range
Dim FillRange As Range

    Mins1 = Minute(Cells( 23 ,  1 ).Value)

    RowIndex =  2 
    Do
        Mins1 = Minute(Cells(RowIndex -  1 ,  1 ).Value)
        Mins2 = Minute(Cells(RowIndex,  1 ).Value)
        
        If Mins2 =  0  Then Mins2 =  60 
        
        If Mins2 <> Mins1 +  1  Then
            Rows(RowIndex).Insert Shift:=xlDown
            
'            Range("A" & RowIndex - 2 & ":A" & RowIndex - 1).AutoFill _
'                Destination:=Range("A" & RowIndex - 2 & ":A" & RowIndex), Type:=xlFillDefault
        
            Set SourceRange = Range("A" & RowIndex -  2  & ":A" & RowIndex -  1 )
            Set FillRange = Range("A" & RowIndex -  2  & ":A" & RowIndex)
            
            SourceRange.AutoFill Destination:=FillRange
        
            Cells(RowIndex,  2 ).Value = Cells(RowIndex -  1 ,  2 ).Value
            Cells(RowIndex,  3 ).Value = Cells(RowIndex -  1 ,  3 ).Value
        End If
        
        RowIndex = RowIndex +  1 
        
    Loop While Cells(RowIndex,  1 ).Value <> ""

    Set SourceRange = Nothing
    Set FillRange = Nothing

End Sub

если ошибка останется, то запиши макрос автозаполнения ячеек (перетаскивание черного квадратика в нижнем правом углу выделения) и покажи что записалось
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076351
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vbapro браво!!!! Второй вариант прекрасно работает, но опять но не кождая база ночинается с 7:00. Помоги...
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076431
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь?не квждая база ночинается с 7:00
это не важно. единственная проблема может быть, если после первой же записи - разрыв (но такое, мне кажется, маловероятно). тем не менее, если встретится проблема, пожешь мне на почту написать, чтоб я быстро откликнулся
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076528
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надеюсь мыло не подведет!
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076640
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Vbapro отзовись дошло письмо?
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076696
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не дошло
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076795
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Что-часто у меня такое начало случаться. Ладно прости это мои проблемы. Повторяю содержание письма. Прблемма не в том что макрос не работает, когда база начинает писаться не с семи, а втом что если база от 9.56 раньше записей не появляется. Просьба в том чтобы макрос работал и вверх и вниз, целе сутки с 7 до 7. и можно еще сделать чтобы добовляемые ячейки забивались не нулями, а 777. Базу в таком виде как есть у нас выкладываю. Помоги...
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076846
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) т.е. нужно чтоб были всегда записи с 7:00 до 6:59 следующего дня через каждую минуту?
2) почему в файле три колонке с датами. Их нужно все обработать? может их быть больше? какая здесь логика?
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34076914
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1 - Да.
2 - Обробатывается все три колонки. Логика в том, что данная база была создана для 3х автоматов, в будующем планируется больше.
3 - Пожалуйста напиши подсказки к коду, а то не хочется и дальше тебя напрягать.
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34077608
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помощь прийдет я верю.
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34077688
vbapro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
комментарии в коде, что нужно, можешь поменять
...
Рейтинг: 0 / 0
Очень умное форматирование.
    #34079468
Игорь?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vbapro отправил тибе письмо неужели опять не дошло. Отзовись...
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Очень умное форматирование.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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