怎樣用excel寫腳本
1. 怎樣在excel中使用python腳本
打開excel的vba編輯器,敲入以下代碼即可:
打開:文件-》導入,載入xlwings.bas進去
編輯function setting文件:
PYTHON_WIN = ""
PYTHON_MAC = ""
PYTHON_FROZEN = ThisWorkbook.Path & "\build\exe.win32-2.7"
PYTHONPATH = ThisWorkbook.Path
UDF_MODULES = ""
UDF_DEBUG_SERVER = False
LOG_FILE = ""
SHOW_LOG = True
OPTIMIZED_CONNECTION = False
編寫sub模塊運行:
Sub HelloWorld()
RunPython ("import hello; hello.world()")
End Sub
實際調用的方法:
# hello.py
import numpy as np
import xlwings as xw
def world():
wb = xw.Book.caller()
wb.sheets[0].range('A1').value = 'Hello World!'
2. 怎樣在Excel中使用python腳本
在Excel中准備調用的python代碼:
def merge_sort_unique(lists):
s = set()
for L in lists:
s.update(L)
return sorted(s)
任意在本地建立一個目錄,並保存這個代碼並命名為Methods.py。我們一步步看看如何從Excel的工作表中如何調用這個腳本。打開Excel,填寫一些數據以便提供python腳本處理,並保持這個表格於剛才的python腳本在同一目錄下。你的工作表應該如下:
現在,備調用python腳本,創建一個新的模塊(Insert | Mole)並敲以下VBA代碼:
Function msu(lists As Range)
Set methods = PyMole("Methods", AddPath:=ThisWorkbook.Path)
Set result = PyCall(methods, "merge_sort_unique", PyTuple(lists.Value2))
msu = WorksheetFunction.Transpose(PyVar(result))
ExitFunction
EndFunction