


Cả nhà giúp mình bài này với, mình muốn tìm kiếm có điều kiện và đưa ra những đối tượng thoả mản ra một bảng. Cụ thể mình đã viết trong file đính kèm, mọi người giúp mình sớm nhé. Mình đang rất cần cái này. Thanks cả nhà.



mình chạy thì đúng rồi, nhưng không hiểu lắm về công thức, bạn có thể nói rõ hơn được không? Mình vẫn thắc mắc là bạn không dùng tới ô F2. count(dong) trong ngoặc dong có nghĩa là gì? Mong bạn chỉ rõ hơn cho mình với.
IF(ROWS($1:1)>COUNT(dong),"",OFFSET($C$1,SMALL(dong,ROWS($1:1))-1,0))



--------còn một phần nữa muốn nhờ các đại ca, đó là mình muốn đưa ra top 50 mặt hàng bán được của công ty đó ( doanh thu giảm dần). Các bạn xem file đính kèm nhé. Cảm ơn mọi người
Chọn F3 sửa name "dong" thành- Trên cơ sở tìm kiếm như các bạn đã làm, Mình có thêm điều kiện là tìm kiếm cho nhiều đối tượng cùng một lúc trên cùng một bảng thì thực hiện không được.
- Nhờ Anh em giúp mình.
- Cám ơn Anh em!
Nó đây. Được ô đầu thôi sao. Kỳ "zị"?[FONT="]- Mình đã làm rồi nhưng chưa được, nhờ Bạn kiểm tra lại giúp mình với! chỉ được ô đầu tiên thôi.[/FONT]
[FONT="]- Cám ơn bạn nhiều![/FONT]
[FONT="]- Chào bạn![/FONT]
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [F2].Resize(, 6)) Is Nothing Then
Dim Rng As Range, sRng As Range, MyAdd As String, Col As Byte
Target.Offset(1).Resize(18).ClearContents
Set Rng = Range([B2], [B65500].End(xlUp)): Col = Target.Column
Set sRng = Rng.Find(Target.Value, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
MyAdd = sRng.Address
Do
Cells(11, Col).End(xlUp).Offset(1).Value = sRng.Offset(, 1).Value
If Cells(11, Col).Value = "" Then
Cells(11, Col).Value = sRng.Offset(, -1).Value
Else
Cells(35, Col).End(xlUp).Offset(1).Value = sRng.Offset(, -1).Value
End If
Set sRng = Rng.FindNext(sRng)
Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
End If
End If
End Sub
- Chào Anh!Nó đây. Được ô đầu thôi sao. Kỳ "zị"?
Đó là các Name động bạn ạ, bấm Ctrl + F3 xem trong đó là cái gì nhé- Chào Anh!
- Cám ơn Anh đã giúp Mình giải bài toán trên.
- Hiện nay Mình có một bảng tính mà yêu cầu gần giống như bài toán trên nhưng do Mình không hiểu lắm về ý nghĩa của hai lệnh "dong" và "congty" mà Anh đã dùng. Vì thế khi áp dụng bằng lệnh thường (đánh lại theo lệnh tắt của Anh) thì không được. Vì thế nhờ Anh có thể giải thích cho Mình về ý nghĩa của hai lệnh tắt trên được không?!
- Chân thành cám ơn Anh rất nhiều!
- Mình mới vào nghề nên còn non kém lắm.Đó là các Name động bạn ạ, bấm Ctrl + F3 xem trong đó là cái gì nhé
Còn bảng tính của bạn gần giống như vậy mà không áp dụng được sao bạn không gởi cái bài đó lên, hoặc file giả lập cùng cấu trúc và yêu câu theo bài của bạn, AE trên diễn đàn sẵn sàng trợ giúp bạn ngay thôi mà
Thân
Híc, mình chẳng hiểu gì cả, bạn vui lòng nói rõ yêu cầu, càng rõ càng tốt- Mình mới vào nghề nên còn non kém lắm.
- Điều kiện và thời gian cũng không nhiều để học tập cho đúng. Vì thế nên Mình rất cám ơn Anh đã hỗ trợ cho Mình trong thời gian qua.
- Mình có bài toán cũng giống như yêu cầu trên nhưng có cái là Mình không biết dùng Name động nên gõ lại công thức của Anh nhưng do Mình không hiểu ý nghĩa của nó nên không làm được. Nhờ Anh hỗ trợ giúp Mình bài toán này nhé.
- Anh vui lòng viết bằng ngôn ngữ phổ thông để Mình tiện tìm hiểu về lệnh đó.
- Chân thành cám ơn Anh rất nhiều!
- Chào Anh!
- Mình gởi lại yêu cầu của bài toán.Híc, mình chẳng hiểu gì cả, bạn vui lòng nói rõ yêu cầu, càng rõ càng tốt
Bạn muốn làm gì? kết quả ra sao? muốn ra kết quả ở vùng nào của sheet nào?. Tốt nhất là bạn nhập kết quả theo ý bạn vài hàng
Thân
Bài toán này của bạn khác xa với bài kia ( chứ nếu tương tự thì mình làm cái roẹt là xong), di chuyển dữ liệu từ dọc sang ngang, lấy duy nhất trong từng vùng dữ liệu- Mình gởi lại yêu cầu của bài toán.
- Cám ơn Anh nhiều!
- Chào Anh!
Bài toán này của bạn khác xa với bài kia ( chứ nếu tương tự thì mình làm cái roẹt là xong), di chuyển dữ liệu từ dọc sang ngang, lấy duy nhất trong từng vùng dữ liệu
Mình chỉ thắc mắc là sao bạn biết được trong mấy "thằng" P, I, IC có tối đa bao nhiêu dòng mà bạn chừa ra để nhập công thức ( hay dữ liệu của ai thì nấy biết nhỉ)
Cái phần còn lại ở sheet DK mình nghĩ chắc bạn làm được ( cái này mới đúng là tương tự)
Híc
Bài toán này của bạn khác xa với bài kia ( chứ nếu tương tự thì mình làm cái roẹt là xong), di chuyển dữ liệu từ dọc sang ngang, lấy duy nhất trong từng vùng dữ liệu
Mình chỉ thắc mắc là sao bạn biết được trong mấy "thằng" P, I, IC có tối đa bao nhiêu dòng mà bạn chừa ra để nhập công thức ( hay dữ liệu của ai thì nấy biết nhỉ)
Cái phần còn lại ở sheet DK mình nghĩ chắc bạn làm được ( cái này mới đúng là tương tự)
Híc
Bạn muốn viết thẳng ra câu lệnh thì vào name chọn tên muốn thay thế ==> copy ==> đem ra bảng tính ==> vào công thức ==> cứ "thằng" nào trùng tên với tên mình vừa copy thì mình dán vào thay thế nó ==> bạn sẽ được một cái công thức ..dài thăm thẳm như con trăn gì đó ở Nam Mỹ- Bài này thực tế là một phần của "Bảng tính toán thiết kế Điện" của Mình. Nhưng do kiến thức còn hạn chế nên "Bảng tính thiết kế Điện" của Mình rất nặng (do Mình dùng lệnh IF cho từng trường hợp), cũng vì thế nên nó cũng không linh hoạt khi bảng dữ liệu gốc có thay đổi. Nếu viết lại theo kiểu của Anh thì File sẽ nhẹ và linh hoạt khi có thay đổi ở bảng gốc.
- Anh có thể tư vấn cho Mình cách làm Name động được không? cách kết hợp chúng lại có gì khác nhau so với cách dùng thẳng cả câu lệnh không?
- Cám ơn Anh rất nhiều!
- Chào Anh!


--------
Tôi thích dùng cột phụ, dễ nhìn thấy các công thức của mình để chỉnh sửa, ẩn nó đi khi không cần thiết, Bạn thử xem.

View attachment 123830
mình có vấn đề này mong mọi người giúp đỡ. mình muốn tìm giá trị A1 những trả giá trị tham chiếu ở E2
chân thành cảm ơn mọi người

dong là cái Name mình đặt, bạn nhấn Ctr+F3 để xem các Name mình đặt. trong đó có 2 Name
congty =OFFSET(Sheet1!$B$2,,,COUNTA(Sheet1!$B:$B),1) sẽ cho ra vùng chứa công ty của cột công ty trong Sheet1
dong =IF(congty=Sheet1!$F$2,ROW(congty),"") sẽ cho ra số dòng của những công ty trùng với công ty trong cột F2.
Bạn tìm hiểu nếu có gì không hiểu thì tiếp tục hỏi nhé, mọi người sẽ giúp bạn!