Lấy công thức trong ô (1 người xem)

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

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

nncb2008

Thành viên chính thức
Tham gia
14/2/08
Bài viết
88
Được thích
3
Chào các anh/chị.
Mong mọi người chỉ giúp cho việc như sau: Trong 1 vùng có một số ô có công thức, tôi muốn tìm trong vùng đó, nếu ô có công thức thì điền vào bảng gồm 2 cột, cột địa chỉ thì điền tên ô, cột công thức thì điền nội dung công thức trong ô tìm thấy (không có dấu =).
Ví dụ trong file đính kèm.
Cảm ơn.
 

File đính kèm

Chào các anh/chị.
Mong mọi người chỉ giúp cho việc như sau: Trong 1 vùng có một số ô có công thức, tôi muốn tìm trong vùng đó, nếu ô có công thức thì điền vào bảng gồm 2 cột, cột địa chỉ thì điền tên ô, cột công thức thì điền nội dung công thức trong ô tìm thấy (không có dấu =).
Ví dụ trong file đính kèm.
Cảm ơn.
Vấn đề này thì có lẽ công thức không làm nổi, hoặc nếu có thì cũng khá phức tạp (ít nhất là tôi không làm được).
Bạn tham khảo code sau nhé:
[GPECODE=vb]Sub Test()
Dim Cll As Range
[D2:E65000].ClearContents
For Each Cll In Sheet1.[B1:B15]
If Cll.HasFormula Then
[D65000].End(xlUp).Offset(1) = Cll.Address(0, 0)
[D65000].End(xlUp).Offset(, 1) = Right(Cll.Formula, Len(Cll.Formula) - 1)
End If
Next
End Sub[/GPECODE]
 

File đính kèm

Upvote 0
Chào các anh/chị.
Mong mọi người chỉ giúp cho việc như sau: Trong 1 vùng có một số ô có công thức, tôi muốn tìm trong vùng đó, nếu ô có công thức thì điền vào bảng gồm 2 cột, cột địa chỉ thì điền tên ô, cột công thức thì điền nội dung công thức trong ô tìm thấy (không có dấu =).
Ví dụ trong file đính kèm.
Cảm ơn.
Nếu dùng Excel 2013, bạn có thể dùng hàm IsFormula() để kiểm tra xem ô tham chiếu có phải là 1 hàm không, dùng hàm Formulatext() để trả ra giá trị là hàm dạng text của ô tham chiếu (bao gồm cả dấu "=", nếu muốn loại dấu "=" thì bạn dùng hàm right(). Dùng hàm if() với điều kiện là hàm isFormula(), kết quả trả ra dùng hàm Formulatext() là ok.
Nếu dùng Excel bản thấp hơn bạn có thể sử dụng hàm sau:
PHP:
Function Fml(a As Range) As String
If a.Formula = "" Then Fml = ""
If Left(a.Formula, 1) = "=" Then Fml = Right(a.Formula, Len(a.Formula) - 1)
End Function
 
Lần chỉnh sửa cuối:
Upvote 0

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

Back
Top Bottom