Excel две колонки на одном листе

 О том, как при помощи несложного макроса VBA в программе «Эксель» можно разместить данные из таблицы в две колонки для распечатки на принтере.

Приведенный в статье макрос  является альтернативой опции «колонки» используемой в настройках «разметки страницы» программы Word .

Рассмотрим для примера таблицу с перечнем товаров хранящихся на складах. В данной таблице существует 4 столбца: номер подпункта, наименование товара, артикулярный номер товара на складе и место хранения (наименование склада).

№ п.п. Наименование товара Артикул Место размещения
1 Яблоки 112 Склад №1
2 Щетка 18 445 Склад №4
3 Шаурма 65 631 Склад №3
4 Черничное варенье 31 754 Склад №5
5 Черника 30 544 Склад №4
6 Чаша 77 730 Склад №3
7 Чайный набор 40 223 Склад №2
8 Чай 58 372 Склад №2
9 Филе бобра 28 124 Склад №2
10 Тунец 52 322 Склад №2
11 Томаты 55 952 Склад №5
12 Тара Пластиковая 8 766 Склад №1
13 Сыр 63 211 Склад №1
14 Сывородка 64 421 Склад №2
15 Суши 46 273 Склад №2
16 Сливки 60 792 Склад №4
17 Слива 11 112 Склад №5
18 свежий карп 25 705 Склад №5
19 Сахар 41 433 Склад №3
20 Рыбий жир 26 914 Склад №1
21 Рыба мороженная 24 495 Склад №4
22 Поводок для собаки 20 865 Склад №1
23 Поводок для кошки 19 655 Склад №5
24 Пакет пластиковый 13 606 Склад №5
25 Пакет ПВХ 14 815 Склад №1
26 Оладьи замороженные 35 384 Склад №3
27 Носки мужские 74 101 Склад №5
28 Носки женские 72 891 Склад №4
29 Ножницы 11 186 Склад №3
30 Мякоть кокоса 29 334 Склад №3
31 Монитор 19″ 36 594 Склад №4
32 Молоко 62 002 Склад №5
33 Мангал 48 693 Склад №4
34 Малина весовая 34 174 Склад №2
35 Лопата 66 841 Склад №4
36 Лом 68 051 Склад №5
37 Ложка чайная 42 643 Склад №4
38 Лодка надувная 47 483 Склад №3
39 Лавровый лист 37 804 Склад №5
40 Куртка стеганная 71 681 Склад №3
41 Красная краска 11 123 Склад №2
42 Кофе 59 582 Склад №3
43 Колготки женские 17 235 Склад №3
44 Клавиатура 12 396 Склад №4
45 Карп филе 51 112 Склад №1
46 Кабачки 57 162 Склад №1
47 Имбирь 43 853 Склад №5
48 Икра черная 23 285 Склад №3
49 Икра красная 22 075 Склад №2
50 Изюм 45 063 Склад №1
51 Земляника 32 964 Склад №1
52 Зелень (укроп) 2 112 Склад №3
53 Груша 1 222 Склад №4
54 Грибы 53 532 Склад №3
55 Горошек 54 742 Склад №4
56 Гиря 69 261 Склад №1
57 Вилки стальные 9 976 Склад №2
58 Ветошь 49 903 Склад №5
59 Весы 16 025 Склад №2
60 Ведро 8л 75 310 Склад №1
61 Ведро 10 л 76 520 Склад №2
62 Валенки 70 471 Склад №2
63 Бумага 400мг/м 39 013 Склад №1

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

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

    Если в программе Word есть функция во вкладке «Разметка страницы» называемая «Колонки», которая позволяет делить текст на несколько колонок, то в Excel такой опции найти не удается.две колонки в Эксель

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

    Макрос выглядит следующим образом:

    Sub DveKolonki()

        Dim sheetActive As Worksheet, sheetNoviy As Worksheet ‘добавляем переменные,  как листы

        Dim Vsego As Long, Perviy As Long  ‘добавляем переменные для определения границ таблицы

        Set sheetActive = ActiveSheet ‘присваиваем переменной активный лист

        Vsego = sheetActive.Cells.Find(What:=»?», LookIn:=xlValues, LookAt:= _

            xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _

            , SearchFormat:=False).Row — 1 ‘определяем диапазон

        Perviy = Application.WorksheetFunction.RoundUp(Vsego / 2, 0) ‘делим диапазон

        Set sheetNoviy = Sheets.Add(, Sheets(Sheets.Count)) ‘определяем новый лист

        sheetNoviy.Range(«A1:E1»).Value = sheetActive.Range(«A1:E1»).Value

        sheetNoviy.Range(«F1:J1»).Value = sheetActive.Range(«A1:E1»).Value

        sheetNoviy.Range(«A2»).Resize(Perviy, 5).Value = sheetActive.Range(«A2»).Resize(Perviy, 5).Value

        sheetNoviy.Range(«F2»).Resize(Vsego — Perviy, 5).Value = _

            sheetActive.Range(«A» & Perviy + 2).Resize(Vsego — Perviy, 5).Value ‘делим таблицу

    End Sub

    Необходимо в панели разработчика открыть просмотр кода и добавить код макроса в книгу Excel.Макро VBA Excel

    Запускать макрос можно из перечня макросов (книги макросов) или присвоить его активному элементу, например, кнопке или чекбоксу.

    Подробнее о присвоение макроса кнопке далее по ссылке.

      Приведенный в статье макрос является альтернативой опции «колонки» используемой в настройках «разметки страницы» программы Word .

      Рассмотрим для примера таблицу с перечнем товаров хранящихся на складах. В данной таблице существует 4 столбца: номер подпункта, наименование товара, артикулярный номер товара на складе и место хранения (наименование склада).

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

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

      Если в программе Word есть функция во вкладке «Разметка страницы» называемая «Колонки», которая позволяет делить текст на несколько колонок, то в Excel такой опции найти не удается.

      две колонки в Эксель

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

      Макрос выглядит следующим образом:

      Sub DveKolonki()

      Dim sheetActive As Worksheet, sheetNoviy As Worksheet ‘добавляем переменные, как листы

      Dim Vsego As Long, Perviy As Long ‘добавляем переменные для определения границ таблицы

      Set sheetActive = ActiveSheet ‘присваиваем переменной активный лист

      Vsego = sheetActive.Cells.Find(What:=»?», LookIn:=xlValues, LookAt:= _

      , SearchFormat:=False).Row — 1 ‘определяем диапазон

      Perviy = Application.WorksheetFunction.RoundUp(Vsego / 2, 0) ‘делим диапазон

      Set sheetNoviy = Sheets.Add(, Sheets(Sheets.Count)) ‘определяем новый лист

      sheetNoviy.Range(«A1:E1»).Value = sheetActive.Range(«A1:E1»).Value

      sheetNoviy.Range(«F1:J1»).Value = sheetActive.Range(«A1:E1»).Value

      sheetNoviy.Range(«A2»).Resize(Perviy, 5).Value = sheetActive.Range(«A2»).Resize(Perviy, 5).Value

      sheetNoviy.Range(«F2»).Resize(Vsego — Perviy, 5).Value = _

      sheetActive.Range(«A» & Perviy + 2).Resize(Vsego — Perviy, 5).Value ‘делим таблицу

      End Sub

      Необходимо в панели разработчика открыть просмотр кода и добавить код макроса в книгу Excel.

      Запускать макрос можно из перечня макросов (книги макросов) или присвоить его активному элементу, например, кнопке или чекбоксу.

      Подробнее о присвоение макроса кнопке далее по ссылке.

      Похожее:

      Содержание

      • 1 Макрос выглядит следующим образом:
      • 2 Процедура объединения
        • 2.1 Способ 1: объединение с помощью контекстного меню
        • 2.2 Способ 2: объединение с помощью кнопки на ленте
        • 2.3 Способ 3: объединение с помощью функции
        • 2.4 Помогла ли вам эта статья?

      Приведенный в статье макрос  является альтернативой опции «колонки» используемой в настройках «разметки страницы» программы Word .

      Рассмотрим для примера таблицу с перечнем товаров хранящихся на складах. В данной таблице существует 4 столбца: номер подпункта, наименование товара, артикулярный номер товара на складе и место хранения (наименование склада).

      Просмотр таблицы

      № п.п. Наименование товара Артикул Место размещения
      1 Яблоки 112 Склад №1
      2 Щетка 18 445 Склад №4
      3 Шаурма 65 631 Склад №3
      4 Черничное варенье 31 754 Склад №5
      5 Черника 30 544 Склад №4
      6 Чаша 77 730 Склад №3
      7 Чайный набор 40 223 Склад №2
      8 Чай 58 372 Склад №2
      9 Филе бобра 28 124 Склад №2
      10 Тунец 52 322 Склад №2
      11 Томаты 55 952 Склад №5
      12 Тара Пластиковая 8 766 Склад №1
      13 Сыр 63 211 Склад №1
      14 Сывородка 64 421 Склад №2
      15 Суши 46 273 Склад №2
      16 Сливки 60 792 Склад №4
      17 Слива 11 112 Склад №5
      18 свежий карп 25 705 Склад №5
      19 Сахар 41 433 Склад №3
      20 Рыбий жир 26 914 Склад №1
      21 Рыба мороженная 24 495 Склад №4
      22 Поводок для собаки 20 865 Склад №1
      23 Поводок для кошки 19 655 Склад №5
      24 Пакет пластиковый 13 606 Склад №5
      25 Пакет ПВХ 14 815 Склад №1
      26 Оладьи замороженные 35 384 Склад №3
      27 Носки мужские 74 101 Склад №5
      28 Носки женские 72 891 Склад №4
      29 Ножницы 11 186 Склад №3
      30 Мякоть кокоса 29 334 Склад №3
      31 Монитор 19″ 36 594 Склад №4
      32 Молоко 62 002 Склад №5
      33 Мангал 48 693 Склад №4
      34 Малина весовая 34 174 Склад №2
      35 Лопата 66 841 Склад №4
      36 Лом 68 051 Склад №5
      37 Ложка чайная 42 643 Склад №4
      38 Лодка надувная 47 483 Склад №3
      39 Лавровый лист 37 804 Склад №5
      40 Куртка стеганная 71 681 Склад №3
      41 Красная краска 11 123 Склад №2
      42 Кофе 59 582 Склад №3
      43 Колготки женские 17 235 Склад №3
      44 Клавиатура 12 396 Склад №4
      45 Карп филе 51 112 Склад №1
      46 Кабачки 57 162 Склад №1
      47 Имбирь 43 853 Склад №5
      48 Икра черная 23 285 Склад №3
      49 Икра красная 22 075 Склад №2
      50 Изюм 45 063 Склад №1
      51 Земляника 32 964 Склад №1
      52 Зелень (укроп) 2 112 Склад №3
      53 Груша 1 222 Склад №4
      54 Грибы 53 532 Склад №3
      55 Горошек 54 742 Склад №4
      56 Гиря 69 261 Склад №1
      57 Вилки стальные 9 976 Склад №2
      58 Ветошь 49 903 Склад №5
      59 Весы 16 025 Склад №2
      60 Ведро 8л 75 310 Склад №1
      61 Ведро 10 л 76 520 Склад №2
      62 Валенки 70 471 Склад №2
      63 Бумага 400мг/м 39 013 Склад №1

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

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

        Если в программе Word есть функция во вкладке «Разметка страницы» называемая «Колонки», которая позволяет делить текст на несколько колонок, то в Excel такой опции найти не удается.

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

        Макрос выглядит следующим образом:

        Sub DveKolonki()

            Dim sheetActive As Worksheet, sheetNoviy As Worksheet ‘добавляем переменные,  как листы

            Dim Vsego As Long, Perviy As Long  ‘добавляем переменные для определения границ таблицы

            Set sheetActive = ActiveSheet ‘присваиваем переменной активный лист

            Vsego = sheetActive.Cells.Find(What:=»?», LookIn:=xlValues, LookAt:= _

                xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _

                , SearchFormat:=False).Row — 1 ‘определяем диапазон

            Perviy = Application.WorksheetFunction.RoundUp(Vsego / 2, 0) ‘делим диапазон

            Set sheetNoviy = Sheets.Add(, Sheets(Sheets.Count)) ‘определяем новый лист

            sheetNoviy.Range(«A1:E1»).Value = sheetActive.Range(«A1:E1»).Value

            sheetNoviy.Range(«F1:J1»).Value = sheetActive.Range(«A1:E1»).Value

            sheetNoviy.Range(«A2»).Resize(Perviy, 5).Value = sheetActive.Range(«A2»).Resize(Perviy, 5).Value

            sheetNoviy.Range(«F2»).Resize(Vsego — Perviy, 5).Value = _

                sheetActive.Range(«A» & Perviy + 2).Resize(Vsego — Perviy, 5).Value ‘делим таблицу

        End Sub

        Необходимо в панели разработчика открыть просмотр кода и добавить код макроса в книгу Excel.

        Запускать макрос можно из перечня макросов (книги макросов) или присвоить его активному элементу, например, кнопке или чекбоксу.

        Подробнее о присвоение макроса кнопке далее по ссылке.

          В разделе Программное обеспечение на вопрос Как разделить в экселе строку на две колонки? заданный автором Дмитрий Барташевич лучший ответ это моё предложение копируй эту строку в Ворд, там при помощи «рисовать таблицу» дели столбец на две колонки, потом копируй обратно.
          Геморно, но это хоть какой то выход. Ну или ручками переноси 🙂 . Удачи

          Ответ от

          22 ответа

          Привет! Вот подборка тем с ответами на Ваш вопрос: Как разделить в экселе строку на две колонки?

          Ответ от Demoniqus
          Сервис — Текст по столбцам — там выбираешь либо фиксированной ширины, либо с разделителем. Другой способ — писать скрипт.

          Ответ от Павел Гордеев
          Разделить колонку на две, естессно просто, но чтоб при этом текст также разделился на две части, это совсем не просто. Может быть макросы бы тут и справились, но поверь, лучше вручную, чем искать способ решения такой задачи.

          При работе в программе Excel иногда наступает необходимость объединения двух и более столбцов. Некоторые пользователи не знают, как это сделать. Другие знакомы только с самыми простыми вариантами. Мы же обсудим все возможные способы объединения этих элементов, ведь в каждом отдельном случае рационально использовать различные варианты.

          Процедура объединения

          Все способы объединение столбцов можно условно разделить на две большие группы: использование форматирования и применение функций. Процедура форматирования более простая, но некоторые задачи по слиянию колонок можно решить, только задействовав специальную функцию. Рассмотрим все варианты подробнее и определим, в каких конкретных случаях лучше применять определенный способ.

          Способ 1: объединение с помощью контекстного меню

          Самый распространенный способ объединения столбцов – это использование инструментов контекстного меню.

          1. Выделяем первый сверху ряд ячеек колонок, которые мы хотим объединить. Кликаем по выделенным элементам правой кнопкой мыши. Открывается контекстное меню. Выбираем в нем пункт «Формат ячеек…».
          2. Открывается окно форматирования ячеек. Переходим во вкладку «Выравнивание». В группе настроек «Отображение» около параметра «Объединение ячеек» ставим галочку. После этого жмем на кнопку «OK».
          3. Как видим, мы объединили только верхние ячейки таблицы. Нам же нужно объединить все ячейки двух столбцов построчно. Выделяем объединенную ячейку. Находясь во вкладке «Главная» на ленте кликаем по кнопке «Формат по образцу». Данная кнопка имеет форму щетки и расположена в блоке инструментов «Буфер обмена». После этого, просто выделяем всю оставшуюся область, в пределах которой нужно объединить столбцы.
          4. После проведения форматирования по образцу столбцы таблицы будут объединены в один.

          Внимание! Если в объединяемых ячейках будут находиться данные, то сохранится только та информация, которая находится в самом первом слева столбце выделенного интервала. Все остальные данные будут уничтожены. Поэтому за редким исключением данный способ рекомендуется использовать для работы с пустыми ячейками или с колонками с малоценными данными.

          Способ 2: объединение с помощью кнопки на ленте

          Также объединение столбцов можно провести при помощи кнопки на ленте. Этим способом удобно пользоваться, если вы хотите объединить не просто колонки отдельной таблицы, а листа в целом.

          1. Для того, чтобы объединить столбцы на листе полностью, их нужно сперва выделить. Становимся на горизонтальную панель координат Excel, в которой записаны наименования колонок буквами латинского алфавита. Зажимаем левую копку мыши и выделяем те колонки, которые хотим объединить.
          2. Переходим во вкладку «Главная», если в данный момент находимся в другой вкладке. Жмем на пиктограмму в виде треугольника, остриём направленного вниз, справа от кнопки «Объединить и поместить в центре», которая расположена на ленте в блоке инструментов «Выравнивание». Открывается меню. Выбираем в нем пункт «Объединить по строкам».

          После этих действий, выделенные колонки всего листа буду объединены. При использовании данного способа, как и в предыдущем варианте, все данные, кроме тех, которые до объединения находились в крайнем левом столбце, будут утеряны.

          Способ 3: объединение с помощью функции

          В то же время, существует возможность объединения столбцов без потерь данных. Реализация этой процедуры значительно сложнее первого способа. Она осуществляется с помощью функции СЦЕПИТЬ.

          1. Выделяем любую ячейку в пустом столбце на листе Excel. Для того, чтобы вызвать Мастер функций, кликаем по кнопке «Вставить функцию», расположенной около строки формул.
          2. Открывается окно с перечнем различных функций. Нам нужно среди них найти наименование «СЦЕПИТЬ». После того как находим, выделяем этот пункт и нажимаем на кнопку «OK».
          3. После этого открывается окно аргументов функции СЦЕПИТЬ. Её аргументами являются адреса ячеек, содержимое которых нужно объединить. В поля «Текст1», «Текст2» и т.д. нам нужно внести адреса ячеек самого верхнего ряда объединяемых столбцов. Сделать это можно вписав адреса вручную. Но, гораздо удобнее поставить в поле соответствующего аргумента курсор, а затем выделить ячейку, подлежащую объединению. Точно таким же образом поступаем и с другими ячейками первой строки объединяемых колонок. После того, как координаты появились в полях «Тест1», «Текст2» и т.д., жмем на кнопку «OK».
          4. В ячейке, в которую выводится результат обработки значений функцией, отобразились объединенные данные первой строки склеиваемых столбцов. Но, как видим, слова в ячейке с результатом слиплись, между ними нет пробела.

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

            " ";

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

            =СЦЕПИТЬ(B3;C3)

            была изменена на следующую:

            =СЦЕПИТЬ(B3;" ";C3)

            Как видим, между словами появляется пробел, и они больше не являются слипшимися. При желании вместе с пробелом можно поставить запятую или любой другой разделитель.

          5. Но, пока мы видим результат только для одной строки. Чтобы получить объединенное значение столбцов и в других ячейках, нам нужно скопировать функцию СЦЕПИТЬ на нижний диапазон. Для этого устанавливаем курсор в нижний правый угол ячейки, содержащей формулу. Появляется маркер заполнения в виде крестика. Зажимаем левую кнопку мыши и протягиваем его вниз до конца таблицы.
          6. Как видим, формула скопирована на диапазон ниже, а соответствующие результаты отобразились в ячейках. Но мы просто вынесли значения в отдельный столбец. Теперь же нужно объединить первоначальные ячейки и вернуть данные в изначальное место расположения. Если просто объединить или удалить исходные столбцы, то формула СЦЕПИТЬ будет нарушена, и мы все равно утратим данные. Поэтому поступим немного по-другому. Выделяем колонку с объединенным результатом. Во вкладке «Главная» жмем на кнопку «Копировать», размещенную на ленте в блоке инструментов «Буфер обмена». Как альтернативное действие, можно после выделения столбца набрать на клавиатуре сочетание клавиш Ctrl+C.
          7. Устанавливаем курсор на любую пустую область листа. Кликаем правой кнопкой мыши. В появившемся контекстном меню в блоке «Параметры вставки» выбираем пункт «Значения».
          8. Мы сохранили значения объединенного столбца, и они уже не зависят от формулы. Ещё раз копируем данные, но уже с нового места их размещения.
          9. Выделяем первый столбец изначального диапазона, который нужно будет объединить с другими колонками. Жмем на кнопку «Вставить» размещенную на вкладке «Главная» в группе инструментов «Буфер обмена». Можно вместо последнего действия нажать на клавиатуре сочетание клавиш Ctrl+V.
          10. Выделяем первоначальные столбцы, которые следует объединить. Во вкладке «Главная» в блоке инструментов «Выравнивание» открываем уже знакомое нам по предыдущему способу меню и выбираем в нем пункт «Объединить по строкам».
          11. После этого, возможно, несколько раз появится окошко с информационным сообщением о потере данных. Каждый раз жмите на кнопку «OK».
          12. Как видим, наконец данные объединены в одном столбце в том месте, в котором это изначально требовалось. Теперь нужно очистить лист от транзитных данных. Таких областей у нас две: колонка с формулами и столбец со скопированными значениями. Выделяем поочередно первый и второй диапазон. Кликаем правой кнопкой мыши по выделенной области. В контекстном меню выбираем пункт «Очистить содержимое».
          13. После того, как мы избавились от транзитных данных, форматируем объединенный столбец на свое усмотрение, так как вследствие наших манипуляций его формат обнулился. Тут уже все зависит от целевого назначения конкретной таблицы и остается на усмотрение пользователя.

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

          Урок: Мастер функций в Excel

          Как видим, существует несколько способов объединения столбцов в Экселе. Можно использовать любой из них, но при определенных обстоятельствах следует отдавать предпочтения конкретному варианту.

          Так, большинство пользователей предпочитают использовать объединение через контекстное меню, как наиболее интуитивно понятное. Если же нужно произвести слияние столбцов не только в таблице, но и по всему листу, то тут на помощь придет форматирование через пункт меню на ленте «Объединить по строкам». Если же нужно произвести объединение без потерь данных, то с этой задачей можно справиться, лишь использовав функцию СЦЕПИТЬ. Хотя, если задачи сохранения данных не ставится, а тем более, если объединяемые ячейки пустые, то использовать данный вариант не рекомендуется. Это связано с тем, что он довольно сложный и его реализация занимает относительно много времени.

          Мы рады, что смогли помочь Вам в решении проблемы.

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

          Помогла ли вам эта статья?

          Да Нет

          Сегодня давайте рассмотрим как разбить текст по столбцам. Это можно сделать в несколько кликов пользуясь стандартными возможностями разбиения текста в Excel либо можно «вырезать»»разделять» текст в различные столбцы при помощи формул (это мы рассмотрим в последующих статьях).

          Как делить текст с помощью формул смотрите в специальной статье

          Необходимость разбить текст по столбцам может потребоваться нам, например, при разбиении ФИО на Фамилию Имя и Отчество (в разные ячейки) или в других ситуациях (пример с ФИО самый распространенный случай).

          Наши данные для разбиения:

          Данные для разбиения

          Выделим данные для разбиения по столбцам — можно выделить весь столбец целиком.

          Перейдем по ленте на вкладку «Данные» и выберем иконку «Текст по столбцам» — откроется диалоговое окно:

          Мастер разбиения

          Так как наши ФИО записаны через пробел, то укажем разделителем пробел:

          Указываем разделитель

          Кликаем «Готово» (в нашем примере можно не переходить далее по всем шагам мастера разбиения). Получили текст разбитый по столбцам:

          Результат разбиения текста

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

          Очень надеемся, что наша статья помогла Вам в решении Вашей проблемы. Будем благодарны, если Вы нажмете +1 и/или Мне нравится внизу данной статьи или поделитесь с друзьями с помощью кнопок расположенных ниже.

          Спасибо за внимание.

          Содержание

          1. Как в офисе.
          2. Макрос выглядит следующим образом:
          3. Похожее:
          4. Как распечатать длинную колонку на одной странице в Excel?
          5. Распечатать длинный столбец на одной странице с формула
          6. Печатать длинный столбец на одной странице с кодом VBA
          7. Распечатать длинный столбец на одной странице с помощью Kutools for Excel
          8. Как поделить таблицу Excel на две колонки для печати на одном листе.
          9. Макрос выглядит следующим образом:
          10. Как поделить таблицу Excel на две колонки для печати на одном листе.: 2 комментария
          11. Добавить комментарий Отменить ответ

          Как в офисе.

          Приведенный в статье макрос является альтернативой опции «колонки» используемой в настройках «разметки страницы» программы Word .

          Рассмотрим для примера таблицу с перечнем товаров хранящихся на складах. В данной таблице существует 4 столбца: номер подпункта, наименование товара, артикулярный номер товара на складе и место хранения (наименование склада).

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

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

          Если в программе Word есть функция во вкладке «Разметка страницы» называемая «Колонки», которая позволяет делить текст на несколько колонок, то в Excel такой опции найти не удается.

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

          Макрос выглядит следующим образом:

          Sub DveKolonki()

          Dim sheetActive As Worksheet, sheetNoviy As Worksheet ‘добавляем переменные, как листы

          Dim Vsego As Long, Perviy As Long ‘добавляем переменные для определения границ таблицы

          Set sheetActive = ActiveSheet ‘присваиваем переменной активный лист

          Vsego = sheetActive.Cells.Find(What:=»?», LookIn:=xlValues, LookAt:= _

          , SearchFormat:=False).Row — 1 ‘определяем диапазон

          Perviy = Application.WorksheetFunction.RoundUp(Vsego / 2, 0) ‘делим диапазон

          Set sheetNoviy = Sheets.Add(, Sheets(Sheets.Count)) ‘определяем новый лист

          sheetNoviy.Range(«A1:E1»).Value = sheetActive.Range(«A1:E1»).Value

          sheetNoviy.Range(«F1:J1»).Value = sheetActive.Range(«A1:E1»).Value

          sheetNoviy.Range(«A2»).Resize(Perviy, 5).Value = sheetActive.Range(«A2»).Resize(Perviy, 5).Value

          sheetNoviy.Range(«F2»).Resize(Vsego — Perviy, 5).Value = _

          sheetActive.Range(«A» & Perviy + 2).Resize(Vsego — Perviy, 5).Value ‘делим таблицу

          End Sub

          Необходимо в панели разработчика открыть просмотр кода и добавить код макроса в книгу Excel.

          Запускать макрос можно из перечня макросов (книги макросов) или присвоить его активному элементу, например, кнопке или чекбоксу.

          Подробнее о присвоение макроса кнопке далее по ссылке.

          Похожее:

          Источник

          Как распечатать длинную колонку на одной странице в Excel?

          Предположим, у вас есть длинный список данных в столбце, может быть, 200 строк, и теперь вам нужно их распечатать, но когда вы печатаете, он использует около 5 страниц бумаги только с одним столбцом слева и много белого пространства справа. Словом, столбец можно, но в Excel этой функции нет. Как распечатать длинный список данных на одной странице, чтобы сэкономить бумагу?

          Печатать длинный столбец на одной странице с формулой

          Распечатать длинный столбец на одной странице с кодом VBA

          Распечатать длинный столбец на одной странице с помощью Kutools for Excel

          • Повторно использовать что угодно: добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
          • Более 20 текстовых функций: извлечение числа из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
          • Инструменты слияния: несколько книг и листов в одну; Объединить несколько ячеек/строк/столбцов без потери данных; Объедините повторяющиеся строки и суммируйте.
          • Инструменты разделения: разделение данных на несколько листов в зависимости от значения; Из одной книги в несколько файлов Excel, PDF или CSV; Один столбец в несколько столбцов.
          • Вставить пропуск скрытых/отфильтрованных строк; Подсчет и сумма по цвету фона; Массовая отправка персонализированных писем нескольким получателям.
          • Суперфильтр: создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделе, дню, частоте и т. Д. Фильтр жирным шрифтом, формулами, комментарием …
          • Более 300 мощных функций; Работает с Office 2007-2019 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.

          Распечатать длинный столбец на одной странице с формула

          Потрясающе! Использование эффективных вкладок в Excel, таких как Chrome, Firefox и Safari!
          Сэкономьте 50% своего времени и сократите тысячи щелчков мышью каждый день!

          Здесь я могу представить вам длинную формулу решения этой проблемы, пожалуйста, сделайте следующее:

          1 . На новом листе активной книги введите формулу = IF (OFFSET (Sheet1! $ A $ 1, (COLUMN () – 1) * 45 + ROW () – 1,0) = “”, “”, СМЕЩЕНИЕ (Sheet1! $ A $ 1, (COLUMN () – 1) * 45 + ROW () – 1,0)) в ячейку A1.

          Примечания : Sheet1 – это рабочий лист с длинным списком, который вы хотите разместить в столбце..

          45 – это номер строки, в которой вы хотите перечислить данные в столбце.

          Все они являются переменными, и вы можете изменить их по своему усмотрению.

          2 . Затем выберите ячейку A1 и перетащите маркер заполнения вниз до строки 45, а затем продолжайте перетаскивать маркер заполнения вправо, пока данные не будут отображены. И длинный столбец был разделен на несколько столбцов, чтобы поместиться на одной странице нового рабочего листа. См. Снимок экрана:

          Печатать длинный столбец на одной странице с кодом VBA

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

          1 . Удерживая нажатыми клавиши ALT + F11 , откроется окно Microsoft Visual Basic для приложений .

          2 . Щелкните Insert > Module и вставьте следующий код в окно модуля.

          3 . Затем нажмите клавишу F5 , чтобы запустить этот код, и выберите данные списка, которые вы хотите разделить, во всплывающем диалоговом окне, см. Снимок экрана:

          4 . Нажмите OK и введите количество столбцов, которые вы хотите разделить. См. Снимок экрана:

          5 . И нажмите OK , длинный столбец разделен на пять столбцов на новом листе. См. Скриншоты:

          Распечатать длинный столбец на одной странице с помощью Kutools for Excel

          И длинная формула, и код VBA могут быть трудными для вас, здесь я могу Представляем вам простой и удобный способ решения этой проблемы. Функция Kutools for Excel Печать нескольких столбцов может помочь вам быстро разделить длинный столбец на несколько столбцов, чтобы их можно было распечатать разумно.

          Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас .

          После установки Kutools for Excel вы можете выполнить следующие действия:

          1 . Нажмите Enterprise > Печать нескольких столбцов , см. Снимок экрана:

          . В диалоговом окне Печать нескольких столбцов :

          3 . Затем нажмите OK , данные длинного списка были разделены на пять столбцов на странице. См. снимки экрана:

          Примечания:

          1. Заголовок будет добавляется перед каждым столбцом.

          2. Если вы установите флажок Создать ссылку с активным листом , новый рабочий лист Данные могут быть связаны с исходными данными.

          Если вы хотите узнать больше об этой функции, нажмите Печать нескольких столбцов .

          Источник

          Как поделить таблицу Excel на две колонки для печати на одном листе.

          Приведенный в статье макрос является альтернативой опции «колонки» используемой в настройках «разметки страницы» программы Word .

          Рассмотрим для примера таблицу с перечнем товаров хранящихся на складах. В данной таблице существует 4 столбца: номер подпункта, наименование товара, артикулярный номер товара на складе и место хранения (наименование склада).

          № п.п. Наименование товара Артикул Место размещения
          1 Яблоки 112 Склад №1
          2 Щетка 18 445 Склад №4
          3 Шаурма 65 631 Склад №3
          4 Черничное варенье 31 754 Склад №5
          5 Черника 30 544 Склад №4
          6 Чаша 77 730 Склад №3
          7 Чайный набор 40 223 Склад №2
          8 Чай 58 372 Склад №2
          9 Филе бобра 28 124 Склад №2
          10 Тунец 52 322 Склад №2
          11 Томаты 55 952 Склад №5
          12 Тара Пластиковая 8 766 Склад №1
          13 Сыр 63 211 Склад №1
          14 Сывородка 64 421 Склад №2
          15 Суши 46 273 Склад №2
          16 Сливки 60 792 Склад №4
          17 Слива 11 112 Склад №5
          18 свежий карп 25 705 Склад №5
          19 Сахар 41 433 Склад №3
          20 Рыбий жир 26 914 Склад №1
          21 Рыба мороженная 24 495 Склад №4
          22 Поводок для собаки 20 865 Склад №1
          23 Поводок для кошки 19 655 Склад №5
          24 Пакет пластиковый 13 606 Склад №5
          25 Пакет ПВХ 14 815 Склад №1
          26 Оладьи замороженные 35 384 Склад №3
          27 Носки мужские 74 101 Склад №5
          28 Носки женские 72 891 Склад №4
          29 Ножницы 11 186 Склад №3
          30 Мякоть кокоса 29 334 Склад №3
          31 Монитор 19″ 36 594 Склад №4
          32 Молоко 62 002 Склад №5
          33 Мангал 48 693 Склад №4
          34 Малина весовая 34 174 Склад №2
          35 Лопата 66 841 Склад №4
          36 Лом 68 051 Склад №5
          37 Ложка чайная 42 643 Склад №4
          38 Лодка надувная 47 483 Склад №3
          39 Лавровый лист 37 804 Склад №5
          40 Куртка стеганная 71 681 Склад №3
          41 Красная краска 11 123 Склад №2
          42 Кофе 59 582 Склад №3
          43 Колготки женские 17 235 Склад №3
          44 Клавиатура 12 396 Склад №4
          45 Карп филе 51 112 Склад №1
          46 Кабачки 57 162 Склад №1
          47 Имбирь 43 853 Склад №5
          48 Икра черная 23 285 Склад №3
          49 Икра красная 22 075 Склад №2
          50 Изюм 45 063 Склад №1
          51 Земляника 32 964 Склад №1
          52 Зелень (укроп) 2 112 Склад №3
          53 Груша 1 222 Склад №4
          54 Грибы 53 532 Склад №3
          55 Горошек 54 742 Склад №4
          56 Гиря 69 261 Склад №1
          57 Вилки стальные 9 976 Склад №2
          58 Ветошь 49 903 Склад №5
          59 Весы 16 025 Склад №2
          60 Ведро 8л 75 310 Склад №1
          61 Ведро 10 л 76 520 Склад №2
          62 Валенки 70 471 Склад №2
          63 Бумага 400мг/м 39 013 Склад №1

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

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

          Если в программе Word есть функция во вкладке «Разметка страницы» называемая «Колонки», которая позволяет делить текст на несколько колонок, то в Excel такой опции найти не удается.

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

          Макрос выглядит следующим образом:

          Sub DveKolonki()

          Dim sheetActive As Worksheet, sheetNoviy As Worksheet ‘добавляем переменные, как листы

          Dim Vsego As Long, Perviy As Long ‘добавляем переменные для определения границ таблицы

          Set sheetActive = ActiveSheet ‘присваиваем переменной активный лист

          Vsego = sheetActive.Cells.Find(What:=»?», LookIn:=xlValues, LookAt:= _

          xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _

          , SearchFormat:=False).Row — 1 ‘определяем диапазон

          Perviy = Application.WorksheetFunction.RoundUp(Vsego / 2, 0) ‘делим диапазон

          Set sheetNoviy = Sheets.Add(, Sheets(Sheets.Count)) ‘определяем новый лист

          sheetNoviy.Range(«A1:E1»).Value = sheetActive.Range(«A1:E1»).Value

          sheetNoviy.Range(«F1:J1»).Value = sheetActive.Range(«A1:E1»).Value

          sheetNoviy.Range(«A2»).Resize(Perviy, 5).Value = sheetActive.Range(«A2»).Resize(Perviy, 5).Value

          sheetNoviy.Range(«F2»).Resize(Vsego — Perviy, 5).Value = _

          sheetActive.Range(«A» & Perviy + 2).Resize(Vsego — Perviy, 5).Value ‘делим таблицу

          End Sub

          Необходимо в панели разработчика открыть просмотр кода и добавить код макроса в книгу Excel.

          Запускать макрос можно из перечня макросов (книги макросов) или присвоить его активному элементу, например, кнопке или чекбоксу.

          Подробнее о присвоение макроса кнопке далее по ссылке.

          Как поделить таблицу Excel на две колонки для печати на одном листе.: 2 комментария

          отчет на 80 листов
          на первом листе будет столбец с первого листа (начало) и столбец с сорокового листа …. кому это может понадобиться ….

          правильно это если по порядку на первом листе не 40 строк в один столбец (например) а первые 80 строк в два столбца, на втором листе продолжение.

          это уже можно назвать «как колонки в ворде»

          Добрый день, Алексей. Вы правы для больших таблиц предложенный вариант распечатки подойдет не всем, поэтому на сайте не выложен готовый файл с макросом, а опубликован код VBA (макрос), который каждый пользователь сможет скорректировать — «подправить» для своих целей и своей конкретной таблицы.
          Спасибо, что написали комментарий и указали на возможные трудности в работе с макросом.

          Добавить комментарий Отменить ответ

          Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

          Источник

           

          s7263808

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

          С Новым годом!
          Данный вопрос обсуждался. Решение предлагалось при помощи надстройки PLEX.
          Пробовал — у меня ничего не получилось.

          Есть список 5-10 тыс строк. В списке 5 столбцов.
          Список нужно распечатать в две колонки.

          Прилагаю файл. В файле есть лист- ДАНО и лист как НАДО.
          Спасибо.

           

          Karataev

          Пользователь

          Сообщений: 2306
          Регистрация: 23.10.2014

          #2

          02.01.2015 21:24:22

          для этого макроса на листе не должно быть скрытых строк
          макрос нужно  запускать,когда активный лист-это исходный лист

          Код
          Sub Макрос()
              Dim shActive As Worksheet, shNew As Worksheet
              Dim total As Long, first As Long
              Set shActive = ActiveSheet
              total = shActive.Cells.Find(What:="?", LookIn:=xlValues, LookAt:= _
                  xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _
                  , SearchFormat:=False).Row - 1
              first = Application.WorksheetFunction.RoundUp(total / 2, 0)
              Set shNew = Sheets.Add(, Sheets(Sheets.Count))
              shNew.Range("A1:E1").Value = shActive.Range("A1:E1").Value
              shNew.Range("F1:J1").Value = shActive.Range("A1:E1").Value
              shNew.Range("A2").Resize(first, 5).Value = shActive.Range("A2").Resize(first, 5).Value
              shNew.Range("F2").Resize(total - first, 5).Value = _
                  shActive.Range("A" & first + 2).Resize(total - first, 5).Value
          End Sub
           

          Korss

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

          Karataev, Огромное спасибо!

          Прошу прощения. Но я не знаю куда вставить этот код макроса и как его запустить.

           

          Karataev

          Пользователь

          Сообщений: 2306
          Регистрация: 23.10.2014

          вам нужно один раз сделать работу или  периодически надо делать  эту работу?

           

          Korss

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

           

          Karataev

          Пользователь

          Сообщений: 2306
          Регистрация: 23.10.2014

          вставил макрос в файл и сделал кнопку для запуска  макроса

          Прикрепленные файлы

          • Макрос.xlsm (55.43 КБ)

          Изменено: Karataev02.01.2015 21:54:17

           

          Korss

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

          При запуске макроса всплывает окно

           

          Karataev

          Пользователь

          Сообщений: 2306
          Регистрация: 23.10.2014

          при открытии файла вверху появляется панель с кнопкой,на которой написано про макросы ?
          я внес изменения в файл,поэтому на всякий случай  скачайте файл еще раз

           

          Korss

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

          Открыл книгу заново — работает.

          Огромное спасибо!

           

          Сергей

          Пользователь

          Сообщений: 11251
          Регистрация: 01.01.1970

          Korss, у меня при первом скачивании сработало нормально

          Лень двигатель прогресса, доказано!!!

           

          Leanna

          Пользователь

          Сообщений: 816
          Регистрация: 15.01.2013

          #11

          02.01.2015 22:36:51

          раз делала выкладываю
          от выделения отталкивается.

          Код
          Sub Разбить_по_столбцам()
          Const newrr = 15 'новое кол-во строк
          Set output = Sheets("Дано").[G1] 'куда выводить
          
          rr = Selection.Rows.Count
          cc = Selection.Columns.Count
          Set cell = Selection.Cells(2, 1)
          
          ii = Application.WorksheetFunction.RoundUp((rr - 1) / (newrr - 1), 0)
          title0 = cell.Offset(-1, 0).Resize(1, cc)
          
          For i = 0 To ii - 1
          output.Offset(0, cc * i).Resize(1, cc) = title0
          output.Offset(1, cc * i).Resize(newrr - 1, cc).Value = _
              cell.Offset((newrr - 1) * i, 0).Resize(newrr - 1, cc).Value
          Next
          
          End Sub

          Прикрепленные файлы

          • Печать списка в две колонки.xlsm (59.33 КБ)

          Работать надо не 12 часов, а головой.

           

          Korss

          Пользователь

          Сообщений: 72
          Регистрация: 18.11.2014

          Leanna,Спасибо. Попробовал.
          С Вашего позволения уточню задачу.

          Изначально список может быть до 20 000 строк по 5 столбцов.
          Если будет 9000 строк две колонки будут занимать 4500 строк на листе.
          Если 4000 то 2000 на листе.

          Мне ответил  

          Karataev

          у него все как надо.
          Но Вам тоже спасибо.

          Изменено: Korss03.01.2015 00:46:57

           

          fater

          Пользователь

          Сообщений: 1
          Регистрация: 11.03.2017

          Здравствуйте может кто ни будь помочь необходимо поделить список на две колонки, но в данном макросе делится ровно пополам по всему тексту, а нужно чтоб каждая вторая страница поднималась к первой.
          Сейчас делается
          1 5
          2 6
          3 7
          4 8
          а нужно
          1 2
          3 4
          5 6
          7 8

          Количество строк до 100000. Пример во вложение.

          Прикрепленные файлы

          • п.xls (74.5 КБ)

          Изменено: fater09.04.2017 09:40:29

           

          Stane

          Пользователь

          Сообщений: 1
          Регистрация: 30.01.2018

          Актуально ?
          самому понадобилось… набросал программку

           

          Svetllllana

          Пользователь

          Сообщений: 4
          Регистрация: 21.12.2015

          #15

          13.11.2018 13:53:58

          Stane, очень пригодился ответ! Спасибо большое!

          Понравилась статья? Поделить с друзьями:

          А вот еще интересные статьи:

        • Excel две диаграммы с одной легендой
        • Excel две диаграммы рядом
        • Excel два числа совпадение
        • Excel два файла открываются в одном окне
        • Excel два условия если или

        • 0 0 голоса
          Рейтинг статьи
          Подписаться
          Уведомить о
          guest

          0 комментариев
          Старые
          Новые Популярные
          Межтекстовые Отзывы
          Посмотреть все комментарии