Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удалить пустые столбцы со второй строки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удалить пустые столбцы со второй строки (Макросы/Sub)
Удалить пустые столбцы со второй строки
Dilemma086 Дата: Суббота, 07.05.2016, 11:42 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Подскажите, пожалуйста, что нужно изменить в коде, чтобы удалялись пустые столбцы, при этом не учитывалась первая строка, т.к. она содержит названия?
[vba]
Код


Sub Удалить_Столбы_Пустые ()
Dim C As Long, FirstColumn As Long, LastColumn As Long
FirstColumn = ActiveWorkbook.ActiveSheet.UsedRange.Column
LastColumn = ActiveWorkbook.ActiveSheet.UsedRange.Columns.Count - 1 + ActiveWorkbook.ActiveSheet.UsedRange.Column
    For C = LastColumn To FirstColumn Step -1
        If Application.CountA(Columns(C)) = 0 Then
            Columns(C).Delete
        End If
    Next C
    
End Sub
[/vba]


Сообщение отредактировал Dilemma086 - Суббота, 07.05.2016, 11:43
 
Ответить
СообщениеПодскажите, пожалуйста, что нужно изменить в коде, чтобы удалялись пустые столбцы, при этом не учитывалась первая строка, т.к. она содержит названия?
[vba]
Код


Sub Удалить_Столбы_Пустые ()
Dim C As Long, FirstColumn As Long, LastColumn As Long
FirstColumn = ActiveWorkbook.ActiveSheet.UsedRange.Column
LastColumn = ActiveWorkbook.ActiveSheet.UsedRange.Columns.Count - 1 + ActiveWorkbook.ActiveSheet.UsedRange.Column
    For C = LastColumn To FirstColumn Step -1
        If Application.CountA(Columns(C)) = 0 Then
            Columns(C).Delete
        End If
    Next C
    
End Sub
[/vba]

Автор - Dilemma086
Дата добавления - 07.05.2016 в 11:42
_Boroda_ Дата: Суббота, 07.05.2016, 12:58 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
удалялись пустые столбцы, при этом не учитывалась первая строка

Это как Вы себе представляете? Вот у Вас есть таблица

Вы хотите удалить столбцы н3 и н5, не удаляя текст н3 и н5. Тогда 2 варианта - или Вы хотите удалить содержимое этих столбцов (но зачем, если там и так ничего нет), или Вы хотите сместить данные влево - тогда у Вас "с" будет под н3, а "d" будет под н4, а под н5 и н6 ничего не будет.
К сообщению приложен файл: 1329278.jpg (11.4 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
удалялись пустые столбцы, при этом не учитывалась первая строка

Это как Вы себе представляете? Вот у Вас есть таблица

Вы хотите удалить столбцы н3 и н5, не удаляя текст н3 и н5. Тогда 2 варианта - или Вы хотите удалить содержимое этих столбцов (но зачем, если там и так ничего нет), или Вы хотите сместить данные влево - тогда у Вас "с" будет под н3, а "d" будет под н4, а под н5 и н6 ничего не будет.

Автор - _Boroda_
Дата добавления - 07.05.2016 в 12:58
KuklP Дата: Суббота, 07.05.2016, 13:33 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Саш, подозреваю, что ТС хочет удалить столбцы, где кроме заголовка ничего нет, т.е:
[vba]
Код
        If Application.CountA(Columns(C)) = 1 Then
            Columns(C).Delete
        End If
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеСаш, подозреваю, что ТС хочет удалить столбцы, где кроме заголовка ничего нет, т.е:
[vba]
Код
        If Application.CountA(Columns(C)) = 1 Then
            Columns(C).Delete
        End If
[/vba]

Автор - KuklP
Дата добавления - 07.05.2016 в 13:33
_Boroda_ Дата: Суббота, 07.05.2016, 14:00 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация: 6479 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
ТС хочет удалить столбцы, где кроме заголовка ничего нет

А, ну тогда предлагаю учесть еще вариант, когда заголовка нет, а ниже что-то есть. И вариант, когда заголовка нет и ниже ничего нет, но правее все-таки что-то есть
[vba]
Код
        If (Application.CountA(Columns(C)) = 1 And Cells(1, C) <> "") Or Application.CountA(Columns(C)) = 0 Then
            Columns(C).Delete
        End If
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
ТС хочет удалить столбцы, где кроме заголовка ничего нет

А, ну тогда предлагаю учесть еще вариант, когда заголовка нет, а ниже что-то есть. И вариант, когда заголовка нет и ниже ничего нет, но правее все-таки что-то есть
[vba]
Код
        If (Application.CountA(Columns(C)) = 1 And Cells(1, C) <> "") Or Application.CountA(Columns(C)) = 0 Then
            Columns(C).Delete
        End If
[/vba]

Автор - _Boroda_
Дата добавления - 07.05.2016 в 14:00
Dilemma086 Дата: Суббота, 07.05.2016, 15:24 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Вот так выглядит таблица, здесь удалить нужно столбцы AD и AE


Это работает:
[vba]
Код
If Application.CountA(Columns(C)) = 1 Then
            Columns(C).Delete
        End If
[/vba]
Спасибо большое, очень признателен за помощь!
 
Ответить
СообщениеВот так выглядит таблица, здесь удалить нужно столбцы AD и AE


Это работает:
[vba]
Код
If Application.CountA(Columns(C)) = 1 Then
            Columns(C).Delete
        End If
[/vba]
Спасибо большое, очень признателен за помощь!

Автор - Dilemma086
Дата добавления - 07.05.2016 в 15:24
Koneu Дата: Вторник, 13.08.2019, 17:00 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Подскажите пож-та вставляю данный макрос но у меня не удаляются столбцы... что сделал ни так
К сообщению приложен файл: 3810503.xlsm (34.9 Kb)
 
Ответить
СообщениеПодскажите пож-та вставляю данный макрос но у меня не удаляются столбцы... что сделал ни так

Автор - Koneu
Дата добавления - 13.08.2019 в 17:00
Pelena Дата: Вторник, 13.08.2019, 17:06 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Koneu, надо взять весь макрос из первого поста и заменить строки


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеKoneu, надо взять весь макрос из первого поста и заменить строки

Автор - Pelena
Дата добавления - 13.08.2019 в 17:06
Koneu Дата: Вторник, 13.08.2019, 17:21 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Pelena, Спасибо ))))) научился )
 
Ответить
СообщениеPelena, Спасибо ))))) научился )

Автор - Koneu
Дата добавления - 13.08.2019 в 17:21
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Удалить пустые столбцы со второй строки (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!