日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python打开excel的函数-Python读取excel文件中带公式的值的实现

發布時間:2025/6/17 61 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python打开excel的函数-Python读取excel文件中带公式的值的实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在進行excel文件讀取的時候,我自己設置了部分直接從公式獲取單元格的值

但是用之前的讀取方法進行讀取的時候,返回值為空

import os

import xlrd

from xlutils.copy import copy

file_path = os.path.abspath(os.path.dirname(__file__)) # 獲取當前文件目錄

print(file_path)

root_path = os.path.dirname(file_path) # 獲取文件上級目錄

data_path = root_path + "\data" # 拼接data文件夾地址

data_file = data_path + "\api.xlsx" # 拼接excel文件地址

data = xlrd.open_workbook(data_file) # 讀取文件

sheet = data.sheet_by_index(0) # 切換到第一個sheet

def get_excel(row, col):

"""

excel 單元格讀取

:param row:

:param col:

:return:

"""

rows = sheet.nrows # 獲取最大行號

cols = sheet.ncols # 獲取最大列號

path_name = sheet.cell_value(row, col) # 獲取單元格值

return rows,cols,path_name

查詢之后發現普通的讀取不能直接讀取帶單元格的值。現在采用

openpyxl下的load_workbook模塊

from openpyxl import load_workbook

def get_xlrd(self,row,col):

wb = load_workbook(self.data_file, data_only=True)

ws = wb.worksheets[0]

return ws.cell(row,col).value

openpyxl 讀取帶公式的excel時,可能會存在這些問題

要么讀出來是“None”,要么是“公式本身”

wb = openpyxl.load_workbook("daikuan.xlsx",data_only = True)-------讀出來的是 none

#wb = openpyxl.load_workbook("daikuan.xlsx",data_only = False)------------讀出來的是 公式本身

解決辦法:

公式是代碼寫進去的,這樣讀出來就是None。

手動寫入公式并保存,再用openpyxl讀取,能讀取到公式的結果。

代碼寫入的公式/值,需要手動打開Excel,并保存,再用openpyxl讀取,就能讀取到公式了。

或者調用win32com.client import Dispatch 模塊。運行下面代碼后再進行讀取,就能讀取到數據/值

from win32com.client import Dispatch

def just_open(filename=file_name):

xlApp = Dispatch("Excel.Application")

xlApp.Visible = False

xlBook = xlApp.Workbooks.Open(filename)

xlBook.Save()

xlBook.Close()

到此這篇關于Python讀取excel文件中帶公式的值的實現的文章就介紹到這了,更多相關Python讀取excel公式的值內容請搜索python博客以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持python博客!

總結

以上是生活随笔為你收集整理的python打开excel的函数-Python读取excel文件中带公式的值的实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。