Trong bài viết hôm nay chúng ta cùng làm việc với file Excel học cách đọc, ghi, hiển thị dữ liệu từ Excel nên giao diện GUI của phần Matlab và đảo ngược. Và tiện ích chúng ta có thể học cách sử dụng các đối tượng Bảng được tích hợp trong GUI
You can can quan tâm
- Matlab Cơ Bản - Các Hàm Lượng Giác Trong Matlab
- Lập Trình Gui Matlab - Trao Đổi Dữ Liệu Giữa 2 Gui Matlab
- Lập Trình Gui Matlab – Visible Ẩn Hiện Các Đối Tượng Trong Gui Matlab
- Lập Trình Gui Matlab – Enable Bật Tắt Các Đối Tượng Trong Gui Matlab
- Lập Trình Gui Matlab – Hướng Dẫn Sử Dụng Table Trong Gui Matlab
| Hướng dẫn đọc Excel
Như bạn đã biết thì Excel nằm trong bộ Office của Microsoft và không riêng gì dân kế toán, kỹ thuật, dân lập trình chúng ta cũng sử dụng đến nó rất nhiều. Do đó đối với chúng ta đang học lập trình GUI cũng vậy. Để bạn có một cách tiếp cận đơn giản thì ta sẽ tiến hành đọc tệp Excel gần
Giả sử ta có một giao diện như hình bên dưới. Để các bạn không phải nhàn chán nên giao diện này VuTienIT xin được build trước. Nếu bạn theo dõi từ bài 1 đến giờ thì giao diện dưới đây chắc chắn có thể không quá khó đối với bạn
1. Read File Excel
được rồi. Vấn đề của chúng ta đó là lấy dữ liệu từ một tệp excel bất kỳ đó và đổ các giá trị vào Exdittext có Nhãn là B,C,D theo Get Value Excel mà ta lựa chọn
Giả sử ta có tên tệp Excel là VuTienIT_Excel. xlsx và có các giá trị là kiểu nguyên và có 4 cột là A,B,C,D
Ở trong đối tượng Menu bật lên có chuỗi là Nhận giá trị Excel bạn hãy nhập các giá trị vào cột A. [Giá trị bạn có thể đặt bất cứ thứ gì cũng không thiết yếu nhất phải là A1, A2,…]. Nguyên sao đủ 10 dòng vì trong file Excel của chúng ta có 10 dòng
a. Read data
Bây giờ chúng ta cùng tiến trình viết mã để lấy dữ liệu
Bạn mở chức năng của Popup Menu hãy Get Value Excel và tiến hành nhập các đoạn mã sau
dirFileName = 'VuTienIT_Excel.xlsx'; sheet = 1; getValue = xlsread[dirFileName, sheet]; valueExcel = get[handles.popupmenu1, 'value'] - 1;
in which
- dirFileName. Tên tệp Excel mà bạn muốn đọc [Tệp này thường được đặt ở cùng thư mục tệp. m which ta đang lập trình]
- tờ giấy. Trong Excel thì sẽ có nhiều sheet do vậy ta cần xác định xem dữ liệu đang ở sheet nào?
- xlsread. Hàm này có chức năng đọc tệp Excel [Nó sẽ nhận giá trị của mỗi ô là kiểu nguyên]
b. Đổ dữ liệu ra bất kỳ đối tượng nào
Khi dữ liệu ta đã được gán vào biến valueExcel rồi. Nhiệm vụ tiếp theo đó là đổ dữ liệu này ra đối tượng. Ở đây VuTienIT sử dụng Edittext có nhãn B,C,D bên cạnh
cotB = getValue[valueExcel, 1]; set[handles.text1, 'string', num2str[cotB]]; cotC = getValue[valueExcel, 2]; set[handles.text2, 'string', num2str[cotC]]; cotD = getValue[valueExcel, 3]; set[handles.text3, 'string', num2str[cotD]];
in which
- getValue[valueExcel, 1]. 1 is the first position. 2, 3 cũng tương tự
- số2str. Switching type number to string
Về các vị trí thì bạn nhìn hình dưới đây sẽ hiểu
Đây là toàn bộ mã của Popup Menu có tên là VuTienIT_Excel. xlsx
Giờ bạn đang tiến hành chạy màn hình và xem kết quả như thế nào nhé
2. Ghi File Excel
Vấn đề Ghi File thì bạn cần hiểu như sau. Đó là ta sử dụng giao diện GUI để thiết lập trình tự ghi dữ liệu bất kỳ vào tệp Excel
Để đơn giản hơn thì ta sẽ lấy dữ liệu từ biến getValue để đổ vào Excel [Dữ liệu có thể là số, chuỗi,…]
Bạn hãy mở Hàm có chuỗi là “Ghi Du Lieu Excel” và viết mã
dirFileName = 'VuTienIT_Excel.xlsx'; sheet = 1; getValue = xlsread[dirFileName, sheet]; xlswrite['VuTienIT_Excel_Out.xls', getValue, 1, ['A' num2str[1]]];
in which
- Một số câu lệnh thì ta đã học bên rồi thì VuTienIT xin không được nhắc lại
- xlswrite. Hàm ghi tập tin
- ‘VuTienIT_Excel_Out. xls'. File name you want to write into [Nằm cùng thư mục. m]. If not have this file, thì phần mềm Matlab sẽ tự động tạo ra
- 'getValue'. Giá trị mà bạn muốn đổ dữ liệu vào
- 1 là trang tính thứ nhất
- 'A' Start write to Column A in Excel software
- số2str[1]. Bắt đầu ghi vào dòng thứ nhất
Đây là mã hình ảnh của nút nhấn đối tượng này
Và đây là kết quả ta đạt được
Cũng khá đơn giản phải không nào?
| Hướng dẫn ghi dữ liệu ra Bảng
Ở trong bài viết trước VuTienIT đã hướng dẫn bạn cách sử dụng bảng trong GUI rồi. Nhưng chưa hướng dẫn bạn cách đổ dữ liệu vào bảng. Do đó trong bài này ta sẽ học cách chuyển dữ liệu vào Table trong giao diện.
Thì cũng ở giao diện trên thì ta đã build sẵn một bảng rồi. Nhiệm vụ ta cần làm đó là nhấn vào nút có chuỗi là “Ghi Du Lieu Tabe” thì sẽ ghi dữ liệu
Oke bây giờ bạn hãy mở Hàm của chuỗi “Ghi Du Lieu Tabe” và viết đoạn mã sau
data{1, 1} = 'VuTienIT'; data{1, 2} = 1; data{1, 3} = 1.2; data{1, 4} = 3/5; data{2, 1} = 'vutienblog.com'; set[handles.uitable1, 'Data', data];
in which
- {1, 1}. 1 thứ nhất là dòng số 1. 1 thứ 2 đó là cột thứ nhất. Tương tự cho {1, 2}, {1, 3},…
This is Code stage
And the running system should you are as after
Tổng kết
Như vậy qua bài viết này chúng ta đã cùng nhau học cách sử dụng đọc, ghi dữ liệu Excel trong giao diện GUI thiết lập. And also learning how to write data ra table. Trên đây chỉ là một ví dụ nhỏ không đi qua thuật toán. Qua trọng là chún ta hiểu được bản chất của vấn đề rồi từ sẽ ta mới học đến các bài toán cao hơn. Hi vọng rằng bài viết này sẽ giúp ích cho bạn một phần nào đó. Chúc bạn thành công