tuananhya2
Thành viên mới

- Tham gia
- 18/8/12
- Bài viết
- 8
- Được thích
- 0
Co ai chỉ dùm cách tạo pass marco với
Xin chào mọi người.
Em đang sử dụng cái combox của Thầy Quang Hải
Nhưng em thấy vẫn chưa yên tâm về một chỗ đó là Em muốn hỏi làm sao có thể bắt buộc nhập dữ liệu theo những điều kiện trong list ở các dòng màu xanh.(không cho nhập lung tung).
Kiểu là dạng như datavalition trong vùng màu đỏ đấy ạ.
Mọi người xem file đính kèm và giúp em với ạ, Xin cám ơn!
Xin chào mọi người.
Em đang sử dụng cái combox của Thầy Quang Hải
Nhưng em thấy vẫn chưa yên tâm về một chỗ đó là Em muốn hỏi làm sao có thể bắt buộc nhập dữ liệu theo những điều kiện trong list ở các dòng màu xanh.(không cho nhập lung tung).
Kiểu là dạng như datavalition trong vùng màu đỏ đấy ạ.
Mọi người xem file đính kèm và giúp em với ạ, Xin cám ơn!
Xin chào mọi người.
Em đang sử dụng cái combox của Thầy Quang Hải
Nhưng em thấy vẫn chưa yên tâm về một chỗ đó là Em muốn hỏi làm sao có thể bắt buộc nhập dữ liệu theo những điều kiện trong list ở các dòng màu xanh.(không cho nhập lung tung).
Kiểu là dạng như datavalition trong vùng màu đỏ đấy ạ.
Mọi người xem file đính kèm và giúp em với ạ, Xin cám ơn!
Xin chào mọi người.
Em đang sử dụng cái combox của Thầy Quang Hải
Nhưng em thấy vẫn chưa yên tâm về một chỗ đó là Em muốn hỏi làm sao có thể bắt buộc nhập dữ liệu theo những điều kiện trong list ở các dòng màu xanh.(không cho nhập lung tung).
Kiểu là dạng như datavalition trong vùng màu đỏ đấy ạ.
Mọi người xem file đính kèm và giúp em với ạ, Xin cám ơn!
.Style = fmStyleDropDownList
mình lang thang trên diễn đan, copy được một đạon code lâu rồi, bi giờ định đen vào áp dụng, nhưng đọc tới đọc lui hoai mà ko biết dòng lệnh nào giúp nó loại giá trị trùng khi nạp vào combobox, nên nhờ ACE chỉ dùm
Sub addvalue()
Dim c As Range, Coll As New Collection
On Error Resume Next
For Each c In Range([D5], [D5000].End(xlUp))
Coll.Add c.Value, c.Value
Next c
On Error GoTo 0
For Each Item In Coll
Sheet1.ComboBox1.AddItem Item
Next Item
End Sub
Tks ACE nhiu nhìu
mình lang thang trên diễn đan, copy được một đạon code lâu rồi, bi giờ định đen vào áp dụng, nhưng đọc tới đọc lui hoai mà ko biết dòng lệnh nào giúp nó loại giá trị trùng khi nạp vào combobox, nên nhờ ACE chỉ dùm
Sub addvalue()
Dim c As Range, Coll As New Collection
On Error Resume Next
For Each c In Range([D5], [D5000].End(xlUp))
Coll.Add c.Value, c.Value
Next c
On Error GoTo 0
For Each Item In Coll
Sheet1.ComboBox1.AddItem Item
Next Item
End Sub
Tks ACE nhiu nhìu
mình lang thang trên diễn đan, copy được một đạon code lâu rồi, bi giờ định đen vào áp dụng, nhưng đọc tới đọc lui hoai mà ko biết dòng lệnh nào giúp nó loại giá trị trùng khi nạp vào combobox, nên nhờ ACE chỉ dùm
Sub addvalue()
Tks ACE nhiu nhìu
Đối với Collection thì không có loại bỏ dữ liệu trùng. Khi gặp em nào có trong Coll rồi thì sẽ gây ra 1 lỗi. Câu lệnh On error Resume next giúp xử lý cái lỗi này, vây thôi.
PS: Coll không được tiện dụng cho lắm, tốt nhất xài Dictionary. Khi nạp dữ liệu vào Dic thì nạp vào Combobox luôn cho nhanh.
cám ơn các anh nhìu nhìu.
cái Dic. nó không bít mình, nên mình ko dám sử dụng
nhờ anh viết dùm cách nạp vào combobox dữ liệu không trùng và sort theo A,B,C được không anh.
hiện nay tui phai advance filter ra một cột khác rồi mới nạp vào
cám ơn các anh nhìu nhìu.
cái Dic. nó không bít mình, nên mình ko dám sử dụng
nhờ anh viết dùm cách nạp vào combobox dữ liệu không trùng và sort theo A,B,C được không anh.
hiện nay tui phai advance filter ra một cột khác rồi mới nạp vào
----------------
Còn nói về Advanced Filter thì bạn đừng chê nó nha ---> Nó cho tốc độ tuyệt nhanh ---> Nếu đang dùng thì cứ vậy mà dùng đi
cám ơn các anh nhìu nhìu.
cái Dic. nó không bít mình, nên mình ko dám sử dụng
nhờ anh viết dùm cách nạp vào combobox dữ liệu không trùng và sort theo A,B,C được không anh.
hiện nay tui phai advance filter ra một cột khác rồi mới nạp vào
Sub nap_list()
[E5:E10000].ClearContents
[D5:D10000].AdvancedFilter 2, , [E5], 1
Range([E5], [E65536].End(3)).Sort [E4]
Range([E5], [E65536].End(3)).Name = "list"
ActiveSheet.ComboBox1.ListFillRange = "list"
End Sub
Nạp vào ComboBox hoặc ListBox thì không cần phải vòng lập đâuThì bạn nói cách làm tay cho excel hiểu dưới dạng code---> thử code dưới đấy xem :
[GPECODE=vb]
Sub addvalue()
Dim mycell As Range
Application.ScreenUpdating = 0
Range("D").AdvancedFilter 2, , [IV1], 1
Range("IV1", [IV65536].End(3)).Sort [IV1]
For Each mycell In Range("IV1", [IV65536].End(3))
Sheet1.ComboBox1.AddItem mycell.Value
Next
[IV:IV].ClearContents
Application.ScreenUpdating = 1
End Sub
[/GPECODE]
Sub addvalue()
Dim arr
With Sheet1
.Range("D5:D50000").AdvancedFilter 2, , .[IV1], 1
With .Range("IV1", .[IV65536].End(3))
.Sort .Cells(1, 1), Header:=xlYes
arr = Intersect(.Cells, .Offset(1))
End With
.ComboBox1.List() = arr
.[IV:IV].ClearContents
End With
End Sub
Chào ACE, chúc một ngày làm việc vui vẻ.
ACE cho tui hỏi: tui có một file excel có chứa một số đoạn macro, khi gởi file này cho người khác qua email, tui không muốn kèm các đoạn code này theo (vì người ta chỉ cần đọc kết quả).
cá cách nào không, nhờ ACE chỉ dùm
tks so much
cám ơn anh nhiều, nhưng nhiều sheet, copy past value cũng hơi oai. để tôi install cái convert qua PDF thử.
Sub Main()
Dim wks As Worksheet, aData
On Error Resume Next
For Each wks In ThisWorkbook.Worksheets
aData = wks.UsedRange.Value
wks.UsedRange.Value = aData
Next
End Sub
Thì bạn copy paste value, xóa hết macro, công thức đi là được rồi
Đơn giản hơn nữa: Chuyển mọi thứ thành PDF (ví như bạn nói người ta chỉ cần đọc kết quả)