Как скопировать только видимые ячейки? - PullRequest
0 голосов
/ 18 февраля 2020

Я хочу объединить только видимые ячейки в Excel, но мне не удалось.

openpyxl может помочь мне с row_dimemsion[].hidden, но это не сработало.

Есть ли другие способы отображения только видимых ячеек?

Мне нужны только видимые ячейки, потому что иногда их нужно фильтровать или скрывать.

Пожалуйста, сообщите мне.

Ссылки ниже не работают:

  1. Чтение файла Excel без скрытых столбцов в Python с использованием Pandas или других модулей

  2. Поиск скрытых ячеек с использованием openpyxl

import os
import glob
import xlwings as xw
import xlrd
import xlsxwriter


xw.App().visible = False
path = os.getcwd()
x=input('name:') + '.xlsx'
target_xls = os.path.join(path,x)
data = []
for file in glob.glob(path+'\*.*'):
    if file.endswith((".xls", ".xlsm", ".xlsx")):

        wb = xlrd.open_workbook(file)
        for sheet in wb.sheets():
            for rownum in range(sheet.nrows):
                data.append(sheet.row_values(rownum))
        workbook = xlsxwriter.Workbook(target_xls)
        worksheet = workbook.add_worksheet()
        for i in range(len(data)):
            for j in range(len(data[i])):
                worksheet.write(i, j, data[i][j])
        workbook.close()

Вывод:

enter image description here

Я надеюсь, что он может показывать только видимые ячейки, когда я отфильтровал или скрыл ячейки:

enter image description here

enter image description here

...