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

Вход

Регистрация

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

 

= Мир MS Excel/Перенос и сортировка данных - Мир MS Excel

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

Excel 2010
Здравствуйте, есть первичный вид таблиц, где указана посещаемость работников на листе "Учет". Данные с этой таблицы нужно при помощи макроса(так как это будет выполнятся часто), перенести на новый лист, допустим "Для импорта"(на котором в ручную все перенесено). При помощи каких команд или функций можно подобное реализовать? В программирование немного понимаю, но конкретно язык VBA совсем не знаю. Или может у кого нибудь есть макросы с похожими задачами, буду признателен если ими поделятся. Файл Excel с первичным видом таблиц и вид таблицы после макроса прилагается.
К сообщению приложен файл: 1688549.xls (48.0 Kb)
 
Ответить
СообщениеЗдравствуйте, есть первичный вид таблиц, где указана посещаемость работников на листе "Учет". Данные с этой таблицы нужно при помощи макроса(так как это будет выполнятся часто), перенести на новый лист, допустим "Для импорта"(на котором в ручную все перенесено). При помощи каких команд или функций можно подобное реализовать? В программирование немного понимаю, но конкретно язык VBA совсем не знаю. Или может у кого нибудь есть макросы с похожими задачами, буду признателен если ими поделятся. Файл Excel с первичным видом таблиц и вид таблицы после макроса прилагается.

Автор - Exu
Дата добавления - 12.12.2016 в 08:18
nilem Дата: Понедельник, 12.12.2016, 10:13 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Exu, привет
попробуйте так:

[p.s.]На одного писателя - 4 сторожа! С этим надо что-то делать :) [/p.s.]


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеExu, привет
попробуйте так:

[p.s.]На одного писателя - 4 сторожа! С этим надо что-то делать :) [/p.s.]

Автор - nilem
Дата добавления - 12.12.2016 в 10:13
sboy Дата: Понедельник, 12.12.2016, 10:36 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
сделал на "коленке" циклами
К сообщению приложен файл: 1243516.xls (89.0 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
сделал на "коленке" циклами

Автор - sboy
Дата добавления - 12.12.2016 в 10:36
Exu Дата: Вторник, 13.12.2016, 01:23 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
nilem, за что отвечает данная строчка в коде:
"ReDim y (1 To UBound(x) * 1.5, 1 To 34 ): k = -2"
 
Ответить
Сообщениеnilem, за что отвечает данная строчка в коде:
"ReDim y (1 To UBound(x) * 1.5, 1 To 34 ): k = -2"

Автор - Exu
Дата добавления - 13.12.2016 в 01:23
nilem Дата: Вторник, 13.12.2016, 06:59 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
ReDim y (1 To UBound(x) * 1.5, 1 To 34) Устанавливаем размер выходного массива: фиксируем 34 столбца. А кол-во строк задаем в 1,5 раза больше, чем есть на листе Учет
k = -2 k - это просто счетчик строк в массиве


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеReDim y (1 To UBound(x) * 1.5, 1 To 34) Устанавливаем размер выходного массива: фиксируем 34 столбца. А кол-во строк задаем в 1,5 раза больше, чем есть на листе Учет
k = -2 k - это просто счетчик строк в массиве

Автор - nilem
Дата добавления - 13.12.2016 в 06:59
Exu Дата: Понедельник, 19.12.2016, 23:36 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
nilem, как можно в этот код добавить, что бы при n = 3 он копировал значение из предыдущей строки, т.к надо добавить еще 1 строку "Часы ОВ", но данные из листа в котором берем значения записаны наоборот, символ обозначающий вид стоит на нижней строке а часы стоят на верхней. Я добавил создание новой строки и добавил условие if n = 3 then y(k + n, j) = x(i - 1, j), но он наотрез отказывается добавлять значения
 
Ответить
Сообщениеnilem, как можно в этот код добавить, что бы при n = 3 он копировал значение из предыдущей строки, т.к надо добавить еще 1 строку "Часы ОВ", но данные из листа в котором берем значения записаны наоборот, символ обозначающий вид стоит на нижней строке а часы стоят на верхней. Я добавил создание новой строки и добавил условие if n = 3 then y(k + n, j) = x(i - 1, j), но он наотрез отказывается добавлять значения

Автор - Exu
Дата добавления - 19.12.2016 в 23:36
nilem Дата: Вторник, 20.12.2016, 08:27 | Сообщение № 7
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Попробуйте так:
вместо k = -2 пишем k = -3
вместо k = k + 3 пишем k = k + 4
и добавить Case "О": n = 3
если правильно понял


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеПопробуйте так:
вместо k = -2 пишем k = -3
вместо k = k + 3 пишем k = k + 4
и добавить Case "О": n = 3
если правильно понял

Автор - nilem
Дата добавления - 20.12.2016 в 08:27
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Перенос и сортировка данных (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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