Tạo nút bấm trên excel (1 người xem)

  • Thread starter Thread starter broker
  • Ngày gửi Ngày gửi
Liên hệ QC

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

broker

Thành viên mới
Tham gia
25/2/08
Bài viết
2
Được thích
0
Nghề nghiệp
Broker
+-+-+-+Thật là dốt quá. Em mới "vào nghề" chưa biết tạo ra 1 nút bấm để chuyển đến 1 sheet khác hoặc file khác như thế nào. Mong các bác chỉ giúp cho em với.**~**
 

File đính kèm

Cảm ơn Bác "thanhan" nhiều lắm...Tuy nhiên đọc cái này cũng thật khó hiểu...híc... Em sẽ phải cày cuốc đêm đêm đây...

Có gì đâu mà khóc vậy bạn.
Đầu tiên bạn không nên đặt tên sheet có dấu, có khoản trắng.
Bạn vào VBA (ấn Alt+F11) vào màn hình soạn thảo code. Click chuột phải vào khung Project (nếu không thấy thì ấn ctrl+R), chọn insert Module. Bạn viết hai thủ tục như sau:
PHP:
Cú pháp để chọn sheet:

Sub NhapDuLieu()
sheets("NhapDuLieu").select    'Tên sheet được đặt trong hai dấu nháy kép.
end Sub

Sub XemDuLieu()
sheets("XemDuLieu").select
end sub

Sau đó quay ra excel, tại sheet nguon. Click chuột phải vào nút lệnh <Nhập dữ liệu> và chọn Assign macro.
Lúc này cửa sổ assign macro xuất hiện, bạn sẽ thấy hai thủ tục bạn vừa tạo, chọn vào thủ tục (Macro) có tên NhapDuLieu, rồi chọn OK đi bạn. Như vậy bạn đã gán cho nút lệnh <Nhập Dữ Liệu một macro name là NhapDuLieu. Khi click chuột trái lên nút lệnh, chương trình sẽ thực thi macro này. Tương tự với nút lệnh <Xem kết quả>.

Còn việc tạo combobox (cái mà bạn gọi là "thanh sổ xuống") thì như sau:
Bạn click chuột phải lên thanh menu chọ Control Toolbox (không nên chọn Form, vì combobox của Control Toolbox dễ thực hiện và dễ điều khiển hơn combobox của Form).
Chọn bật chế độ design mode lên (nút có hình cây thước eke và cây bút chì). Tạo một object là combobox (rê chuột lên từng hình trên thanh Control Toolbox, tới khi nó hiển thị chữ Combobox thỉ click vào).

Bạn phải tạo một danh sách ở ngoài trước khi đưa vào combobox (vì mình nghĩ bạn mới làm quen với VBA nên không đưa ví dụ insert vào combox bằng VB), và đặt tên nó là ListIndex (hoặc tên gì bạn thích) (Vào Insert/Name/Define, hoặc gõ trực tiếp vào ô nhỏ góc trái bên trên (ô đó gọi là ô address thì phải)

Sau đó bạn click chuột phải vào combobox chọn properties

Chỉnh lại thuộc tính ColumnCount cho phù hợp với danh sách (ví dụ danh sách của bạn có hai cột thì chọn columncount= 2)
Tùy chỉnh thuộc tính columnHead =true (thể hiện tên tiêu đề) hoặc = false (không hiện tên tiêu đề)

Chỉnh lại thuộc tính ListFillRange = tên danh sách bạn đã đặt, ở đây mình ví dụ là ListFillRange=ListIndex

tùy chỉnh thuộc tính LinkedCell bằng cách gõ vào địa chỉ 1 ô nào đó, mà ô đó sẽ thay đổi giá trị khi combobox thay đổi và/hoặc combobox sẽ thay đổi khi ô đó thay đổi (quan hệ 1-1).

Bây giờ bạn tắt chế độ design mode đi và thưởng thức kết quả nhé. Tha hồ mà nghiên cứu nhé, và nhớ là .... đừng có khóc!. Hehe
 

File đính kèm

Upvote 0
Dùng phương thức Sheets("tensheet").visible=true (false) cho nó đẹp mắt. Tuy nhiên cũng phải hơi đau khổ nhé thì mới thành công được!
 
Lần chỉnh sửa cuối:
Upvote 0
Bác Ca_difa ơi! sao em làm cái commend Button nhưng khi chọn chuột phải vào nút lệnh thì không thấy assign Macro... đâu cả. Nhờ bác chỉ giúp nhé. Thanks!
 
Upvote 0
Bác Ca_difa ơi! sao em làm cái commend Button nhưng khi chọn chuột phải vào nút lệnh thì không thấy assign Macro... đâu cả. Nhờ bác chỉ giúp nhé. Thanks!

Nút lệnh này tạo ra từ control toolbox không thể assign macro được. Bạn phải xử lý khi nút được click trong VBA.
Khi ở chế độ Design Mode, bạn double click vào nút command, màn hình VBA hiện ra. bạn gõ vào
PHP:
Private sub commandbutton1_Click()
Call TênMacro
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Nút lệnh này tạo ra từ control toolbox không thể assign macro được. Bạn phải xử lý khi nút được click trong VBA.
Khi ở chế độ Design Mode, bạn double click vào nút command, màn hình VBA hiện ra. bạn gõ vào
PHP:
Private sub commandbutton1_Click()
Call TênMacro
End Sub

Bác Ca_dafi ơi! em làm như bác hướng dẫn nhưng vẫn k có assign macro. k biết lỗi ở đâu mong bác giúp đỡ
khi double click vào nút command, màn hình VBA hiện ra có
Private Sub CommandButton1_Click()
End Sub
và em gán tiếp đoạn mã trên vào nhưng vẫn k ổn
VBA báo lỗi tên của CommandButton1_Click không rõ ràng
 
Lần chỉnh sửa cuối:
Upvote 0
Bác Ca_dafi ơi! em làm như bác hướng dẫn nhưng vẫn k có assign macro. k biết lỗi ở đâu mong bác giúp đỡ
khi double click vào nút command, màn hình VBA hiện ra có
Private Sub CommandButton1_Click()
End Sub
và em gán tiếp đoạn mã trên vào nhưng vẫn k ổn
VBA báo lỗi tên của CommandButton1_Click không rõ ràng

Nút commandbutton tạo từ control toolbox thì không có assign macro bạn à. Cụ thể bạn gửi file lên đi, mọi người sẽ hỗ trợ. Bạn mô tả chung chung quá.
 
Upvote 0
Bạn CA_DAFI trình bày chỗ này khó hiểu quá, xin bạn chỉ dẫn thêm cám ơn.
có bạn nào biết về đề tài này không? đề tài mà ban ca_dafi trình bày nè!!!

Sau đó quay ra excel, tại sheet nguon. Click chuột phải vào nút lệnh <Nhập dữ liệu> và chọn Assign macro.
Lúc này cửa sổ assign macro xuất hiện, bạn sẽ thấy hai thủ tục bạn vừa tạo, chọn vào thủ tục (Macro) có tên NhapDuLieu, rồi chọn OK đi bạn. Như vậy bạn đã gán cho nút lệnh <Nhập Dữ Liệu một macro name là NhapDuLieu. Khi click chuột trái lên nút lệnh, chương trình sẽ thực thi macro này. Tương tự với nút lệnh <Xem kết quả>.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
Bạn CA_DAFI trình bày chỗ này khó hiểu quá, xin bạn chỉ dẫn thêm cám ơn.

Sau đó quay ra excel, tại sheet nguon. Click chuột phải vào nút lệnh <Nhập dữ liệu> và chọn Assign macro.
Lúc này cửa sổ assign macro xuất hiện, bạn sẽ thấy hai thủ tục bạn vừa tạo, chọn vào thủ tục (Macro) có tên NhapDuLieu, rồi chọn OK đi bạn. Như vậy bạn đã gán cho nút lệnh <Nhập Dữ Liệu một macro name là NhapDuLieu. Khi click chuột trái lên nút lệnh, chương trình sẽ thực thi macro này. Tương tự với nút lệnh <Xem kết quả>.

Vậy bạn xem hướng dẫn bằng Film nhé! Cái này chắc sẽ không khó hiểu nữa đâu!
Baïn download ba file này vào 1 thư mục, giải nén file huongdan_Z1.zip và huongdan_Z2.zip, sau đó mới giải nén file huongdan.zip.

Chúc bạn thành công!
 

File đính kèm

Upvote 0
Mời bạn xem file đính kèm. Chúc bạn may mắn

Mình có n button, mình muốn nhập số mấy thì button đó hiện ra còn các button khác thì ẩn. Mong các anh chị chỉ giúp. (Dùng VBA). Cảm ơn
 

File đính kèm

Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
+-+-+-+Thật là dốt quá. Em mới "vào nghề" chưa biết tạo ra 1 nút bấm để chuyển đến 1 sheet khác hoặc file khác như thế nào. Mong các bác chỉ giúp cho em với.**~**
chào bạn!cho mình hỏi nhé
sao mình làm mà ko được như bạn làm nhỉ
bạn xem File dinh kem giup minh
thanhks
 

File đính kèm

Upvote 0

File đính kèm

Upvote 0
Bài toán của tôi là:
Có 2 file A và B.
Mỗi file có 1 sheet: SheetA1, SheetB1.

Nhiệm vụ là:
1. Tạo 1 nút bấm lựa chọn 2 file đó. (goi là DataInput).
2. Nhấn nút Run sẽ cho ra 1 file mới là kết hợp giữa 2 sheet ở trên. Tên file là C.

Nhờ các bác chỉ giáo cách làm theo yêu cầu này nhé. Thanks
 
Upvote 0
1. Tạo 1 nút bấm lựa chọn 2 file đó. (goi là DataInput).
2. Nhấn nút Run sẽ cho ra 1 file mới là kết hợp giữa 2 sheet ở trên. Tên file là C.
Bạn làm ơn nói cho rõ: Kết hợp giữa 2 sheet là kết hợp như thế nào? Đề người khác mới giúp được!
 
Upvote 0
giúp mình copy chức năng macro này nhé

Hi bạn

Xin gửi bạn file đính kèm và hướng dẫn giúp tôi làm thế nào để copy macro từ dòng 20 trên sheet "nhat ky" để sử dụng chức năng chọn như từ dòng 1-->19

Thanks



Có gì đâu mà khóc vậy bạn.
Đầu tiên bạn không nên đặt tên sheet có dấu, có khoản trắng.
Bạn vào VBA (ấn Alt+F11) vào màn hình soạn thảo code. Click chuột phải vào khung Project (nếu không thấy thì ấn ctrl+R), chọn insert Module. Bạn viết hai thủ tục như sau:
PHP:
Cú pháp để chọn sheet:
 
Sub NhapDuLieu()
sheets("NhapDuLieu").select    'Tên sheet được đặt trong hai dấu nháy kép.
end Sub
 
Sub XemDuLieu()
sheets("XemDuLieu").select
end sub

Sau đó quay ra excel, tại sheet nguon. Click chuột phải vào nút lệnh <Nhập dữ liệu> và chọn Assign macro.
Lúc này cửa sổ assign macro xuất hiện, bạn sẽ thấy hai thủ tục bạn vừa tạo, chọn vào thủ tục (Macro) có tên NhapDuLieu, rồi chọn OK đi bạn. Như vậy bạn đã gán cho nút lệnh <Nhập Dữ Liệu một macro name là NhapDuLieu. Khi click chuột trái lên nút lệnh, chương trình sẽ thực thi macro này. Tương tự với nút lệnh <Xem kết quả>.

Còn việc tạo combobox (cái mà bạn gọi là "thanh sổ xuống") thì như sau:
Bạn click chuột phải lên thanh menu chọ Control Toolbox (không nên chọn Form, vì combobox của Control Toolbox dễ thực hiện và dễ điều khiển hơn combobox của Form).
Chọn bật chế độ design mode lên (nút có hình cây thước eke và cây bút chì). Tạo một object là combobox (rê chuột lên từng hình trên thanh Control Toolbox, tới khi nó hiển thị chữ Combobox thỉ click vào).

Bạn phải tạo một danh sách ở ngoài trước khi đưa vào combobox (vì mình nghĩ bạn mới làm quen với VBA nên không đưa ví dụ insert vào combox bằng VB), và đặt tên nó là ListIndex (hoặc tên gì bạn thích) (Vào Insert/Name/Define, hoặc gõ trực tiếp vào ô nhỏ góc trái bên trên (ô đó gọi là ô address thì phải)

Sau đó bạn click chuột phải vào combobox chọn properties

Chỉnh lại thuộc tính ColumnCount cho phù hợp với danh sách (ví dụ danh sách của bạn có hai cột thì chọn columncount= 2)
Tùy chỉnh thuộc tính columnHead =true (thể hiện tên tiêu đề) hoặc = false (không hiện tên tiêu đề)

Chỉnh lại thuộc tính ListFillRange = tên danh sách bạn đã đặt, ở đây mình ví dụ là ListFillRange=ListIndex

tùy chỉnh thuộc tính LinkedCell bằng cách gõ vào địa chỉ 1 ô nào đó, mà ô đó sẽ thay đổi giá trị khi combobox thay đổi và/hoặc combobox sẽ thay đổi khi ô đó thay đổi (quan hệ 1-1).

Bây giờ bạn tắt chế độ design mode đi và thưởng thức kết quả nhé. Tha hồ mà nghiên cứu nhé, và nhớ là .... đừng có khóc!. Hehe
 
Upvote 0
giúp mình copy chức năng macro này nhé

Hi bạn

Xin gửi bạn file đính kèm và hướng dẫn giúp tôi làm thế nào để copy macro từ dòng 20 trên sheet "nhat ky" để sử dụng chức năng chọn như từ dòng 1-->19

Thanks
 

File đính kèm

Upvote 0
Web KT

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

Back
Top Bottom