Как разделить те же данные в Excel - PullRequest
0 голосов
/ 18 июня 2019

Я делаю упражнение с Excel. Статья требует от меня, чтобы прочитать данные из 2 файлов и объединить их в один файл. Затем разделите их на листы (не более 3 кодов счетов для каждого листа).

Код Visual Studio

import pandas as pd
from xlwt import Workbook
from pandas import ExcelWriter
import inspect, os
import numpy as np
from openpyxl import load_workbook
#import xlsxwriter

CurDir = 
os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) # link

df_Input = pd.read_excel(CurDir+"\\input\\Input.xlsx",header = 1, 
dtype='str')
df_Master= pd.read_excel(CurDir+"\\input\\Master.xlsx",dtype='str')

list_TEN = df_Master['Tên khách hàng (*)'].values
list_MST = df_Master['Mã số thuế'].values

list_New = []

for idx,row in df_Master.iterrows():
    for idx_MST,i_MST in enumerate(list_MST): 
        if str(row['Mã số thuế']).strip() == str(i_MST):
            list_New.append(list_TEN[idx_MST])
            break
df = pd.DataFrame(df_Input)
new_df = pd.DataFrame({'Họ tên người mua hàng': list_New})
df.update(new_df)

writer = ExcelWriter(CurDir+"\\output\\RightInput.xlsx")
df.to_excel(writer, sheet_name='Sheet1', index=False) 
writer.save()

df_Output = pd.read_excel(CurDir+"\\output\\RightInput.xlsx")
df_MergeInput = df_Output[0:0]

intcouter=0
intcoutsheet = 1
writer = ExcelWriter(CurDir+"\\output\\Output.xlsx")
for idx,row in df_Output.iterrows():

df_MergeInput = df_MergeInput.append(row)
if df_Output == c3:
    for row in df_Output:
        sheet=writer.active
        c3=sheet['C3']
        sheet.append(row)
else:
    if intcouter == 2:
    df_MergeInput.to_excel(writer, sheet_name='Sheet'+str(intcoutsheet), index=False) 
    df_MergeInput = df_Output[0:0]
    intcoutsheet +=1
    intcouter=0
intcouter+=1

writer.save ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...