Điền giá trị vào ô thỏa mãn điều kiện!

Liên hệ QC

laulau

Thành viên mới
Tham gia
8/12/10
Bài viết
11
Được thích
1
Tôi biết ít VBA nên nhờ a e giúp code điền 1 giá trị vào ô thỏa mãn điều kiện theo như file sau
Tôi có đơn giá của ngày cụ thể trong tháng và điền vào giá trị đơn giá đó vào mảng khác theo ngày đó
 

File đính kèm

  • dien gia tri.xlsx
    10.2 KB · Đọc: 12
"Tôi" thì viết đủ còn "a e" sợ mỏi tay?

Chả có mỏi tay mỏi chưn gì hết.

1. a là trạng từ (a thần phù), e là động từ (sợ). a e là nghe lời ngừoi khác mà sợ một cái gì đó.

2. a là đại danh từ (tiếng Tàu có nghĩa là thằng cu), e là danh từ riêng (tên). a e tức là cu e.
 
Upvote 0
Chả có mỏi tay mỏi chưn gì hết.

1. a là trạng từ (a thần phù), e là động từ (sợ). a e là nghe lời ngừoi khác mà sợ một cái gì đó.

2. a là đại danh từ (tiếng Tàu có nghĩa là thằng cu), e là danh từ riêng (tên). a e tức là cu e.
Cảm ơn a nhiều!
 
Upvote 0
Chả có mỏi tay mỏi chưn gì hết.

1. a là trạng từ (a thần phù), e là động từ (sợ). a e là nghe lời ngừoi khác mà sợ một cái gì đó.

2. a là đại danh từ (tiếng Tàu có nghĩa là thằng cu), e là danh từ riêng (tên). a e tức là cu e.
Thành viên mới cảm ơn anh nhiều !
 
Upvote 0
Tôi biết ít VBA nên nhờ a e giúp code điền 1 giá trị vào ô thỏa mãn điều kiện theo như file sau
Tôi có đơn giá của ngày cụ thể trong tháng và điền vào giá trị đơn giá đó vào mảng khác theo ngày đó
Chưa hiểu lắm ý định của bạn! Tôi đoán thế này:
- Bạn chọn ngày trong cell D3
- Code sẽ dò ngày vừa chọn vào khu vực cột A, nếu có thì lấy giá trị tương ứng cột B điền vào khu vực cột G với điều kiện dòng tương ứng bên cột F có giá trị bằng với cell chọn ở D3
Đúng không?
Nếu là vậy thì tôi đề nghị code thế này
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
  On Error Resume Next
  If Target.Address = "$D$3" Then
    Dim rngSource As Range, rngTarget As Range, rngFind As Range, cel As Range
    Set rngSource = Range("A3:B1000")
    Set rngTarget = Range("F3:F1000")
    For Each cel In rngTarget
      If cel.Value <> Empty Then
        If cel.Value = Target.Value Then
          Set rngFind = rngSource.Find(Target.Value, , xlValues, xlWhole)
          If Not rngFind Is Nothing Then cel.Offset(, 1).Value = rngFind.Offset(, 1).Value
        End If
      End If
    Next
  End If
End Sub
Code viết theo dạng đơn giản thôi
 
Upvote 0
Chưa hiểu lắm ý định của bạn! Tôi đoán thế này:
- Bạn chọn ngày trong cell D3
- Code sẽ dò ngày vừa chọn vào khu vực cột A, nếu có thì lấy giá trị tương ứng cột B điền vào khu vực cột G với điều kiện dòng tương ứng bên cột F có giá trị bằng với cell chọn ở D3
Đúng không?
Nếu là vậy thì tôi đề nghị code thế này
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
  On Error Resume Next
  If Target.Address = "$D$3" Then
    Dim rngSource As Range, rngTarget As Range, rngFind As Range, cel As Range
    Set rngSource = Range("A3:B1000")
    Set rngTarget = Range("F3:F1000")
    For Each cel In rngTarget
      If cel.Value <> Empty Then
        If cel.Value = Target.Value Then
          Set rngFind = rngSource.Find(Target.Value, , xlValues, xlWhole)
          If Not rngFind Is Nothing Then cel.Offset(, 1).Value = rngFind.Offset(, 1).Value
        End If
      End If
    Next
  End If
End Sub
Code viết theo dạng đơn giản thôi
Chắc kiến thức và code này em đang cần, trước hết cảm ơn anh, sau em tìm hiểu code chưa hiểu thì hỏi nhờ anh giải đáp!
 
Upvote 0
Vẫn không được anh à
nếu em dùng excel thì là thế này anh!
mong anh chỉ giùm code
 

File đính kèm

  • dien gia tri ham Excel.xlsx
    9.2 KB · Đọc: 8
Upvote 0
Web KT
Back
Top Bottom