[AHK-] 讀取excel特定sheet的整行到變數

作者: onlyAPU (Nothing)   2019-07-23 19:23:10
狀況:
因為常常要打估價單,該excel裡面有兩個sheet分別叫[估價單]、[單價]
由於每個客人的需求都有不一樣,常常要複製來複製去
目前作法是:
打開 單價sheet,滑鼠選取,複製,回到 估價單sheet貼上
過程實在有點繁瑣
今天嘗試使用最簡單的ahk寫法
先把 sheet單價需要的欄位複製起來,然後貼上
::c1::
(
品名 尺寸 單價 數量 折數 ....
)
開開心心的把十幾個品項都設定好hotkey...
但是事情沒有憨人想得這麼簡單,因為這樣輸入回去後,公式全部不見了
=====================================================================
上網估狗後,有看到一篇如下
#a::
; Gets a reference to the workbook
; Change the path to the path of your workbook
wbk := ComObjGet("C:\MyFolder\Book1.xlsx")
; Gets the value of cell 1, 1 (also known as cell A1) from Sheet1
A1Val := wbk.Sheets("Sheet1").Cells(1, 1).Value
SendInput, % A1Val
return
他這個方法試用過後是可以的,他讀取後存到一個變數,然後再貼上
但是最大問題是他讀取的只有 單個cell。可是我必須要有多個CELL
例如: 整行,或是A1-O1的值存到變數後再貼上
希望版上有人可以協助,感激不盡
作者: onlyAPU (Nothing)   2019-07-25 00:00:00
沒用過vba ,我來查查。謝謝
作者: ides13 (juso)   2019-07-24 17:22:00
不考慮直接用VBA嗎?感覺這樣比較快。可以錄製一次,以後直接執行。
作者: onlyAPU (Nothing)   2019-07-24 11:13:00
感謝回覆,剛剛測試還是沒有辦法複製整行
作者: papple23g (逆道者)   2019-07-24 04:18:00
wbk.Sheets("工作表1").Range("A1","C1").CopySend ^v更正 C1為O1
作者: ides13 (juso)   2019-08-02 17:02:00
點選巨集、再點選「選項」後,可以直接設定快捷鍵。

Links booklink

Contact Us: admin [ a t ] ucptt.com