xin các thầy giúp em code đánh số thứ tự và dinh dang bảng tính (1 người xem)

Liên hệ QC

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

gamegamegamegame

Thành viên hoạt động
Tham gia
5/6/15
Bài viết
144
Được thích
5
Em MUỐNG CODE TỰ ĐÁNH SỐ THỨ TỰ NHƯ VẦY :
1
1.1
1.2
1.3
1.4
1.5
2
2.1
2.2
2.3
2.4
2.5

dữ liệu đứng sau các độ 1 và 2 được cho in đậm vd : Nếu stt là số 1 thì a6:o6 cũng được in đậm theo
còn các số như 1.1 vvv thì ko in đậm
tên đứng sau stt 1 hoặc stt 2 thường có 10 ký tự trở lên
tên đứng sau stt có chấm phía sau vd như 1.1 thì 7 ký tự trở xuống

mong được sự góp ý
 

File đính kèm

Bạn chạy thử cái này:

PHP:
Option Explicit
Sub DanhSoTT()
 Dim Rng As Range, Cls As Range
 Dim Rws As Long, Col As Integer, J As Long, W As Integer
 
 Set Rng = [b5].CurrentRegion
 Rws = Rng.Rows.Count
 Col = Rng.Columns.Count
 Rng(1).Offset(1).Resize(Rws).Clear
 Rng.Font.Bold = False
 For Each Cls In Rng(2).Offset(1).Resize(Rws)
    If Len(Cls.Value) > 7 Then
        J = J + 1:              W = 0
        With Cls.Offset(, -1)
            .Value = J
            .Resize(, Col).Font.Bold = True
        End With
    ElseIf Len(Cls.Value) > 1 Then
        W = W + 1
        Cls.Offset(, -1).Value = CStr(J) & "." & CStr(W)
    Else
        Exit For
    End If
 Next Cls
End Sub
 
Upvote 0
PHP:
option explicit
sub danhsott()
 dim rng as range, cls as range
 dim rws as long, col as integer, j as long, w as integer
 
 set rng = [b5].currentregion
 rws = rng.rows.count
 col = rng.columns.count
 rng(1).offset(1).resize(rws).clear
 rng.font.bold = false
 for each cls in rng(2).offset(1).resize(rws)
    if len(cls.value) > 7 then
        j = j + 1:              W = 0
        with cls.offset(, -1)
            .value = j
            .resize(, col).font.bold = true
        end with
    elseif len(cls.value) > 1 then
        w = w + 1
        cls.offset(, -1).value = cstr(j) & "." & cstr(w)
    else
        exit for
    end if
 next cls
end sub

phân số không có dấu chấm phía sau thì đc nhưng sao stt nhảy không đúng --=0
 
Upvote 0
phân số không có dấu chấm phía sau thì đc nhưng sao stt nhảy không đúng

Bạn iêu cầu độ dài [Ten] để đánh số thứ tự là 10 trở lên; Vậy trong file trường [Ten] này có độ dài =8 hay 9 thì fải làm sao ơới chúng?

Vì bạn chưa nói fải làm sao với chúng nên fải gộp thành loại để đánh số thứ tự thôi!

tên đứng sau stt 1 hoặc stt 2 thường có 10 ký tự trở lên
tên đứng sau stt có chấm phía sau vd như 1.1 thì 7 ký tự trở xuống

8 & 9 thì sao?
 
Upvote 0
Bạn iêu cầu độ dài [Ten] để đánh số thứ tự là 10 trở lên; Vậy trong file trường [Ten] này có độ dài =8 hay 9 thì fải làm sao ơới chúng?

Vì bạn chưa nói fải làm sao với chúng nên fải gộp thành loại để đánh số thứ tự thôi!





8 & 9 thì sao?
chăt là đánh từ 10 trở xuống có vẻ hợp lý hơn
nếu được mình sẽ canh chỉnh ký tự cho phù hợp với code
 
Upvote 0
Nếu cột tên =10 HOẶC LƠN HƠN 10 thì đánh stt 1 2 3 4 vvvv
nếu cột tên = 9 KÝ TỰ HOĂC NHỎ HƠN 9 KÝ TỰ thì thêm dấu chấm phía sau như :1.1 1.2 1.3 vvv
em nghĩ như vậy sẽ hợp lý hơn
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom