Excel vba columns несколько столбцов

Обновлено: 07.07.2024

Я использую этот код на кнопке переключения, чтобы скрыть / показать столбцы в моей электронной таблице.

Эта формула отлично работает для столбцов D:E . Вопрос в том, как добавить в эту формулу другие столбцы, как одиночные, так и диапазоны? Предположим, мне нужно показать / скрыть F:K и N также с помощью той же кнопки? Я пробовал такие вещи, как ("D:E","F:K"), и я получаю ошибку времени выполнения. Любая помощь приветствуется VERY.

2 ответа

Мне нужно прочитать несколько файлов, некоторые в формате Excel, а некоторые в формате CSV. Некоторые файлы содержат сотни столбцов. Есть ли способ выбрать несколько диапазонов столбцов без указания всех имен столбцов или позиций? Например, что-то вроде выбора столбцов 1 -10, 15, 17 и 50-100: df =.

Я новичок в VBA и пытаюсь выделить только пустые ячейки в Столбцах N и AA. Может ли быть несколько диапазонов в одном For loop, чтобы сделать эту работу вместо следующего кода? Private Sub CommandButton22_Click() 'HIGHLIGHT Dim cell As Range For Each cell In Range(N) If cell.Value = vbNullString.

Просто синтаксис, чтобы скрыть непересекающийся набор столбцов:

Это скроет столбцы D, E и L .

Вы должны использовать объект диапазона.

Обновление:

Ваш код должен выглядеть следующим образом:

Похожие вопросы:

В VBA InputBox (тип:=8)может выбрать только один диапазон. Есть ли способ выбрать несколько диапазонов, например 2 или три ? Dim t as Range Set t = Application.InputBox(Select destination range.

Как удалить несколько столбцов в Excel VBA? Я пытался: Sub DelColumns() Dim col As Range For Each col In Range(A:C,E:E,H:S,U:AK,AM:AM,AO:AU,BC:BI,BK:BV).Columns col.EntireColumn.Delete Next col End.

Я пытаюсь скопировать несколько несмежных столбцов (скажем, столбец A, столбец C, столбец E) в динамический массив. Однако, по-видимому, при использовании метода VBA Application.Union были.

Мне нужно прочитать несколько файлов, некоторые в формате Excel, а некоторые в формате CSV. Некоторые файлы содержат сотни столбцов. Есть ли способ выбрать несколько диапазонов столбцов без указания.

Я новичок в VBA и пытаюсь выделить только пустые ячейки в Столбцах N и AA. Может ли быть несколько диапазонов в одном For loop, чтобы сделать эту работу вместо следующего кода? Private Sub.

Я пытаюсь подсчитать количество строк и столбцов в vba из именованного диапазона в excel. Затем подсчеты строк и столбцов используются в массиве 2D для выполнения других вычислений. Именованный.

Я могу выбрать несколько диапазонов столбцов в data.table, используя числовой вектор, например c(1:5,27:30) . Есть ли способ сделать то же самое с именами столбцов? Например, в какой-то форме.

Допустим, у меня есть таблица данных, dt = data.table(matrix(1:50, nrow = 5)); colnames(dt) = letters[1:10]; > dt a b c d e f g h i j 1: 1 6 11 16 21 26 31 36 41 46 2: 2 7 12 17 22 27 32 37 42 47.

Мне нужно выбрать несколько диапазонов на листе, чтобы запустить на них различный код VBA. Диапазоны всегда начинаются в строке 84, но конец зависит от того, как далеко вниз идут данные. Я выбирал.

Может ли кто-нибудь помочь У меня есть эта формула в нескольких ячейках, проверяя несколько диапазонов! Есть ли способ преобразовать это значение в VBA, чтобы мне нужно было выбрать только один.


Нам всем хорошо известен тот факт, что рабочая таблица Excel организована в столбцы и строки, и каждое пересечение строк и столбцов рассматривается как ячейка. Всякий раз, когда мы хотим сослаться на ячейку в Excel через VBA, мы можем использовать свойства Range или Cells. Что если мы хотим сослаться на столбцы из таблицы Excel? Есть ли какая-либо функция, которую мы можем использовать для ссылки на то же самое? Ответ большой ДА!

Да, в VBA есть свойство под названием «Столбцы», которое помогает вам ссылаться, а также возвращать столбец из данной таблицы Excel. Мы можем ссылаться на любой столбец на листе, используя это свойство, и можем манипулировать им.

Синтаксис столбцов VBA:

Синтаксис для свойства столбцов VBA показан ниже:


  • RowIndex - представляет номер строки, из которой должны быть получены ячейки.
  • ColumnIndex - представляет номер столбца, который находится на пересечении с соответствующими строками и ячейками.

Очевидно, какой столбец необходимо включить / использовать для дальнейшего разбирательства, используется этими двумя аргументами. Оба являются необязательными и, если они не предоставлены по умолчанию, будут рассматриваться как первая строка и первый столбец.

Как использовать свойство столбцов в Excel VBA?

Ниже приведены различные примеры использования свойства столбцов в Excel с использованием кода VBA.

Вы можете скачать этот шаблон Excel столбцов VBA здесь - Шаблон Excel столбцов VBA

Мы увидим, как можно выбрать столбец на листе, используя свойство VBA Columns. Для этого выполните следующие шаги:

Шаг 1: Вставьте новый модуль в Visual Basic Editor (VBE), где вы можете написать блок кодов. Нажмите на вкладку « Вставка » и выберите « Модуль» на панели VBA.


Шаг 2: Определите новую подпроцедуру, которая может содержать макрос, который вы собираетесь написать.

Код:


Шаг 3: Используйте свойство Columns.Select из VBA, чтобы выбрать первый столбец на рабочем листе. Это на самом деле по-разному, вы можете использовать Columns (1). Выберите изначально. Смотрите скриншот ниже:

Код:


Свойство Columns в этом небольшом фрагменте кода указывает номер столбца, а свойство Select позволяет VBA выбирать столбец. Поэтому в этом коде столбец 1 выбран на основе заданных входных данных.

Шаг 4: Нажмите F5 или нажмите кнопку «Выполнить», чтобы запустить этот код и увидеть результат. Вы можете видеть, что столбец 1 будет выбран в вашем листе Excel.

Это один из способов использования свойства столбцов для выбора столбца на листе. Мы также можем использовать имена столбцов вместо номеров столбцов в коде. Ниже код также дает тот же результат.

Код:


Пример № 2 - столбцы VBA как функция рабочего листа

Если мы используем свойство Columns без какого-либо спецификатора, оно будет работать только на всех активных рабочих листах, присутствующих в рабочей книге. Однако, чтобы сделать код более безопасным, мы можем использовать спецификатор рабочего листа со столбцами и сделать наш код более безопасным. Следуйте инструкциям ниже:

Шаг 1: Определите новую подпроцедуру, которая может содержать макрос под модулем.

Код:


Теперь мы будем использовать свойство Worksheets.Columns для выбора столбца из указанного листа.

Шаг 2: Начните вводить квалификатор Worksheets под данным макросом. Этому классификатору нужно имя листа, укажите имя листа как « Пример 2 » (не забудьте добавить скобки). Это позволит системе получить доступ к рабочему листу с именем Пример 2 из текущей рабочей книги.

Код:


Шаг 3: Теперь используйте свойство Columns, которое позволит вам выполнять различные операции над столбцами на выбранном листе. Я выберу 4- й столбец. Я могу выбрать его, написав индекс как 4 или указав алфавит столбца «D».

Код:


На данный момент мы выбрали рабочий лист с именем Пример 2 и получили доступ к столбцу D из него. Теперь нам нужно выполнить некоторые операции со столбцом, к которому осуществляется доступ.

Шаг 4. Используйте свойство Выбрать после столбцов, чтобы выбрать столбец, указанный в текущем рабочем листе.

Код:


Шаг 5: Запустите код, нажав клавишу F5 или нажав кнопку воспроизведения.

Предположим, мы хотим выбрать диапазон ячеек в разных столбцах. Мы можем комбинировать свойство Range и Columns для этого. Следуйте инструкциям ниже:

Предположим, что у нас есть данные, распределенные между B1 и D4 на листе, как показано ниже:


Шаг 1: Определите новую подпроцедуру для хранения макроса.

Код:


Шаг 2: Используйте квалификатор « Рабочие листы», чтобы получить доступ к рабочему листу с именем « Пример 3 », где у нас есть данные, показанные на снимке экрана выше.

Код:


Шаг 3: Используйте свойство Range, чтобы установить диапазон для этого кода от B1 до D4. Используйте следующий диапазон кодов («B1: D4») для того же.

Код:


Шаг 4: Используйте свойство Columns для доступа ко второму столбцу из выбора. Используйте код как Столбцы (2) для доступа ко второму столбцу из доступного диапазона.

Код:


Шаг 5: Теперь самая важная часть. Мы получили доступ к рабочему листу, диапазону и столбцу. Однако, чтобы выбрать доступный контент, нам нужно использовать свойство Select в VBA. Смотрите скриншот ниже для макета кода.

Код:


Шаг 6: Запустите этот код, нажав F5 или кнопку Run, и посмотрите результат.

Вы можете видеть, что код выбрал Столбец C на листе Excel, хотя вы установили значение столбца как 2 (что означает второй столбец). Причина этого в том, что мы выбрали диапазон B1: D4 в этом коде. Который состоит из трех столбцов B, C, D. Во время выполнения столбец B считается первым столбцом, C - вторым, а D - третьим столбцом вместо их фактических положений. Функция диапазона уменьшила область действия этой функции только для B1: D4.

То, что нужно запомнить

  • Мы не видим список свойств IntelliSense, когда работаем над столбцами VBA.
  • Это свойство относится к категории свойства листа в VBA.

Рекомендуемые статьи

Это руководство к колонкам VBA. Здесь мы обсудим, как использовать свойство столбцов в Excel с помощью кода VBA, а также на практических примерах и загружаемом шаблоне Excel. Вы также можете просмотреть наши другие предлагаемые статьи -

В каждой из этих ситуаций потребуется свой метод вставки столбца.

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

Вставить новые столбцы в Excel

В этом руководстве я расскажу о следующих методах / сценариях вставки новых столбцов в Excel:

  • Вставить один новый столбец (с помощью сочетания клавиш или параметров на ленте)
  • Добавить несколько новых столбцов
  • Добавляйте несмежные столбцы за один раз
  • Вставлять новые столбцы после каждого второго столбца
  • Вставить новый столбец в таблицу Excel

Вставить новый столбец (сочетание клавиш)

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

Ниже показано сочетание клавиш для вставки столбца в Excel:

Control Shift + (удерживайте клавиши Control и Shift и нажмите клавишу плюс)

Command + I, если вы используете Mac

Ниже приведены инструкции по использованию этого сочетания клавиш для добавления столбца слева от выбранного столбца:


  • Выберите ячейку в столбце, слева от которого вы хотите добавить новый столбец
  • Используйте сочетание клавиш Control Shift +
  • В открывшемся диалоговом окне «Вставка» выберите параметр «Весь столбец» (или нажмите клавишу C).
  • Щелкните OK (или нажмите клавишу Enter).

Вышеупомянутые шаги немедленно добавят новый столбец слева от выбранного столбца.

Он сразу же добавит новый столбец.

Ниже показано сочетание клавиш для выбора всего столбца (после выбора ячейки в столбце):

Control + пробел (удерживайте клавишу Control и нажмите клавишу пробела)

Выбрав столбец, вы можете использовать Control Shift +, чтобы добавить новый столбец.

Если вам не нравятся сочетания клавиш, вы также можете использовать метод щелчка правой кнопкой мыши, чтобы вставить новый столбец. Просто щелкните правой кнопкой мыши любую ячейку в столбце, щелкните правой кнопкой мыши и выберите «Вставить». Откроется диалоговое окно «Вставка», в котором вы можете выбрать «Весь столбец».


Это вставит столбец слева от столбца, в котором вы выбрали ячейку.

Добавить несколько новых столбцов (смежных)

Если вам нужно вставить несколько соседних столбцов, вы можете либо вставить один столбец и время и просто повторить тот же процесс (вы можете использовать клавишу F4, чтобы повторить последнее действие), либо вы можете вставить все эти столбцы за один раз.

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

Ниже приведены шаги для этого:


Вышеупомянутые шаги мгновенно вставили бы два столбца слева от столбца B.

Если вы хотите вставить любое другое количество столбцов (скажем, 3, 4 или 5 столбцов), вы выбираете это количество для начала.

Добавить несколько новых столбцов (несмежных)

Приведенный выше пример является быстрым, когда вы хотите добавить новые соседние столбцы (т. е. Блок из 3 смежных столбцов, как показано выше).

Но что, если вы хотите вставить столбцы, но они не являются смежными.

Например, предположим, что у вас есть набор данных, показанный ниже, и вы хотите вставить один столбец перед столбцом B и один перед столбцом D.


Хотя вы можете делать это по одному, есть способ лучше.

Ниже приведены шаги по добавлению нескольких несмежных столбцов в Excel:

  • Выберите столбцы, в которые вы хотите вставить новый столбец.
  • Щелкните правой кнопкой мыши в любом месте выделения
  • Щелкните Вставить.


Вышеупомянутые шаги мгновенно вставят столбец слева от выбранных столбцов.


Вставлять новые столбцы после каждого другого столбца (с использованием VBA)

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

Приведенный выше код пройдет по каждому столбцу в выделенном фрагменте и вставит столбец справа от выбранных столбцов.

Вы можете добавить этот код в обычный модуль, а затем запустить этот макрос оттуда.

Или, если вам необходимо использовать эту функцию регулярно, вы также можете рассмотреть возможность добавления ее в личную книгу макросов, а затем добавить ее на панель быстрого доступа. Таким образом, у вас всегда будет доступ к этому коду и вы сможете запустить его одним щелчком мыши.

Примечание. Приведенный выше код также работает, если данные отформатированы как таблица Excel.

Добавить столбец в таблицу Excel

Когда вы конвертируете набор данных в таблицу Excel, вы теряете часть гибкости, которая есть у вас есть с обычными данными, когда дело доходит до вставки столбцов.

Например, вы не можете выбрать несмежные столбцы и вставить столбцы рядом с ними за один раз. Вам придется делать это по одному.

Предположим, у вас есть таблица Excel, как показано ниже.

Чтобы вставить столбец слева от столбца B, выберите любую ячейку в столбце, щелкните правой кнопкой мыши, перейдите к параметру «Вставить» и нажмите «Столбцы таблицы слева».


Это вставит столбец слева от выбранной ячейки.

Если вы выберете ячейку в столбце B и одну в столбце D, вы заметите, что опция «Столбцы таблицы слева» неактивна. В этом случае вам придется вставлять столбцы только по одному.

Что удивительно, это работает, когда вы выбираете несмежные строки, но не со столбцами.

Итак, это некоторые из методов, которые вы можете использовать для вставки новых столбцов в Excel. Все методы, описанные в этом руководстве, также будут работать, если вы хотите вставить новые строки (хотя код VBA потребует некоторой модификации).

VBA, как установить данные с несколькими столбцами для списка (незакончено)

Как в списке указывается несколько столбцов содержимого?

  • Нет атрибута columnSource
  • Только атрибут columncount
  • Вы можете указать область в rowource
  • Установите ширину столбца sheListBox1.ColumnWidths = "50; 100; 50" "Фактическое измерение может использовать два вида разделения" 50,100,50 "



  • добавить содержание
  • ListBox2.AddItem ListBox1.Text
  • Удалить контент
  • ListBox1.RemoveItem ListBox1.ListIndex

Интеллектуальная рекомендация


Краткое описание общих функций MPI

содержание 1, основная функция MPI 2, точка-точка функция связи 3, коллективная функция связи 1, основная функция MPI MPI_Init(&argc, &argv) Информировать системы MPI для выполнения всех необх.

Примечание 9: EL выражение


JVM память

концепция Виртуальная машина JVM управляет собственной памятью, которая разделяет память во многие блоки, наиболее распространенной для памяти стека и памяти кучи. 1 структура виртуальной машины JVM H.

Проблема сетевого запроса на Android 9.0

вЗапустите Android 9 (API Уровень 28) или вышеНа устройстве операционной системы Android, чтобы обеспечить безопасность пользовательских данных и устройств, использование по умолчанию для зашифрованно.


Учебная запись по Webpack (3) В статье рассказывается о создании webpack4.0.

предисловие Для изучения веб-пакета автор также предпринял много обходных путей. Есть много вещей, которые я хочу знать, но я не могу их найти. Автор поможет вам быстро начать работу. Цель этой статьи.

Вам также может понравиться

Сетевой HDU - 3078 мультивикация LCA

The ALPC company is now working on his own network system, which is connecting all N ALPC department. To economize on spending, the backbone network has only one router for each department, and N-1 op.

Деревянная палочка Luogu P1120 [Data Enhanced Version] Поиск

Метафизический разрез, просто просмотрите поиск Я чувствую, что процедура поиска состоит в том, чтобы сначала набрать общую структуру, а затем шаг за шагом оптимизировать процесс сокращения. 1. Длина .

Используйте Maven для запуска модульных тестов

Используйте Maven для запуска модульных тестов Чтобы запустить модульные тесты через Maven, введите эту команду: Это запустит весь модульный тест в вашем проекте. Тематическое исследование Создайте дв.


Читайте также: