デスクトップに保存されたpythonスクリプトを呼び出すVBAコードを作成しています。これは私のVBAコードです。IOError:[Errno 2] Excelファイルにアクセスしているときにそのようなファイルやディレクトリがありません
このPythonスクリプトは、デスクトップに配置されたExcelファイル内のアドレスを読み込みます。私はPythonスクリプトを直接実行すると、完全に実行されます。しかし、私はVBAコードを実行しているときに、Pythonスクリプトが開きますが、Excelファイルが利用できないというエラーが表示されます。 Pythonスクリプトのコードは次のとおりです。
import xlrd
import geocoder
import openpyxl
from openpyxl import load_workbook
location = "C:\\Users\\ashish.baboo\\Desktop\\UKT-SL-Ashish\\Cleaning-Tools\\1.xlsx"
workbook = xlrd.open_workbook(location)
sheet = workbook.sheet_by_index(1)
Rows = sheet.nrows
Cols = sheet.ncols
data = [[sheet.cell_value(r,c) for c in range(Cols)] for r in range(Rows)]
wb = load_workbook('1.xlsx')
ws1 = wb.get_sheet_by_name("Locations")
for i in range(1,Rows):
add = ws1.cell(row = i+1, column = 19).value
cadd = geocoder.google(add , language = "en" , key = "AIzaSyBsiH6LubuA9dn1s97UsUcesQRw71isBuo")
print(i , cadd.latlng , cadd.quality ,cadd.country)
S_no = ws1.cell(row = i+1, column = 1)
O_Housenumber = ws1.cell(row = i+1, column = 3)
O_Street = ws1.cell(row = i+1, column = 4)
O_City = ws1.cell(row = i+1, column = 5)
O_County = ws1.cell(row = i+1, column = 6)
O_State = ws1.cell(row = i+1, column = 7)
O_Postal = ws1.cell(row = i+1, column = 8)
O_Country = ws1.cell(row = i+1, column = 9)
Latitude = ws1.cell(row = i+1, column = 10)
Longitude = ws1.cell(row = i+1, column = 11)
Accuracy = ws1.cell(row = i+1, column = 12)
S_no.value = i
O_Housenumber.value = cadd.housenumber
O_Street.value = cadd.street
O_City.value = cadd.city
O_County.value = cadd.county
O_State.value = cadd.state_long
O_Postal.value = cadd.postal
O_Country.value = cadd.country_long
Latitude.value = cadd.lat
Longitude.value = cadd.lng
Accuracy.value = cadd.quality
wb.save('1.xlsx')
私はすでに多くのソリューションを試しましたが、成功しませんでした。親切にそれを解決する方法をお勧めしますか?
は、Pythonスクリプトが開こうとする同じファイルから実行されるVBAコードですか? – avb
@avb私はあなたを得ていませんでした。しかし、NO。私のコードはOutlook VBAにあります。それはExcelファイルではないので、スクリプトは開こうとしています。 –