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

Страницы: 1
Установка параметров печати на всех листах книги
 
Добрый день. Подскажите, пожалуйста, что не так в нижеприведенном макросе, который должен установить одинаковые параметры печати на всех листах книги. При пошаговом запуске макроса строка ".PrintArea = ws.UsedRange" почему-то не принимает значение (т.е.пусто).

Код
Sub MyPageSetup()
On Error Resume Next
Dim ws As Worksheet
Application.PrintCommunication = False

For Each ws In ActiveWorkbook.Worksheets
    With ws.PageSetup
        .PrintArea = ws.UsedRange
        .PrintTitleRows = "$1:$3"
        .CenterHorizontally = True
        .CenterVertically = False
        .Orientation = xlLandscape
        .PaperSize = xlPaperA4
        '.Zoom = False
        
        .LeftMargin = Application.InchesToPoints(0)
        .RightMargin = Application.InchesToPoints(0)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.393700787401575)
        .HeaderMargin = Application.InchesToPoints(0.196850393700787)
        .FooterMargin = Application.InchesToPoints(0.196850393700787)
        
        .FitToPagesWide = 1
        .FitToPagesTall = ""
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True

    End With
Next ws
Application.PrintCommunication = True
End Sub
Изменено: luckyman - 01.11.2023 11:15:13
Добавление или удаление большого заданного количества строк
 

Добрый день.

Просьба подсказать умный макрос для выполнения следующей задачи:

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

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

Если N<M, тогда следует скопировать предпоследнюю строку текущего рабочего листа в буфер обмена и вставить скопированные ячейки (M-N) раз перед предпоследней строкой. В противном случае, если N>M, тогда перед предпоследней строкой рабочего листа необходимо удалить (N-M) лишних строк.

Количество строк может быть более чем 50 тыс строк, поэтому нужен умный макрос для того, чтобы очень быстро вставить скопированные ячейки или удалить лишние ячейки.

СПАСИБО

Изменено: luckyman - 12.10.2023 13:52:50 (Уточнения приложенного файла)
Снятие защиты ячеек, Снятие защиты ячеек
 

Добрый день.

Нужен умный макрос для снятия галочки «Защищаемая ячейка» (в закладке «Защита» в меню «Формат ячеек») по ячейкам, закрашенным в желтый цвет (код цвета 65535). Данное действие нужно произвести по всем листам книги. Пример файла прилагается.

Заранее спасибо за подсказку и помощь.

Удаление нескольких страниц между двумя страницами
 
Добрый день. Нужно с помощью макроса удалить большое количество листов, распложённых между двумя заданными листами (см. прикрепленный файл) "start" и "end". Как это лучше сделать? Спасибо.
Превращение формул в значения в больших таблицах
 
Добрый день.

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

Описание задачи.
Нужно скопировать формулы из закрашенных в зеленый цвет ячеек вниз до конца таблицы, после чего превратить формулы в значения, при этом оставить формулы в закрашенных в зеленый цвет ячейках. В таблице более 40 тыс строк и 200 столбцов. В прикрепленном файле приводит сокращенный пример.

Когда столбцы, содержащие формулы, идут подряд, это делается очень просто (см. ниже макрос), а когда столбцы расположены в разной последовательности, и их более 200 штук требуется написать более умный макрос, в чем заключается задача.
Для подряд идущих столбцов использовал такой макрос:
Код
Range("AO5:AR37388") = Range("AO5:AR5").Formula
Range("AO6:AR37388").Formula = Range("AO6:AR37388").Value

Заранее спасибо за подсказку и помощь.
Изменено: vikttur - 26.08.2021 16:27:30
Масштабирование в MacOS, Масштабирование в MacOS
 
Добрый день.

При открытии таблиц эксель, ранее созданных в Windows, в MacOS масштаб не соответствует тому, что было в Windows: чтобы получить аналогичный масштаб, приходится увеличить масштаб в MacOS до 150%. Как можно сделать так, чтобы исходный масштаб остался или какое есть решение данного вопроса?

Спасибо
Вставка таблиц из MS Excel в MS Word (искажение шрифтов), Вставка таблиц из MS Excel в MS Word
 

Добрый день.

При вставке таблицы из  MS Excel в MS Word идет искажение вида таблицы, а именно буквы и числа в таблице становятся расплывчатыми, таблица растягивается, ничего невозможно делать. Это произошло после замены монитора 17 дюмов на 27 дюмов.

Вставку делаю через кнопку «Вставить»/Специальная вставка/Свзяать/Лист Microsoft Excel (объект). Данным методом я пользуюсь очень много лет, всегда такой способ вставки должным образом работал.

Скажите, пожалуйста, какие у вас есть мысли по данному вопросу?

Спасибо за советы.

Изменено: luckyman - 02.08.2019 19:43:52 (Вложение)
Преобразование иерархической таблицы в линейный вид, Преобразование иерархической таблицы в линейный вид
 
Добрый день.

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

Спасибо
Приведение таблиц из иерархического формата в линейный вид
 
Добрый день.

Буду очень благодарен за помощь в написании умного и универсального макроса для конвертации выгрузки из иерархического формата и линейный вид (см вложение).

Заранее спасибо  
Конвертация выгрузки из 1С в линейный вид
 
 

Добрый вечер.

 

Подскажите, пжста, возможно ли посредством макроса конвертировать выгрузку из 1С в линейную таблицу (см. вложение). Есть выгрузка «Отчет по проводкам» из 1С (огромное количество строк!), при этом количество субконто по дебету и кредиту переменное – может меняться от одного до трех строк. Требуется перенести данные из листа «Исходный вид» (выгрузка из 1С) на лист «Линейный вид».

 

Если данная тема уже обсуждалась, укажите, пжста, ссылку. Заранее благодарен за любой совет и помощь.

 

Спасибо

 
Изменено: annyegcam - 23.10.2017 21:21:00
Перенос данных из одного файла на другой файл через макрос, Перенос данных из одного файла на другой файл через макрос
 

Добрый день.

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

В приложении к сообщению три файла: w1 – имя принимающего файла (рабочий файл), w2 – имя передающего файла (файл-выгрузка из системы), s1 – имя принимающего листа рабочего файла, s2 – имя передающего листа файла выгрузки.

Кол-строк в файле-выгрузки около 50 тыс.строк, столбцы, макрос работает по ключевому полю «номер столбца», при этом последовательность номеров столбцов и их количество может отличаться.

Спасибо.

Код
Sub ppe_dt()
wb1 = Workbooks("ppe_vba.xlsm").Worksheets("Macros").Range("F3")
sh1 = Workbooks("ppe_vba.xlsm").Worksheets("Macros").Range("G3")
wb2 = Workbooks("ppe_vba.xlsm").Worksheets("Macros").Range("D3") 'wb contains download from ERP
sh2 = Workbooks("ppe_vba.xlsm").Worksheets("Macros").Range("e3") 'sh contains downloads from ERP
Workbooks(wb1).Worksheets(sh1).Activate
For k = 1 To 225 'number of columns of wb1
For i = 1 To 195 'number of columns of wb2
For j = 7 To 100 'number of rows of wb2
If Workbooks(wb1).Worksheets(sh1).Cells(4, k) = i Then
Workbooks(wb1).Worksheets(sh1).Cells(j - 2, k) = Workbooks(wb2).Worksheets(sh2).Cells(j, i)
End If
Next j
Next i
Next k
MsgBox ("Task has been successfully completed.")
End Sub
Изменено: annyegcam - 01.06.2017 09:58:43 (Догрузка файла)
Содержание листов файла через гиперссылки
 
Добрый день.

Подскажите, пжста, возможно ли посредством формул сделать ссылки на листы файла (см. пример во вложении).

Спасибо за советы.
Массовое переименование имен листов, Массовое переименование имен листов
 
Добрый день.

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

Спасибо всем за помошь.
Изменение множественных связей в Word с Excel
 
Есть ли способ изменить сразу множество связей (50+) в файле ворд с таблицами эксель?
Хитрые приемы с формулой СУММПРОИЗВ
 
Добрый день.

Во вложении пример, где используется такая формула: =СУММПРОИЗВ((G$3:G$8)*($B$3:$B$8)/($E$3:$E$8)). Если значение знаменателя равно нулю, то формула не работает, даже если задействовать еслиошибка (=СУММПРОИЗВ((G$3:G$8)*ЕСЛИОШИБКА(($B$3:$B$8)/($E$3:$E$8);0))). Поделитесь, пжста, если кто-нибудь знает как обойти эту проблему.

Спасибо всем за ваши отклики!
Изменено: annyegcam - 01.07.2016 19:29:31
Формула не понимает цифру
 
Всем добрый день! Пытаюсь сравнивать два массива данных через формулы ВПР, формулу не понимает цифру, только после нажатия F2+Enter работает. Есть ли решение данного вопроса?

Элемент массива 1: 770.04
Таблица соответствия: 770.04 АБС
Код
= ВПР($B260;mt.BS!$A:$Q;16;0)

Формат в обеих массивах выставлен "Общий"
Изменено: annyegcam - 09.06.2016 21:34:44
Поиск пробелов в тексте
 
Уважаемые форумчане,
Подскажите, как через формулы в эксель найти номер позиции первого знака пробела начиная справа (а не слева) от текста:
Расходный кассовый ордер БК000000002?
Изменено: annyegcam - 13.01.2016 13:35:11
Выгрузка из 1С: конвертация иерархической таблицу в линейную, Выгрузка из 1С: конвертация иерархической таблицу в линейную
 
Добрый день.
Кто-нибудь сталкивался проблемой конвертации иерархической таблицы, выгруженной из 1С, в линейную таблицу? Поделитесь пта наработками через макросы или формулы. Пример прилагается.
Спасибо.
Страницы: 1
Наверх