1 (изменено: ОсиповаТатьяна, 2019-05-09 19:04:42)

Тема: AHK: Копирование диапазона экселя.

Здравствуйте, уважаемые специалисты.

Есть файл экселя 1.xls.
И в нем на листе3 - есть диапазон B4:E8
Как скриптом Autohotkey  - сделать скриншот этого диапазона, открыв файл 1.xls - в скрытом режиме и сохранить скриншот в папку со скриптом ?

Post's attachments

1.rar 8.11 kb, 6 downloads since 2019-05-09 

You don't have the permssions to download the attachments of this post.

2

Re: AHK: Копирование диапазона экселя.

В скрытом режиме скриншоты не делаются.

3

Re: AHK: Копирование диапазона экселя.

Имеется ввиду не скриншот PrintScreen, а сохранение диапазона - в файл jpg.

4

Re: AHK: Копирование диапазона экселя.

ОсиповаТатьяна

Так в .pdf

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#SingleInstance force 

path = %A_Desktop%\1.xlsx

xl := ComObjCreate("Excel.Application")
xl.Visible := false
xl.screenUpdating := 0
Book1 := Xl.Workbooks.Open(path)

Book1.workSheets(3).Range("B4:E8").copy

Book2 := xl.Workbooks.add
Book2.workSheets(1).Range("A1").PasteSpecial

FormatTime, TimeString,, HH-mm-ss

path = %A_ScriptDir%\%TimeString%.pdf
Book2.worksheets(1).ExportAsFixedFormat(0, path) 

Book1.close(false)
Book2.close(false)

MsgBox, 4160, , Готово!

xl.quit
ExitApp

5

Re: AHK: Копирование диапазона экселя.

inseption86, спасибо.
Но этот скрипт копирует не весь диапазон.

Там ведь - еще фигура есть в этом диапазоне.

6

Re: AHK: Копирование диапазона экселя.

ОсиповаТатьяна

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.
#SingleInstance force 

#include gdip_all.ahk  ;https://www.autohotkey.com/boards/viewtopic.php?f=6&t=6517

path = %A_Desktop%\1.xlsx

xl := ComObjCreate("Excel.Application")
xl.Visible := true

Book1 := Xl.Workbooks.Open(path)

Book1.workSheets(3).Range("B4:E8").copy

pToken := Gdip_Startup()
pBitmap := Gdip_CreateBitmapFromClipboard()
FormatTime, TimeString,, HH-mm-ss
vPath := A_ScriptDir "\" TimeString ".png"

Gdip_SaveBitmapToFile(pBitmap, vPath)
Gdip_DisposeImage(pBitmap)
Gdip_Shutdown(pToken)


Book1.close(false)


MsgBox, 4160, , Готово!

xl.quit
ExitApp

7 (изменено: ОсиповаТатьяна, 2019-05-09 21:20:45)

Re: AHK: Копирование диапазона экселя.

inseption86, спасибо большое.
А как сделать, чтобы вот это окно экселя - не моргало на весь экран ?
Оно ведь при запуске - открывается на весь экран и быстро исчезает.

Можно ли сделать, чтобы оно (это окно экселя) - как-то в скрытом режиме открывалось ?

8

Re: AHK: Копирование диапазона экселя.

stealzy, ясно.
Спасибо.