Hàm viết chữ in đậm trong công thức nối chuỗi (4 người xem)

Liên hệ QC

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

lebuinhat

Thành viên mới
Tham gia
14/6/11
Bài viết
16
Được thích
3
Để phục vụ công việc mình cần 1 hàm có thể tô đậm và gạch chân 1 đoạn chữ trong cell kết quả ( như file đính kèm )
Không biết có hàm nào sẵn có trong exel có thể làm việc này hay 1 hàm tự tao để khi mình thay đổi giá trị thành phần thì kết quả cũng thay đổi theo.
Rất mong được mọi người giúp đỡ
 

File đính kèm

Để phục vụ công việc mình cần 1 hàm có thể tô đậm và gạch chân 1 đoạn chữ trong cell kết quả ( như file đính kèm )
Không biết có hàm nào sẵn có trong exel có thể làm việc này hay 1 hàm tự tao để khi mình thay đổi giá trị thành phần thì kết quả cũng thay đổi theo.
Rất mong được mọi người giúp đỡ
Sub DinhDang()
Dim Vitri As Long
Cells(2, 3).FormulaR1C1 = "=VLOOKUP(RC[11],'MÃ C?A'!C2:C3,2,0)&"" ""&VLOOKUP(RC[14],'MÃ C?A'!C4:C5,2,0)&"" ""&'MÃ C?A'!RC[3]&CHAR(10)&VLOOKUP(RC[14],'MÃ C?A'!C4:C7,4,0)"
Cells(2, 3).Value = Cells(2, 3).Value
Vitri = InStr(1, Cells(2, 3), ":", vbTextCompare)
Cells(2, 3).Characters(Start:=1, Length:=Vitri).Font.Bold = True
Cells(2, 3).Characters(Start:=1, Length:=Vitri).Font.Italic = True

End Sub
có thể xem code này xem có đáp ứng được? định dạng từng ký tự trong công thức tôi không làm được, nên mới chuyển về giá trị để định dạng, tôi dựa vào dấu : để tìm vị trí kết thúc để định dạng
 
Sub DinhDang()
Dim Vitri As Long
Cells(2, 3).FormulaR1C1 = "=VLOOKUP(RC[11],'MÃ C?A'!C2:C3,2,0)&"" ""&VLOOKUP(RC[14],'MÃ C?A'!C4:C5,2,0)&"" ""&'MÃ C?A'!RC[3]&CHAR(10)&VLOOKUP(RC[14],'MÃ C?A'!C4:C7,4,0)"
Cells(2, 3).Value = Cells(2, 3).Value
Vitri = InStr(1, Cells(2, 3), ":", vbTextCompare)
Cells(2, 3).Characters(Start:=1, Length:=Vitri).Font.Bold = True
Cells(2, 3).Characters(Start:=1, Length:=Vitri).Font.Italic = True

End Sub
có thể xem code này xem có đáp ứng được? định dạng từng ký tự trong công thức tôi không làm được, nên mới chuyển về giá trị để định dạng, tôi dựa vào dấu : để tìm vị trí kết thúc để định dạng

Cám ơn bạn. Mình đang muốn có được hàm vì bảng tính của mình nhiều định dạng giống như trong file mẫu mình gửi. Nếu có công thức mình chỉ cần thay đổi cell tham số là được.
VBA thì mình không rành lắm bạn có thể chỉ mình cách viết vòng lặp để có thể thực hiện phép tính chứ không phải thay đổi code cho từng ô cell
 
Cám ơn bạn. Mình đang muốn có được hàm vì bảng tính của mình nhiều định dạng giống như trong file mẫu mình gửi. Nếu có công thức mình chỉ cần thay đổi cell tham số là được.
VBA thì mình không rành lắm bạn có thể chỉ mình cách viết vòng lặp để có thể thực hiện phép tính chứ không phải thay đổi code cho từng ô cell
Muốn lặp thì có lặp." Chú ý code viết trực tiếp trên này nên không thể biết có sai chính tả ở đâu không nha
Sub DinhDang()
Dim Vitri As Long, i as long, Dcuoi as long
Dcuoi= Range("C65000").end(xlup).row
Range("C2:C"& Dcuoi).FormulaR1C1 = "=VLOOKUP(RC[11],'MÃ C?A'!C2:C3,2,0)&"" ""&VLOOKUP(RC[14],'MÃ C?A'!C4:C5,2,0)&"" ""&'MÃ C?A'!RC[3]&CHAR(10)&VLOOKUP(RC[14],'MÃ C?A'!C4:C7,4,0)"
Range("C2:C"& Dcuoi).Value = Range("C2:C"& Dcuoi).Value
for i =2 to dcuoi
Vitri = InStr(1, Cells(i, 3), ":", vbTextCompare)
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Bold = True
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Italic = True
next
End Sub
 
Lần chỉnh sửa cuối:
Muốn lặp thì có lặp." Chú ý code viết trực tiếp trên này nên không thể biết có sai chính tả ở đâu không nha
Sub DinhDang()
Dim Vitri As Long, i as long, Dcuoi as long
Dcuoi= Range("C100000").end(xlup).row
Range("C2:C"& Dcuoi).FormulaR1C1 = "=VLOOKUP(RC[11],'MÃ C?A'!C2:C3,2,0)&"" ""&VLOOKUP(RC[14],'MÃ C?A'!C4:C5,2,0)&"" ""&'MÃ C?A'!RC[3]&CHAR(10)&VLOOKUP(RC[14],'MÃ C?A'!C4:C7,4,0)"
Range("C2:C"& Dcuoi).Value = Range("C2:C"& Dcuoi).Value
for i =2 to dcuoi
Vitri = InStr(1, Cells(i, 3), ":", vbTextCompare)
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Bold = True
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Italic = True
next
End Sub
bị lỗi ở dòng mình đổi màu. như vì sao lỗi thì mình chịu :(
 
Để phục vụ công việc mình cần 1 hàm có thể tô đậm và gạch chân 1 đoạn chữ trong cell kết quả ( như file đính kèm )
Không biết có hàm nào sẵn có trong exel có thể làm việc này hay 1 hàm tự tao để khi mình thay đổi giá trị thành phần thì kết quả cũng thay đổi theo.
Rất mong được mọi người giúp đỡ
Cột C sheet TH_GIA, sau khi nối chuổi xong thì thử chạy code sau:
Mã:
Sub Dinh_Dang()
    Dim Vung As Range
    Set Vung = Range("C4:C100")
    Vung.Value = Vung.Value
    Vung.Characters(Start:=1, Length:=22).Font.Bold = True
    Vung.Characters(Start:=1, Length:=22).Font.Underline = True
End Sub
 
Lần chỉnh sửa cuối:
Cột C sheet TH_GIA, sau khi nối chuổi xong thì thử chạy code sau:
Mã:
Sub Dinh_Dang()
    Dim Vung As Range
    Set Vung = Range("C4:C100")
    Vung.Value = Vung.Value
    Vung.Characters(Start:=1, Length:=22).Font.Bold = True
    Vung.Characters(Start:=1, Length:=22).Font.Underline = True
End Sub
Cám ơn bạn. Định danh độ dài chữ của mình dài ngắn khác nhau không là số cố định nhưng giai quyết đc vấn đề đó trong bài #2 bạn có thể viết code để tạo vòng lặp được không?
 
Nếu thấy khó quá thì bỏ qua đi. Bởi Excel không phải chuyên về trang trí, vẽ vời. Excel là dùng để tính toán, tổng hợp dữ liệu.
Bố trí dữ liệu báo cáo một cách cô động, chính xác mơi là thứ ta cần
 
Cám ơn bạn. Định danh độ dài chữ của mình dài ngắn khác nhau không là số cố định nhưng giai quyết đc vấn đề đó trong bài #2 bạn có thể viết code để tạo vòng lặp được không?
Bạn đưa đúng có 1 dòng dữ liệu, thì người ta chỉ làm đúng cái bạn cần, còn chuyện phát sinh và độ dài ngắn khác nhau thì bạn phải tự suy nghĩ lại và rút kinh nghiệm để lần sau có hỏi vấn đề gì đó thì cần đưa đủ các dạng để người giúp còn lường trước mọi vấn đề.
 
Cám ơn bạn. Định danh độ dài chữ của mình dài ngắn khác nhau không là số cố định nhưng giai quyết đc vấn đề đó trong bài #2 bạn có thể viết code để tạo vòng lặp được không?
Góp ý cho bạn:
1/ Vấn đề bạn nêu chung chung thì chỉ áp dụng code ở Bài 14, chứ không có giải pháp nào khác.
2/ Bạn muốn kết quả tốt nhất và có phát sinh bao nhiêu cụm từ (về độ dài ngắn khác nhau) thì nên có danh mục để còn có cái mà tra kết quả.
3/ File của bạn muốn làm cho chính xác thì áp dụng nhiều thứ như:
- Tìm chính xác tên cụm từ.
- Đếm cụm từ đó có bao nhiêu chữ cái.
- Áp dụng định dạng cho cụm từ.
 
Góp ý cho bạn:
1/ Vấn đề bạn nêu chung chung thì chỉ áp dụng code ở Bài 14, chứ không có giải pháp nào khác.
2/ Bạn muốn kết quả tốt nhất và có phát sinh bao nhiêu cụm từ (về độ dài ngắn khác nhau) thì nên có danh mục để còn có cái mà tra kết quả.
3/ File của bạn muốn làm cho chính xác thì áp dụng nhiều thứ như:
- Tìm chính xác tên cụm từ.
- Đếm cụm từ đó có bao nhiêu chữ cái.
- Áp dụng định dạng cho cụm từ.
Cám ơn bạn đã góp ý. Khả năng diễn dải vấn đề của mình còn nhiều hạn chế mình sẽ cố gắng hơn.
các vấn đề vướng mắc của mình, mình muốn mọi người trợ giúp cái gốc, phần còn lại sẽ cố gắng hoàn thiện nốt . code mình viết dựa vào các code hỏi được :
Sub Dinh_Dang()
Dim Vitri As Long, i As Long, Er As Long
Sheets("BG_XF").Range("C2:C4").Value = Sheets("TH_GIA").Range("C2:C4").Value
Er = Range("C100").End(xlUp).Row
For i = 2 To Er
Vitri = InStr(1, Cells(i, 3), ":", vbTextCompare)
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Bold = True
Cells(i, 3).Characters(Start:=1, Length:=Vitri).Font.Underline = True
Next i
End Sub
Mong bạn chỉ bảo nếu có vấn đề gì sai về ngôn ngữ lập trình ko?
Hỏi thêm:
- Lí do tại sao file của mình nặng có phải tại trong file có nhiều công thức Vlookup ko? hay tại lý do khác
- có cách nào gộp dữ liêu 2 cột exel (A và B) vào 1 cốt C mà dữ liệu ở cột C ở hàng lẻ là dữ liệu của cột A và hàng chẵn là dữ liệu của cột B ko? ( tức là đan xen dữ liệu , và dữ liệu ở cột A, B là bất kỳ không có định dạng chung nào cả )
Bài đã được tự động gộp:

Nếu thấy khó quá thì bỏ qua đi. Bởi Excel không phải chuyên về trang trí, vẽ vời. Excel là dùng để tính toán, tổng hợp dữ liệu.
Bố trí dữ liệu báo cáo một cách cô động, chính xác mơi là thứ ta cần

Thưa thầy ! "Nếu thấy khó quá thì bỏ qua đi" em đã không đăng bài nhờ mọi người giúp ạ. Với em khó vì chưa làm được chứ không phải để bỏ qua ạ.
"Excel không phải chuyên về trang trí, vẽ vời. Excel là dùng để tính toán, tổng hợp dữ liệu" theo ý kiến của riêng em thì câu này đúng như chưa đủ ạ. Với em Excel là 1 công cụ hỗ trợ để tính toán và tổng hợp dữ liệu ngoài ra excel cũng là 1 phương tiện để trao đổi thông tin giữa mọi người với nhau. Do đó phần trình bày cũng rất quan trọng
 

File đính kèm

Lần chỉnh sửa cuối:
Cám ơn bạn đã góp ý. Khả năng diễn dải vấn đề của mình còn nhiều hạn chế mình sẽ cố gắng hơn.
các vấn đề vướng mắc của mình, mình muốn mọi người trợ giúp cái gốc, phần còn lại sẽ cố gắng hoàn thiện nốt . code mình viết dựa vào các code hỏi được :
............................................................................
Do đó phần trình bày cũng rất quan trọng
Kiểm tra lại File:
Nguyên nhân File tăng dung lượng là do tô màu trắng và tô viềng cho cả cột.
 

File đính kèm

Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom