我正在使用python和xlwings在sqlite数据库和excel之间编写接口 . 有一个python函数:

# verifyExcelTickers returns 1, 2, and 3. 2 means everything is alright,
# 1 means the tickerName wasn't found, and 3 means multiple tickers were 
# found.
@xw.func
def verifyExcelTickers (ticker,exchange):
    dbConn = sqlite3.connect("./Python Scripts/Stock_Tracker/stockTracker.db",uri=True)
    return verifyExchTableTicker(ticker,True,exchange,dbConn)[0]

那是困扰我的 . 我使用自动UDF生成器将它加载到excel中,没有问题 . 如果我在excel电子表格中使用该功能,没问题 . 当我尝试从VBA代码中的函数获取返回值时,它给出了类型不匹配错误

' verifyExcelTickers returns integers
Dim result As Integer
result = verifyExcelTickers(tickerName, exchangeName)
If result = 1 Then
    sheet.Range("A" & i, "B" & i).Interior.Color = RGB(255, 0, 0)
    bFoundError = True
ElseIf result = 2 Then
    sheet.Range("A" & i, "B" & i).Interior.Color = RGB(255, 255, 255)
ElseIf result = 3 Then
    ' Multiple tickers
    sheet.Range("A" & i, "B" & i).Interior.Color = RGB(255, 255, 0)
    bFoundError = True
End If

以上崩溃结果= ver .... line . 如果我将结果类型更改为variant,它不会再抱怨它,但如果我尝试从那里转换为整数,则会引发其他错误 . 关于发生了什么的任何想法?一直试图处理这个问题几个小时了 .

谢谢