Tạo Listbox và code in toàn bộ. (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

chuot0106

Thành viên gắn bó
Tham gia
20/1/13
Bài viết
2,567
Được thích
1,670
Em có mẫu giấy mời họp mới doawload được trên diễn đàn. Em muốn anh chị hướng dẫn cách tạo Listbox như trong File với ạ. Và anh chị nào rành về VBA viết giúp em code in tùy chọn và in toàn bộ với ạ. Thank.
 

File đính kèm

Lần chỉnh sửa cuối:
Lên tìm trong diễn đàn trước rồi hãy post bài nhé.
 
Upvote 0
Bạn làm theo cách sau để xem có đúng không nhé:

Tại Sheet [DanhSach] bạn nhấn tổ hợp phím Ctrl+F3. Lúc này khung Name Manager hiện ra, bạn chọn New, đặt tên cho vùng tạo list ở ô "Name" (VD ta sẽ đặt là DS), tại dòng "Refers To" bạn Click chọn từ dòng đầu tiên đến dòng cuối cùng của cột số thứ tự (trừ dòng tiêu đề ra nhé, chỉ quét từ dòng có số thứ tự là 1 đến cuối). Vậy là việc tạo danh sách đã xong.

Bây giờ mình sử dụng nó nhé !

Bạn qua Sheet[Form], tại nơi bạn muốn đặt danh sách vào thì bạn chọn ô đó, tiếp tục vào Data -> Data Validation -> Sẽ có 1 khung hiện ra, bạn chọn thẻ Setting, chọn tiếp List trong mục Alow, tại dòng Source bạn dán cái này vào
Mã:
=DS

Vậy là xong phần tạo list danh sách.
 
Upvote 0
Bạn làm theo cách sau để xem có đúng không nhé:

Tại Sheet [DanhSach] bạn nhấn tổ hợp phím Ctrl+F3. Lúc này khung Name Manager hiện ra, bạn chọn New, đặt tên cho vùng tạo list ở ô "Name" (VD ta sẽ đặt là DS), tại dòng "Refers To" bạn Click chọn từ dòng đầu tiên đến dòng cuối cùng của cột số thứ tự (trừ dòng tiêu đề ra nhé, chỉ quét từ dòng có số thứ tự là 1 đến cuối). Vậy là việc tạo danh sách đã xong.

Bây giờ mình sử dụng nó nhé !

Bạn qua Sheet[Form], tại nơi bạn muốn đặt danh sách vào thì bạn chọn ô đó, tiếp tục vào Data -> Data Validation -> Sẽ có 1 khung hiện ra, bạn chọn thẻ Setting, chọn tiếp List trong mục Alow, tại dòng Source bạn dán cái này vào
Mã:
=DS

Vậy là xong phần tạo list danh sách.

Không phải rồi anh ạ. Cài này dùng Data Validation em cũng biết. Nhưng trong File của em hình như là tác giả làm bằng listbox thì phải. Dù sao cũng cảm ơn anh nhiều.
 
Upvote 0
bạn vào thẻ developer, chọn insert listbox, chọn property nó, tìm tới chỗ listfillrange gõ vào = inGmoi là xong
 
Upvote 0
không có excel 2003 nên không chỉ trên 2003 dc. còn trên 2010 thì bạn lên thanh công cụ chon " custom ribbon" nó sẽ có 1 thẻ developer chưa dc chọn, bạn chọn nó sẽ xuất hiện trên ribbon bên ngoài.

dựa trên code của bạn, sữa chút đỉnh để in toàn bộ ( in trên form phía trên, còn phía dưới không có làm nhé )

HTML:
Sub InToanBo()    If MsgBox("Ban co chac in toan bo danh sach nay khong?", vbQuestion + vbYesNo, "Thông báo") = vbYes Then        Dim r As Long, sArray(), ho_ten As String, lop As String        Sheet3.Select        Call SpeedOn        With Sheet1            sArray = .Range("a2:d" & .[a65500].End(xlUp).Row)            For r = 1 To UBound(sArray, 1)                ho_ten = sArray(r, 2)                lop = sArray(r, 3)                If Trim(ho_ten) <> "" Then                    Sheet3.[d8].Value = lop                    Sheet3.[d7].Value = ho_ten                    ActiveWindow.SelectedSheets.PrintOut _                                                From:=1, _                                                To:=1, _                                                Copies:=1                End If            Next        End With        Call SpeedOff    End IfEnd Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Anh ơi em dùng Word 2003 anh ạ. Hay trong word 2003 không có thẻ developer anh?
 
Lần chỉnh sửa cuối:
Upvote 0
không có excel 2003 nên không chỉ trên 2003 dc. còn trên 2010 thì bạn lên thanh công cụ chon " custom ribbon" nó sẽ có 1 thẻ developer chưa dc chọn, bạn chọn nó sẽ xuất hiện trên ribbon bên ngoài.

dựa trên code của bạn, sữa chút đỉnh để in toàn bộ ( in trên form phía trên, còn phía dưới không có làm nhé )

Mã:
Sub InToanBo()    If MsgBox("Ban co chac in toan bo danh sach nay khong?", vbQuestion + vbYesNo, "Thông báo") = vbYes Then        Dim r As Long, sArray(), ho_ten As String, lop As String        Sheet3.Select        Call SpeedOn        With Sheet1            sArray = .Range("a2:d" & .[a65500].End(xlUp).Row)            For r = 1 To UBound(sArray, 1)                ho_ten = sArray(r, 2)                lop = sArray(r, 3)                If Trim(ho_ten) <> "" Then                    Sheet3.[d8].Value = lop                    Sheet3.[d7].Value = ho_ten                    ActiveWindow.SelectedSheets.PrintOut _                                                From:=1, _                                                To:=1, _                                                Copies:=1                End If            Next        End With        Call SpeedOff    End IfEnd Sub

Anh ơi tức là code này chỉ in được 1 Form thôi ah anh??? Anh suy nghĩ giúp em code in 2 Form với nhé.
 
Upvote 0

File đính kèm

Upvote 0

File đính kèm

Upvote 0
in 1 lúc 2 form của bạn luôn đó ! cả trên và dưới !
 
Upvote 0
Vâng ạ. Anh có thể hộ em code in theo số TT bất kì được ko anh???
 
Upvote 0
in 1 lúc 2 form của bạn luôn đó ! cả trên và dưới !

Anh có chút lỗi rồi. Khi em ấn nút in toàn bộ thì bản in thứ nhất in HS có số TT 1 và 2; bản in thứ 2 lại có số TT 2 và 3... tức là bản in sau lại in lại em thứ 2 ở bản in trước đó anh ạ. Anh sửa lại giúp em được ko? Em nghĩ chắc là khó.
 
Lần chỉnh sửa cuối:
Upvote 0
Mong các anh chi khác giúp đỡ em với. Anh quocphuoc88 giúp đỡ em nhiều quá rồi.
Một lần nữa cảm ơn anh.
 
Lần chỉnh sửa cuối:
Upvote 0
Anh có chút lỗi rồi. Khi em ấn nút in toàn bộ thì bản in thứ nhất in HS có số TT 1 và 2; bản in thứ 2 lại có số TT 2 và 3... tức là bản in sau lại in lại em thứ 2 ở bản in trước đó anh ạ. Anh sửa lại giúp em được ko? Em nghĩ chắc là khó.
sữa lại cho bạn , kèm theo là có in theo số thứ tự nữa. Bạn coi còn lỗi gì không nhé
 

File đính kèm

Upvote 0
sữa lại cho bạn , kèm theo là có in theo số thứ tự nữa. Bạn coi còn lỗi gì không nhé

Anh quocphuong88 ơi. Anh hộ em code in toàn bộ và in theo thứ tự với ạ. Em cũng định dựa theo code của anh để sửa nhưng hì hục cả chiều nay mà không xong anh ạ.


 

File đính kèm

Upvote 0
Cái này Thầy Phan Tu Huong và Thầy dhn46 là bậc thầy đó. Em nhờ các thầy giúp là được ngay mà.
 
Upvote 0
Cái này Thầy Phan Tu Huong và Thầy dhn46 là bậc thầy đó. Em nhờ các thầy giúp là được ngay mà.

Em không biết anh ạ. Lần trước anh quocphuong88 làm giúp em lên lần này lại nhờ anh ấy.
Em mong các thầy và các anh chị bỏ qua cho em. Em nhờ các anh chị và các thầy giúp em với.
 
Upvote 0
Bạn tham khảo file sau. Nếu bạn quan tâm thì có thể tìm hiểu tại chữ kí của mình
Chúc thành công!
 

File đính kèm

Upvote 0
Rất hay ạ. Nếu căn Form mẫu bằng nửa tờ A4 là rất đẹp thầy ạ. Em cảm ơn thầy.
 
Lần chỉnh sửa cuối:
Upvote 0
Quả thật tiện ích của thầy dhn46 rất hay. Áp dụng được vào nhiều trường hợp khác nhau.
 
Upvote 0
cách của Thầy dhn46 thì khỏi bàn rồi ! . Đây chỉnh lại file củ xíu cho bạn tham khảo thêm cho phong phú vậy ! --=0--=0
 

File đính kèm

Upvote 0

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

Back
Top Bottom