Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Копирование данных по маске., Перенос данных из таблицы в таблицу.
 
Цитата
написал:
достаточно несложной формулой можно решить - например СУММПРОИЗВ() с тремя аргументами

Немного не то. Мне надо скопировать данные из таблицы в таблицу, ориентируясь на имя и дату
Изменено: cheiz - 06.12.2023 16:59:45
Копирование данных по маске., Перенос данных из таблицы в таблицу.
 
Цитата
написал:
Циклы в VBA - ОфисГуру (office-guru.ru)
Спасибо за ссылку. Пригодится.
Копирование данных по маске., Перенос данных из таблицы в таблицу.
 
Цитата
написал:
Да есть. Использование метода Find в цикле
Спасибо. Попробую.
Копирование данных по маске., Перенос данных из таблицы в таблицу.
 
Всем доброго дня. Возник небольшой вопрос с копированием данных в таблице. Есть две таблицы на разных листах в одной книге. (Таблица_1 и таблица_2).
Суть такова, в таблицу №1 в колонку Ф.И.О. рандомно заносятся имена сотрудников (заносятся рандомно но список определённый). Во второй колонке ставится число (дата, день, например 2 - 2-е число, текущего месяца), в третьей количество отработанных часов. В четвёртой выполненные работы (эта колонка не учитывается, с неё данные не забираются). Далее, при нажатии кнопки выполняется алгоритм: начиная с первой ячейки данных Ф.И.О сканируется значение в ней, далее находится строка с Такой же фамилией в таблице №2, в таблице №1 сканируется значение в ячейке дата и находится столбец в таблице№2 с этой датой. Данные из третьей ячейки, копируются в ячейку полученную на перекрёстке фамилии и даты в таблице №2. И так вся таблица слева - направо, сверху вниз. Т.е. проверяется заданный диапазон. И данные переносятся в таблицу №2.  Если писать каждую ячейку через условие IF-Else, то код будет километровый. Другие функции пока не знаю. Есть что-то более действенное, для работы в заданном диапазоне?
Не строится график после преобразования csv в xlsx, Не строится график после преобразования csv в xlsx
 
Дело в том, что я привёл только кусочек данных. По факту там более 4000 строк. Менять долго придётся. Плюс я хочу сделать макрос, который будет автоматически конвертировать csv в xls, строить график и выводить его на печатью Пока завис на конвертировании с построением графика.
Не строится график после преобразования csv в xlsx, Не строится график после преобразования csv в xlsx
 
После преобразования csv файла в xlsx не строится адекватно график. Формат ячеек выставлен общий, либо числовой и.т.д. не влияет на итог. При попытке выделить область данных с построением, выделяет непонятно что.
Поиск по маске массива, Необходимо изменить код для работы не с одной ячейкой, а с массивом.
 
Взял за основу код взятый в одной из тем. Немного "допилил" под свои нужды. Но если с одной таблицей  помогло, то с другой загвоздка. В ней надо данные не одной ячейки сравнивать и копировать, а  с массива ячеек. Грубо говоря не с "B2". А взять ("B2:AM2") и занести итоговые данные в массив пустых ячеек ("B3:B40"). Далее будет автоматический сдвиг столбцов на +1 вправо. Есть сомнения по поводу некоторых строк. Но пока ещё неуверенно ориентируюсь в этом.
Код
Sub Расчёт_простоя()
     Dim strFindData As String

   Dim rgFound As Range

   Dim i As Integer

  Sheets("Расчёты").Select
    Range("B2").Select

   ' Ввод строки для поиска

   strFindData = Range("B2")

   ' Просмотр всех рабочих листов книги

   For i = 1 To Worksheets.Count ' (сомневаюсь на счёт этой строки)

      With Worksheets("Время простоев").Cells

         ' Поиск на  листе "Время простоев"

         Set rgFound = .Find(strFindData, LookIn:=xlValues)

         If Not rgFound Is Nothing Then

            ' Ячейка с заданным значением найдена - выделим ее

            Sheets("Время простоев").Select

            rgFound.Select

 Do While Not IsEmpty(ActiveCell.Value) ' ищем последнюю непустую ячейку и смещаемся на одну вправо

      ActiveCell.Offset(0, 1).Select

   Loop
  
    
   

   ActiveCell = Workbooks("ТОиР ОГМ.xlsm").Sheets("Расчёты").Range("B1") ' Занесение в активную ячейку результата из ячейки А1
Sheets("Время простоев").Select
'*****************************************
'Сохранение отчёта в папку
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "D:\Отчёты\Отчёты_по_простоям\Отчёт_по_простоям_" & Format(Now, "_DD_MMMM_YYYY") & ".pdf", Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
        
Exit Sub

         End If

      End With

   Next  ' расчёт времени простоя завершён
        
End Sub
Рассчитать время, затраченное на полет
 
Цитата
БМВ написал:
Почему? Посчитать она посчитает , но нужно задать корректный формат вывода , в часах.
Наверное всё же не в часах. Если будет супер продолжительный полёт, более суток, формула не учтёт  дни и напишет только затраченные часы. А вот полная дата покажет всё. Но вы правы, формула обсчитала всё. Значит я могу обойтись малой кровью.
Рассчитать время, затраченное на полет
 
Цитата
БМВ написал:
cheiz , Спустя более  года от разбора темы вы со своим высказыванием и с картинкой. У вас дата включает время, в исходной теме просто время. У вас совершенно другой вопрос и следовательно другая тема.
Моё высказывание относилось скорее к сообщению №4. Где была дана подсказка на банальную формулу, которая не посчитает адекватно затраченное время. Далее в сообщении №6 просто уточнил почему вообще меня это интересует. А в №8 ответил на №7. Не более. Не справлюсь сам, создам тему. Если ничего по теме "Дата-время" нет, думаю на этом   закончим разборы моих высказываний.
Рассчитать время, затраченное на полет
 
Нет, бланк набирается в электронном виде. Печатается уже после всех манипуляций.  Сканить, распознавать ничего не надо. Большую часть ( набор, оформление, автосохранение в каталоги) сделал. Тут новое задание в плечи - хотим знать время простоя оборудования за месяц. Планирую создать таблицу под каждое наименование  оборудования, куда бы ежемесячно сбрасывалось время забранное из заявки (при её наборе, сброс по маске), и кнопку с макросом, который суммируя время за месяц, создаёт авто отчёт в PDF.
Рассчитать время, затраченное на полет
 
У меня аналогичная задача. Только считаю не время полёта, а время затраченное на ремонт. Ремонт может длиться более суток. Поэтому нужен учёт дней, часов, минут. Но у меня всё пишется макросом. Требуется макрос позволяющий забрать время начала и конца ремонта с бланка заявки, далее переносящий данные на другой лист, где будет  табличка с простоями по датам.
Рассчитать время, затраченное на полет
 
посадка - вылет не пойдёт. Если требуется учесть и сутки. Да и с временем не всё так однозначно. Тут необходимо сравнение.
Макрос для сохранения файла в папку с именем, идентичным введённому в ячейку., Не получается сохранить файл в нужную папку.
 
Спасибо огромное. Заработало.  Символ "&" пропустил.....
Макрос для сохранения файла в папку с именем, идентичным введённому в ячейку., Не получается сохранить файл в нужную папку.
 
Доброго времени суток. Не нашёл в сети ничего похожего. Создаю документ с автоматическим сохранением в формате PDF. Смог добиться только того чтобы после заполнения таблицы, файл преобразовался в PDF, открылся и сохранился в папку. Но требования ужесточили, необходимо чтобы сохранение шло в разные папки, по названию оборудования. Т.Е. например имеется ячейка A2, куда при  вбивается наименование (оно однотипное, выбирается из списка), например "Станок", далее при нажатии на кнопку, должен запуститься макрос, который сохранит PDF в папку с именем "Станок". А при вводе в А2 наименования "Мотор", в папку с именем "Мотор". Папки созданы заранее. Пока получилось создать документ в папке "Оборудование" с именем "Станок" + ДАТА.
Код
Sub Сохранение
Sheets ("Лист2"). Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=
"D:\Отчёты\Оборудование\Ремонт_"& Format(Now, "_DD_MMMM_YYYY") & ".pdf"
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False,
OpenAfterPublish:=True
End Sub
Изменено: cheiz - 28.02.2019 13:58:52
Страницы: 1
Наверх