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

Вход

Регистрация

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

 

= Мир MS Excel/Сохранение рисунка с увеличением пропорции. - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Сохранение рисунка с увеличением пропорции. (Макросы/Sub)
Сохранение рисунка с увеличением пропорции.
perven Дата: Воскресенье, 19.11.2017, 13:43 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 36
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте, форумчане.
Помогите с решением.
Есть макрос, сохраняющий все фигуры и объекты, которые отображаются на листе - в формат jpg - в каталог с книгой.

В ячейку E2 вписано число.
Как заставить рисунок сохраниться не в той пропорции 1:1 как это происходит сейчас, а увеличить его размер в то количество раз, которое вписано в ячейку E2 (то есть в два раза) ?

(Масштаб на листе равен 100 и менять его нельзя.)
К сообщению приложен файл: 4374.rar(15Kb)
 
Ответить
СообщениеЗдравствуйте, форумчане.
Помогите с решением.
Есть макрос, сохраняющий все фигуры и объекты, которые отображаются на листе - в формат jpg - в каталог с книгой.

В ячейку E2 вписано число.
Как заставить рисунок сохраниться не в той пропорции 1:1 как это происходит сейчас, а увеличить его размер в то количество раз, которое вписано в ячейку E2 (то есть в два раза) ?

(Масштаб на листе равен 100 и менять его нельзя.)

Автор - perven
Дата добавления - 19.11.2017 в 13:43
Roman777 Дата: Воскресенье, 19.11.2017, 18:31 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 806
Репутация: 90 ±
Замечаний: 0% ±

Excel 2007, Excel 2013
perven,
Попробуйте так:
[vba]
Код
Sub nnn()
    Dim pic As Shape
    Dim nm$
    Dim m As Double
    Dim a As Chart
    If Cells(2, 5) <> "" Then
        m = Cells(2, 5)
    Else
        m = 1
    End If
'-----------------------
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    With ActiveSheet
        For Each pic In .Shapes
            If pic.Type = 3 Or pic.Type = 6 Then
                pic.Copy
                nm = ThisWorkbook.Path & "\" & pic.Name & ".jpg"
                With .ChartObjects.Add(0, 0, pic.Width, pic.Height).Chart
                    .ChartArea.Border.LineStyle = 0
                    .Parent.Select
                    .Paste
                    '''''''''''
                    .ChartArea.Height = .PlotArea.Height * m
                    .ChartArea.Width = .PlotArea.Width * m
                    '''''''''''
                    .Export Filename:=nm, FilterName:="JPG"
                    .Parent.Delete
                End With
            End If
        Next
    End With
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Beep
End Sub
[/vba]


Много чего не знаю!!!!
 
Ответить
Сообщениеperven,
Попробуйте так:
[vba]
Код
Sub nnn()
    Dim pic As Shape
    Dim nm$
    Dim m As Double
    Dim a As Chart
    If Cells(2, 5) <> "" Then
        m = Cells(2, 5)
    Else
        m = 1
    End If
'-----------------------
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    With ActiveSheet
        For Each pic In .Shapes
            If pic.Type = 3 Or pic.Type = 6 Then
                pic.Copy
                nm = ThisWorkbook.Path & "\" & pic.Name & ".jpg"
                With .ChartObjects.Add(0, 0, pic.Width, pic.Height).Chart
                    .ChartArea.Border.LineStyle = 0
                    .Parent.Select
                    .Paste
                    '''''''''''
                    .ChartArea.Height = .PlotArea.Height * m
                    .ChartArea.Width = .PlotArea.Width * m
                    '''''''''''
                    .Export Filename:=nm, FilterName:="JPG"
                    .Parent.Delete
                End With
            End If
        Next
    End With
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Beep
End Sub
[/vba]

Автор - Roman777
Дата добавления - 19.11.2017 в 18:31
perven Дата: Понедельник, 20.11.2017, 02:43 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 36
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Roman777, вроде работает.
Спасибо.
 
Ответить
СообщениеRoman777, вроде работает.
Спасибо.

Автор - perven
Дата добавления - 20.11.2017 в 02:43
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Сохранение рисунка с увеличением пропорции. (Макросы/Sub)
Страница 1 из 11
Поиск:

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