Ich versuche, die Eingabe von einem Benutzer zu erhalten, suchen Sie den Eingabewert in einer Excel-Spalte und geben Sie den Wert der Zelle auf der rechten Seite des übereinstimmenden Werts zurück.Typenkonflikt in AutoHotkey Excel
Das ist, was ich gefunden habe. Solange ich% index% durch eine Zahl ersetze, wird ein Wert aus der Excel-Datei zurückgegeben.
Der Fehler Ich erhalte sage mir, es ist ein ‚Typenkonflikt‘, wo ich % Index% in
value := workbook.Sheets("Sheet1").Cells(%index%, 1).Value
Irgendwelche Ideen, wie verwenden, um den Typenkonflikt zu beheben?
#a::
workbook := ComObjGet("somepath\tester.xlsx")
InputBox, OutputVar, Question 1, What are you looking for?
if (OutputVar)
MsgBox, Let me do this for you.
intent = OutputVar
index = 1
value = ""
Loop {
index := %index% + 1
value := workbook.Sheets("Sheet1").Cells(%index%, 1).Value
}
Until %intent% = %value%
SendInput, workbook.Sheets("Sheet1").Cells(%index%, 2).Value
Return
Ich habe ein paar Kommentare zu finden ist. Wissen Sie, dass Sie in Excel direkt nach Werten suchen und Werte benachbarter Zellen abrufen können? Warum lesen Sie die Excel-Spalten außerhalb von Excel nicht in ein AHK-Array und führen die Suche lokal aus? –