Thảo luận về bài viết quy trình tạo dựng userform VBA Excel

Liên hệ QC

VetMini

Ăn cùng góc phố
Tham gia
21/12/12
Bài viết
16,961
Được thích
23,349
Nên thêm:
- Lịch sử: Userform, cũng như VBA vốn xuất phát từ Access cho nên còn nhiều âm hưởng của Access, về ngữ pháp và về tiết tấu.
- Flowchart (cái bạn hình vẽ dùng để minh họa quy trình chuẩn): cũng như SQL, là một trong những sản phẩm của IBM (*1) được tiêu chuẩn hóa. Cho nên nếu chịu khó tìm hiểu về cách lô gic lập trình 3-50 năm trước thì sẽ rất dễ học.

(*1) Các bạn trẻ lớn lên trong chiếc nôi của Microsoft không mấy người biết đến tầm lớn của Big Blue (tên thứ hai của IBM). Nếu biết, sẽ thấy IBM còn rất nhiều phát minh mà ngày nay được coi là tiêu chuẩn.
Điển hình, nhiều người dùng SQL để gọi SQL Server của Microsoft. Thành thử MS nghiễm nhiên chiếm dung cai tên này. Thực sự SQL là ngôn ngữ thuộc về tiêu chuẩn lâu rồi. Cái phiên bản mà MS sử dụng trong SQL Server tên là Transac SQL hay T-SQL, TSQL.
 
:D có ai nói gì về phản bác ý kiến gì của nhau đâu bác.
Ờ thì cũng giải thích thêm ấy mà. Bên kia tôi cũng nói nhẹ nhàng rằng: Người dùng sẽ phải làm việc với form mấy tiếng đồng hồ liên tục chứ không phải chỉ ngồi ngắm mấy cái chi tiết trang trí xinh đẹp. Những cái đó chỉ tạo ấn tượng 5 giây ngay khi mở form thôi.
Làm việc lâu ắt mỏi mắt, lại thêm chói màu nữa thì chán lắm.
 
Upvote 0
Thiết kế 1 cái form để cho tương xứng với Access trong Excel rất cực. Nếu loại trừ việc ngăn ngừa lỗi nhập liệu thì chẳng có lý nào phải chịu cực như vậy. Thà làm trên Access còn hơn.
 
Upvote 0
Thiết kế 1 cái form để cho tương xứng với Access trong Excel rất cực. Nếu loại trừ việc ngăn ngừa lỗi nhập liệu thì chẳng có lý nào phải chịu cực như vậy. Thà làm trên Access còn hơn.
Làm Access thì cực nhất là cái đóng khung report. Không biết Office mới hơn thì có hay hơn không chứ tôi làm trên Access 2010 cực quá. Chứ report không khung thì làm theo wizard cái rẹt là đã xong.
 
Upvote 0
Làm Access thì cực nhất là cái đóng khung report. Không biết Office mới hơn thì có hay hơn không chứ tôi làm trên Access 2010 cực quá. Chứ report không khung thì làm theo wizard cái rẹt là đã xong.
Tôi nghỉ dùng Access sau ver 97 nên không biết thế nào chứ trước đây phải cố cài Crystal Report. Dùng report của Access có mà chết mệt luôn.
 
Upvote 0
Làm Access thì cực nhất là cái đóng khung report.
Không hiểu ý bác cái vụ khung này là như thế nào. Đúng là là Report trong Access nó đơn điệu, khó và mất thời gian thiết kế theo ý muốn, còn phải code tùm lum. Bởi vậy cái nào được thì tôi cứ xuất sang template của Excel.
Còn về Userform của Excel thì khỏi nói, mất nhiều công sức để thiết kế các kiểu control, những cái mà bên Access không cần phải làm gì nhiều cho nó. Như bác @Maika8008 đề cập, nếu không có nhu cầu bẫy lỗi gì nhiều thì hạn chế dùng cho đỡ mất thời gian.
 
Upvote 0
Không hiểu ý bác cái vụ khung này là như thế nào.
Thí dụ 1 report có đóng khung ở hình dưới đây. Rất đơn giản, không trang trí hoa mỹ gì, nhưng phải vẽ tỉ mỉ từng line, height, width, top, left, style, border width.

1693188839967.png

Nói về form thì 2003 tôi xài Switchboard rất tiện lợi, su này không thấy nữa.

Là dạng thế này

1693189246360.png

1693189303643.png
 
Upvote 0
Thí dụ 1 report có đóng khung ở hình dưới đây. Rất đơn giản, không trang trí hoa mỹ gì, nhưng phải vẽ tỉ mỉ từng line, height, width, top, left, style, border width.
:) Đúng là Report phải kẻ line cho từng cột, nếu dùng border cho textbox thì nhanh hơn nhưng cũng mất thời gian căn chỉnh textbox cho thẳng hàng,... Tôi thì dùng code để vẽ line cho textbox và để có thể tự co giãn theo nội dung bên trong (mặc định sẽ không có).
Còn về Switchboard Menu thì cũng có người thích dùng nhưng xu hướng thiết kế, thị hiếu cũng thay đổi theo thời gian nên người ta đổi sang Ribbon menu phần lớn.

Screen Shot 2023-08-28 at 11.50.03.png

Screen Shot 2023-08-28 at 11.34.03.png
 
Upvote 0
:) Đúng là Report phải kẻ line cho từng cột, nếu dùng border cho textbox thì nhanh hơn nhưng cũng mất thời gian căn chỉnh textbox cho thẳng hàng,... Tôi thì dùng code để vẽ line cho textbox và để có thể tự co giãn theo nội dung bên trong (mặc định sẽ không có).
Còn về Switchboard Menu thì cũng có người thích dùng nhưng xu hướng thiết kế, thị hiếu cũng thay đổi theo thời gian nên người ta đổi sang Ribbon menu phần lớn.

View attachment 294307
Cực dữ thần vậy anh?
 
Upvote 0
Cực dữ thần vậy anh?
Không phải quá cực mà mất thời gian để định dạng một số cái thay vì như trong Excel thì không cần làm gì nhiều. Sau này dùng module code vẽ line thì không cần thao tác gì, chỉ khai báo rồi report tự vẽ khi in thôi. Nói chung nếu định dạng quen tay bên Excel rồi thì qua Report Access sẽ mất thời gian nhiều hơn cho những cái đơn giản. Giống như thiết kế ứng dụng web, phải vẽ mọi thứ bằng code.
Nếu định dạng report với các bảng cố định chiều cao (theo nội dung bên trong) thì cứ dùng Boder cho Textbox và công cụ gióng hàng có sẳn trên menu để căn chỉnh giữa các textbox cho sát và đều nhau là được rồi.
Nói chung làm quen rồi thì thấy không có gì, còn mới bước qua sẽ thấy nó khó khăn hơn bên Excel vậy thôi.
 
Lần chỉnh sửa cuối:
Upvote 0
Không phải quá cực mà mất thời gian để định dạng một số cái thay vì như trong Excel thì không cần làm gì nhiều. Sau này dùng module code vẽ line thì không cần thao tác gì, chỉ khai báo rồi report tự vẽ khi in thôi. Nói chung nếu định dạng quen tay bên Excel rồi thì qua Report Access sẽ mất thời gian nhiều hơn cho những cái đơn giản. Giống như thiết kế ứng dụng web, phải vẽ mọi thứ bằng code.
Nếu định dạng report với các bảng cố định chiều cao (theo nội dung bên trong) thì cứ dùng Boder cho Textbox và công cụ gióng hàng có sẳn trên menu để căn chỉnh giữa các textbox cho sát và đều nhau là được rồi.
Nói chung làm quen rồi thì thấy không có gì, còn mới bước qua sẽ thấy nó khó khăn hơn bên Excel vậy thôi.
Anh thử dùng subform cho report thử nhé. Sẽ nhẹ công hơn.
 
Upvote 0
Anh thử dùng subform cho report thử nhé. Sẽ nhẹ công hơn.
Sub report chứ nhỉ?
Nếu định dạng report với các bảng cố định chiều cao (theo nội dung bên trong) thì cứ dùng Boder cho Textbox và công cụ gióng hàng có sẳn trên menu để căn chỉnh giữa các textbox cho sát và đều nhau là được rồi.

Tại tôi muốn các đường line đứng liền nét, các line nằm ngang trong detail là đường dot, nên mới phải vẽ từng line. Chứ border cho tất cả textbox rồi gióng hàng thì nhanh nhưng toàn bộ là liền nét hoặc toàn bộ là dot.
Cũng vẫn phải canh left của textbox này so với left và width của textbox bên trái.
 
Upvote 0
Tại tôi muốn các đường line đứng liền nét, các line nằm ngang trong detail là đường dot, nên mới phải vẽ từng line. Chứ border cho tất cả textbox rồi gióng hàng thì nhanh nhưng toàn bộ là liền nét hoặc toàn bộ là dot.
Cũng vẫn phải canh left của textbox này so với left và width của textbox bên trái.
Đúng rồi bác. Muốn tuỳ biến thì phải vẽ thủ công thôi. Tôi cũng thường chỉ vẽ các nét chính hoặc né đứt, khỏi tốn mực in... :)
Nhưng gặp trường hợp muốn co giãn dòng theo nội dung một Textbox nào đó thì vẽ Line thủ công là không được rồi...:D

Screen Shot 2023-08-28 at 18.33.png

@Hai Lúa Miền Tây : tôi thường dùng Subreport. Nếu kéo Subform (dạng Datasheet hoặc Continuous) vô thì nó thường không đồng bộ với kiểu thiết kế của report và thường không tương ứng thiết lập kích thước in ấn. Do đó tôi thiết kế SubReport luôn để vừa trang in.

Screen Shot 2023-08-28 at 17.40.14.png
 
Upvote 0
Bi giờ là Userform "đỉnh cao", hoặc tối thiểu cũng là "nâng cao". Chứ làm quái gì còn "quy trình" nữa.
 
Upvote 0
Bi giờ là Userform "đỉnh cao", hoặc tối thiểu cũng là "nâng cao". Chứ làm quái gì còn "quy trình" nữa.
Thiết kế giao diện cũng là một phần của qui trình tạo Userform bác à. Tính ra thì trao đổi cũng vòng vòng liên quan đến Userform chứ không đi xa quá, ra tới các vấn đề kinh tế, văn hoá, phân tích hành vi, thái độ v.v....:cool:
 
Upvote 0
... không đi xa quá, ra tới các vấn đề kinh tế, văn hoá, phân tích hành vi, thái độ v.v....:cool:
Vậy hả. Thành thật xin lỗi là làm mất thời gian của bạn.
Không có kinh tế, văn hoá thì một diễn đàn người Việt không còn gì để tôi quyến luyến cả.
Một khi tôi xin lỗi có nghĩa là tôi sẽ hết sức thận trọng trong lần tới. Tôi xin lỗi cá nhân tức là tôi quyết dịnh không bao giờ để cho phải lầm nữa.
 
Upvote 0
Web KT
Back
Top Bottom