Lấy sheet lưu bằng cửa sổ window

Liên hệ QC

Go Jo

Thành viên mới
Tham gia
23/5/22
Bài viết
12
Được thích
0
Mình cần lấy 1 sheet của file excel rồi lưu nó (mở cửa sổ rồi lưu vào nơi mình muốn).
Code mình thử (bên dưới) mà không đc, anh em giúp mình với, mình xin hậu tạ

wb = load_workbook('thongtin.xlsx')
sht1 = wb.sheetnames[0]
file = filedialog.asksaveasfilename(defaultextension=".xlsx")
wb.save(str(sht1) + '.xlsx')
 
Mình cần lấy 1 sheet của file excel rồi lưu nó (mở cửa sổ rồi lưu vào nơi mình muốn).
Code mình thử (bên dưới) mà không đc, anh em giúp mình với, mình xin hậu tạ

wb = load_workbook('thongtin.xlsx')
sht1 = wb.sheetnames[0]
file = filedialog.asksaveasfilename(defaultextension=".xlsx")
wb.save(str(sht1) + '.xlsx')
Bạn lấy sheets hiện hành hay là sheets nào.Nói rõ cụ thể ra chứ.
 
Upvote 0
import xlwings as xw
import tkinter as tk
from tkinter import *
import openpyxl,xlrd
from openpyxl import Workbook
from openpyxl import load_workbook
from tkinter import filedialog
from tkinter.filedialog import askopenfilenames, askopenfilename
from tkinter.messagebox import showinfo



def L_file():
fi1 = openpyxl.load_workbook("thongtin.xlsx")
sht=fi1['Sheet1']
abc1 = filedialog.asksaveasfile(defaultextension='xlsx')
fi1.save(str(abc1)+".xlsx")

window = Tk()
window.geometry("600x600")
window.title("Form excel")

framel = LabelFrame (window, text = 'login Details:').pack(expand='yes', fill='both')

Label(framel,text ="name:").place(x=50,y=30)
Label(framel,text ="username:").place(x=50,y=70)

name = Entry(framel)
name.place(x=250,y=30)
user = Entry(framel)
user.place(x=250,y=70)

Button(framel, text="tai file", command= L_file, height=5, width=20).place(x=300, y=120)

window.mainloop()
Bài đã được tự động gộp:

Bạn nên mô tả rõ vào bài 1 chứ.
Và chép toàn bộ code đang làm lên, từ chỗ import thư viện ấy.
đây bạn ơi
 
Upvote 0
Nó bị lỗi như này bác ơi
 

File đính kèm

  • 1653538666034.png
    1653538666034.png
    194.8 KB · Đọc: 10
Upvote 0
Mình gửi đính kèm nó báo lỗi k cho gửi, bạn có email hay gì k mình gửi qua đó đc k.
Bài đã được tự động gộp:


Bài đã được tự động gộp:

à gửi đc rồi ^^!
 

File đính kèm

  • FILE COPY.zip
    6.9 KB · Đọc: 3
Upvote 0
k fix đc à bác, cảm ơn bác nhiều nha
Viết chữ thế này thì bao giờ mới tiến bộ được. Tôi trả lời bạn mà có viết tắt nửa chữ nào đâu.

Python:
from tkinter import Tk, Button, filedialog
from tkinter.messagebox import showinfo
from openpyxl import Workbook, load_workbook
import os

strPathOldBook = 'thongtin.xlsx'
strSheetName   = 'Sheet1'
strNameNewBook = 'NewBook.xlsx'

def createNewBookFromOldBook():
    oldBook    = load_workbook(strPathOldBook)
    oldsheet1  = oldBook[strSheetName]
    newBook  = Workbook()
    sheet0   = newBook.active
    oldsheet1._parent = newBook
    newBook._add_sheet(oldsheet1)
    newBook.remove(sheet0)
    strPathOutputFolder = filedialog.askdirectory()
    if len(strPathOutputFolder) == 0:
        return False
    strPathNewBook = os.path.join(strPathOutputFolder, strNameNewBook)
    newBook.save(filename = strPathNewBook)
    showinfo('Thông báo', 'Thực hiện xong!')
    return True

def createUI():      
    window = Tk()
    window.geometry("400x130")
    window.title("Bài mẫu")
    Button(window, text="Chọn Folder lưu file", command = createNewBookFromOldBook, height=2, width=20).place(x=120, y=50)
    window.mainloop()

if __name__ == '__main__':
    createUI()
 
Upvote 0
Viết chữ thế này thì bao giờ mới tiến bộ được. Tôi trả lời bạn mà có viết tắt nửa chữ nào đâu.

Python:
from tkinter import Tk, Button, filedialog
from tkinter.messagebox import showinfo
from openpyxl import Workbook, load_workbook
import os

strPathOldBook = 'thongtin.xlsx'
strSheetName   = 'Sheet1'
strNameNewBook = 'NewBook.xlsx'

def createNewBookFromOldBook():
    oldBook    = load_workbook(strPathOldBook)
    oldsheet1  = oldBook[strSheetName]
    newBook  = Workbook()
    sheet0   = newBook.active
    oldsheet1._parent = newBook
    newBook._add_sheet(oldsheet1)
    newBook.remove(sheet0)
    strPathOutputFolder = filedialog.askdirectory()
    if len(strPathOutputFolder) == 0:
        return False
    strPathNewBook = os.path.join(strPathOutputFolder, strNameNewBook)
    newBook.save(filename = strPathNewBook)
    showinfo('Thông báo', 'Thực hiện xong!')
    return True

def createUI():     
    window = Tk()
    window.geometry("400x130")
    window.title("Bài mẫu")
    Button(window, text="Chọn Folder lưu file", command = createNewBookFromOldBook, height=2, width=20).place(x=120, y=50)
    window.mainloop()

if __name__ == '__main__':
    createUI()
cảm ơn bác đã góp ý mình sẽ lưu ý hơn ^^!.
Cảm ơn bác nhiều nha.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom