thesaintzero
Thành viên hoạt động
- Tham gia
- 16/3/09
- Bài viết
- 158
- Được thích
- 8
Bạn nói rằng "Sau đó bạn add macro vào menu vừa tạo" nghĩa là bạn đang có 1 cái menu, đúng không? Vậy thì việc vẽ cái CommandButton lên bảng tính có tác dụng gì? Đàng nào bạn cũng đâu có dùng đếnAh! mình làm được rùi các thầy vs các bạn ơi! các bạn có thể làm thế này: ( không biết đúng không nhưng mình thấy mình làm được ^^)
Đầu tiên bạn tạo 1 Commandbuttton với name cmd1
bạn viết nút lệnh cho nút lệnh này :
Public sub cmd1_click()
msgbox"Da nhan dien duoc Commandbutton"
End sub
Bạn chú ý dùm mình là nếu chọn "Private sub" thay vì "Publlic sub" thì mình làm hoài không được, nếu ai bik thì diễn giải dùm mình nhé.
Sau đó bạn tạo 1 macro với button name là Goicmd1
Sub Goicmd1()
sheet1.cmd1_click
end sub
Sau đó bạn add macro vào menu vừa tạo, thế là có 1 cái menu gọi được lệnh trong Commandbutton
Nếu bạn muốn ẩn nút Commandbutton thì trong muc visible=false là nút này sẽ ẩn đi.....
Cách của mình là thế ai có cao kiến hay hơn thì cho mình 1 cái nhận xét nhé. Thanks
Thay Code này cho code Nút <XONG>Mình biết là vậy, nhưng không biết cái excel của mình bị gì mà không gọi lệnh trực tiếp được nên mình mới phải gọi lệnh qua cmdbutton...... chỉ vì vậy đó mà suy nghĩ hoài.... mà Bác Ndu ơi sao cái menu mình vừa tạo bên excel 2003 sao mình ko cho nó hiển thị bên 2007 được , mà cái menu add-ins trong 2007 nó không có hiện ra. Bác có cách nào không chỉ giúp mình với...( mình xài 2007 Fortable ) không biết có phải vì vậy mà không làm được không?
Thêm 1 câu hỏi nữa hôm bữa có nhờ 1 người trong GPE làm giúp cái vùng dữ liệu nhưng sao khi xóa hết dữ liệu mà mình nhập lại theo vùng thì không đươc. Nếu bác Ndu có rảnh thi xem giúp em với.... em cám ơn nhiều..( em có kèm theo file )
Private Sub CommandButton1_Click()
Sheets("S1").Range("A" & [G1] * 12 - 9).Resize(10, 5).Value = Sheets("S1").Range("AA1:AE10").Value
End Sub
thì bạn coi trong code đó : cụ thể là đoạn code này
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [G1]) Is Nothing Then
Dim Rws As Long
Rws = 12 * Target.Value - 9
Cells(Rws, "A").Resize(10, 5).Copy Destination:=Sheet1.[AA1]
End If
End Sub
Bạn muốn gì thì cũng đưa file ví dụ lên để người khác hiểu bạn muốn gì chứ.Vậy bây giờ, khi lấy dữ liệu từ sheet khác được rồi, sau đó mình sửa và mình muốn xuất dữ liệu sang sheet tương ứng với bảng dữ liệu đó thì làm thế nào?
Giả sử vùng dữ liệu là A1:AH30 ở các sheet 2,3,4,5,.... Sheet 1 là sheet dùng để xem dữ liệu lấy từ các sheet 2,3,4,5...Sau khi lấy được dữ liệu ở 1 sheet rồi, bây giờ muốn sửa và update nó ngược lại sheet tương ứng.
Đây là file ví dụ, các yêu cầu mình viết chi tiết trong file.
Private Sub CommandButton1_Click()
On Error Resume Next
Sheets("Sheet" & Range("C7").Value).Range("A1:E10").Copy Range("E7")
End Sub
Private Sub CommandButton1_Click()
On Error Resume Next
Sheets(Range("C7").Value).Range("A1:E10").Copy Range("E7")
End Sub
Lâu lâu phải ôn bài, hông thôi quên hếtMình gửi nhầm file, đây là file ví dụ. file bạn làm gần đúng nhưng chưa đủ
Cảm ơn bạn. Bạn đã giải quyết được đúng vấn đề của mình :dLâu lâu phải ôn bài, hông thôi quên hết
Trong file của bạn dữ liệu là giả định, bố trí hơi lạ, nếu có cấu trúc giống như thật sẽ làm chính xác hơn. Hổng sao, có gì sửa lại
Thân