Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 17.09.2019
Сообщений: 90
Excel

При удалении всех пустых строк кнопкой, а потом если добавить сразу же строку, то доб. не 1, а сразу 4 и отм объединение

20.10.2020, 13:17. Показов 579. Ответов 2

Студворк — интернет-сервис помощи студентам
Есть прога Табель. При удалении всех пустых строк кнопкой, а потом если добавить сразу же строку, то добавляется не 1, а сразу 4 и отменяется объединение. Если нажать еще раз, портится вообще весь список. Если просто нажать кнопку добавления строки не нажимая удаление всех пустых, то все нормально работает. Это происходит только после нажатия кнопки удаления всех пустых строк. Не могу понять в чем косяк. Код и сама прога ниже. Спасибо заранее!
Это кнопка добавления строки:

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
Private Sub CommandButton9_Click()
ActiveSheet.Unprotect (159) 'снимается пароль
Application.Calculation = xlManual 'Отключение автоматических перерасчетов
Application.ScreenUpdating = False
Dim FirstRow As Long: FirstRow = True
With ActiveSheet
    If ActiveCell.Column > 3 And _
        ActiveCell.Row = Cells(ActiveCell.Row, "C").MergeArea(1).Row Then
    End If
    .Rows(ActiveCell.Row & ":" & ActiveCell.Row + (ActiveCell.MergeArea.Rows.Count - 1)).Copy
    .Rows(ActiveCell.Row & ":" & ActiveCell.Row + (ActiveCell.MergeArea.Rows.Count - 1)).Insert Shift:=xlDown
    If FirstRow Then
        Application.DisplayAlerts = False
            Range(Cells(ActiveCell.Row, "C"), Cells(ActiveCell.Row + _
                Cells(ActiveCell.Row + 2, "C").MergeArea.Rows.Count + 1, "C")).Merge
            Range(Cells(ActiveCell.Row, "A"), Cells(ActiveCell.Row + _
                Cells(ActiveCell.Row, "C").MergeArea.Rows.Count - 1, "B")).Merge
        Application.DisplayAlerts = True
    End If
End With
Call CommandButton35_Click
ActiveSheet.Protect Password:=159, DrawingObjects:=True, Contents:=True, Scenarios:=True, _
                    AllowFormattingColumns:=True, AllowFormattingRows:=True
Application.ScreenUpdating = True
End Sub
Эта удаляет все пустые строки:

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
Private Sub CommandButton34_Click()
Dim delArea As Range
Dim RowLast As Long, i As Long, dRwF As Long, dRwL As Long
 
If MsgBox("Вы уверены что хотите удалить ВСЕ пустые строки?", vbYesNo) = vbYes Then
    Application.ScreenUpdating = False
    ActiveSheet.Unprotect (159) 'снимается пароль
    Application.Calculation = xlManual 'Отключение автоматических перерасчетов
    
    With ActiveWorkbook.ActiveSheet
        RowLast = .Cells.Find(What:="*", After:=Cells(1, 1), SearchOrder:=xlByRows, _
                                SearchDirection:=xlPrevious).Row
        For i = RowLast To 8 Step -1
            If .Cells(i, "C").MergeArea.Rows.Count > 1 Then
                dRwF = .Cells(i, "C").MergeArea(1).Row
                dRwL = i
                If .Cells(i, "C").MergeArea(1) = "" Then
                    If delArea Is Nothing Then
                        Set delArea = Range(dRwF & ":" & dRwL)
                    Else
                        Set delArea = Union(delArea, .Range(dRwF & ":" & dRwL))
                    End If
                End If
                i = dRwF
            End If
        Next
        If Not delArea Is Nothing Then delArea.Delete
    End With
    Call CommandButton35_Click
    ActiveSheet.Protect Password:=159, DrawingObjects:=True, Contents:=True, Scenarios:=True, _
    AllowFormattingColumns:=True, AllowFormattingRows:=True
    Application.ScreenUpdating = True
End If
End Sub
Вложения
Тип файла: rar Табель МЕД.rar (576.0 Кб, 18 просмотров)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.10.2020, 13:17
Ответы с готовыми решениями:

Добавить в поисковики сразу или потом
Вопрос вот в чём, есть сайт на котором имеется около 20 разделов, в каждом разделе находится 1-2 статьи, стоит ли регистрировать сайт в...

Чтение текста сразу из всех полей Edit сразу
Всем привет. У меня на форме есть 6 текстовых полей. Вот файл .h class TForm1 : public TForm { __published: // IDE-managed...

Как сделать , что б при удалении документа в БД, сразу же удалялись вс
Как сделать , что б при удалении документа в БД, сразу же удалялись все его респонсы

2
0 / 0 / 0
Регистрация: 17.09.2019
Сообщений: 90
20.10.2020, 13:18  [ТС]
Вот такая ерунда происходит:
Миниатюры
При удалении всех пустых строк кнопкой, а потом если добавить сразу же строку, то доб. не 1, а сразу 4 и отм объединение  
0
0 / 0 / 0
Регистрация: 17.09.2019
Сообщений: 90
20.10.2020, 13:21  [ТС]
Если не удалять пустые кнопкой, то все нормально
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.10.2020, 13:21
Помогаю со студенческими работами здесь

Загрузка ЦП на 100% при открытии диспетчера, потом сразу пропадает
Доброго времени суток! Иногда жужжит сильно кулер в режиме простоя, что довольно странно. В диспетчере нагружен процессор на 100%, как...

Компьютер при включении питания запускается и сразу останавливается, потом снова на несколько секунд и т.д.
Проблема с материнкой MSI P31 Neo V2!!! Суть проблемы: комп при включении питания запускается и сразу останавливается, потом снова на...

При включения компьютера на секунду показывается обычный загрузочный экран, потом сразу же черный.
проблемы следующие: при включения компьютера на секунду показывается обычный загрузочный экран, потом сразу же черный. потом показывается...

При запуске exe фортрановского файла сделать так, чтобы он потом не пропадал сразу
Здравствуйте!! можно ли при запуске exe фортрановского файла сделать так , чтобы он потом не пропадал сразу. я работаю powerstation...

При включении ПК, компьютер запускается и сразу выключается, потом опять запускается, и работает нормально
Доброго времени суток уважаемы посетители форума, у меня такая проблема(я в компьютерах не разбираюсь): При включении ПК, компьютер...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru