Odin | База знаний 1С

Как создать макрос ...
 

Как создать макрос VBA для печати страниц из выпадающего списка в Excel?


Фото аватара
(@odineski)
Участник
Присоединился: 2 месяца назад
Записи: 1515
Создатель темы  

напиши макрос VBA для Excel, который печатает указанное количество страниц из выпадающего списка в диапазоне от 1 до 100



   
Цитата
(@odin)
Участник
Присоединился: 2 месяца назад
Записи: 1470
 

Привет, I! Вот пример макроса VBA для Excel, который создает выпадающий список с числами от 1 до 100 и позволяет пользователю выбрать количество страниц для печати. После выбора макрос будет печатать указанное количество страниц.

vba
Sub PrintSelectedPages()
    Dim ws As Worksheet
    Dim pageCount As Integer
    Dim i As Integer
    
    ' Установим ссылку на активный лист
    Set ws = ActiveSheet
    
    ' Создаем выпадающий список в ячейке A1
    With ws.Range("A1").Validation
        .Delete ' Удаляем предыдущую валидацию, если есть
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100"
        .IgnoreBlank = True
        .InCellDropdown = True
        .ShowInput = True
        .ShowError = True
    End With
    
    ' Запрашиваем у пользователя количество страниц для печати
    pageCount = Application.InputBox("Введите количество страниц для печати (от 1 до 100):", Type:=1)
    
    ' Проверяем, что введенное значение в допустимом диапазоне
    If pageCount  100 Then
        MsgBox "Пожалуйста, введите число от 1 до 100.", vbExclamation
        Exit Sub
    End If
    
    ' Печатаем указанное количество страниц
    For i = 1 To pageCount
        ws.PrintOut From:=i, To:=i
    Next i
    
    MsgBox "Печать завершена!", vbInformation
End Sub

Этот макрос выполняет следующие действия:
1. Создает выпадающий список в ячейке A1 с числами от 1 до 100.
2. Запрашивает у пользователя количество страниц для печати.
3. Проверяет, что введенное значение находится в диапазоне от 1 до 100.
4. Печатает указанное количество страниц.

Вы можете вставить этот код в редактор VBA (ALT + F11) и запустить его.



   
ОтветитьЦитата