Tăng dần 1 ký tự ở giữa (3 người xem)

Liên hệ QC

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

- Với công thức của anh và của các bạn thì tất cả phụ thuộc vào A1 rồi từ giá trị A1 kéo xuống để tạo số thứ tự, hay nói cách khác thì giá trị bắt đầu phải đánh là ở A1 sau đó thêm 1 lần gõ công thức ở A2 và Fill xuống (phải gõ ít nhất 2 lần ô A1 và A2)

- Với công thức của em thì chỉ cần gõ 1 lần duy nhất tại A1 và giá trị bắt đầu chuỗi số thứ tự chính là Row(1:1) đó. (chỉ cần thay đổi cái màu đỏ)
 
View attachment 94656

có cách nào cho số kia tăng dần mà không phải nhập thủ công ????
các bạn giúp mình với

Bạn nhập công thức này thử xem. Nếu dòng đầu tiên là dòng 7 thì cái số tô màu đỏ không cần sửa. Nếu dòng đầu tiên là dòng số 10 thì thay số màu đỏ là 9. Số màu xanh là có thể thay bằng 1 số khác chẳng hạn như 5 nếu muốn có dãy số 5 chữ số.

=RIGHT("0000000000000000"&ROW()-6,4)&"/4"
 
- Với công thức của anh và của các bạn thì tất cả phụ thuộc vào A1 rồi từ giá trị A1 kéo xuống để tạo số thứ tự, hay nói cách khác thì giá trị bắt đầu phải đánh là ở A1 sau đó thêm 1 lần gõ công thức ở A2 và Fill xuống (phải gõ ít nhất 2 lần ô A1 và A2)

- Với công thức của em thì chỉ cần gõ 1 lần duy nhất tại A1 và giá trị bắt đầu chuỗi số thứ tự chính là Row(1:1) đó. (chỉ cần thay đổi cái màu đỏ)

OK, đồng ý, nhưng có lẽ mở rộng hơn cho đề tài này có lẽ là ta viết hàm tổng quát cho một vùng hay một cột chẳng hạn, nếu các ô không có giá trị thì sẽ nhận số Max cuối cùng của vùng đó để cộng thêm 1. Các bạn nghĩ sao?
 
OK, đồng ý, nhưng có lẽ mở rộng hơn cho đề tài này có lẽ là ta viết hàm tổng quát cho một vùng hay một cột chẳng hạn, nếu các ô không có giá trị thì sẽ nhận số Max cuối cùng của vùng đó để cộng thêm 1. Các bạn nghĩ sao?
Chủ Topic này mà đọc hết các bài này là lãi to rồi &&&%$R
Ok với anh Nghĩa, nhưng em chưa hiểu cái đoạn màu đỏ
1 - Các ô không có giá trị là như thế nào?
2 - Giá trị tính Max nằm trong chuỗi hay như thế nào?
3 - Vùng ở đây được hiểu ra sao? Và tham chiếu cột tính Stt sẽ áp cho vùng như thế nào?
Anh có thể đưa ra File cụ thể để cùng thảo luận, cùng phản biện.
 
Chủ Topic này mà đọc hết các bài này là lãi to rồi &&&%$R
Ok với anh Nghĩa, nhưng em chưa hiểu cái đoạn màu đỏ
1 - Các ô không có giá trị là như thế nào?
2 - Giá trị tính Max nằm trong chuỗi hay như thế nào?
3 - Vùng ở đây được hiểu ra sao? Và tham chiếu cột tính Stt sẽ áp cho vùng như thế nào?
Anh có thể đưa ra File cụ thể để cùng thảo luận, cùng phản biện.

Dĩ nhiên trong chuỗi dạng 0000/4 và mình làm một công thức dựa vào số đầu tiên tác giả đưa ra và trong hàm mình bao hàm vùng tiếp nối, nếu mình fill toàn bộ công thức thì không nói, nhưng với tất cả các công thức fill xuống, giữa chừng mình xóa bớt công thức của vài ô thì công thức phía dưới sẽ nhận giá trị toàn bộ vùng fill mà tính tiếp.

-----------------------------------------------
Thôi mình về nhà đây, có gì mai tính tiếp nha.
 
Lần chỉnh sửa cuối:
Dĩ nhiên trong chuỗi dạng 0000/4 và mình làm một công thức dựa vào số đầu tiên tác giả đưa ra và trong hàm mình bao hàm vùng tiếp nối, nếu mình fill toàn bộ công thức thì không nói, nhưng với tất cả các công thức fill xuống, giữa chừng mình xóa bớt công thức của vài ô thì công thức phía dưới sẽ nhận giá trị toàn bộ vùng fill mà tính tiếp.
Vậy mai anh có thể làm rõ cho e một số vấn đề rồi ta tìm cách giải quyết.
1 - (giữa chừng mình xóa bớt công thức của vài ô thì công thức phía dưới sẽ nhận giá trị toàn bộ vùng fill mà tính tiếp.) : thì điểm bắt đầu là Max của vùng trên đoạn bị xóa?

Em tạm đưa công thức cho ô A2 (A1 vẫn có dữ liệu gốc)
Khi xóa 1 vùng thì nó sẽ lấy Max tiếp theo của vùng đó (số thứ tự liên tục)
=TEXT(COUNTA($A$1:A1)+1,"0000")&"/4"
 
Lần chỉnh sửa cuối:
Vậy mai anh có thể làm rõ cho e một số vấn đề rồi ta tìm cách giải quyết.
1 - (giữa chừng mình xóa bớt công thức của vài ô thì công thức phía dưới sẽ nhận giá trị toàn bộ vùng fill mà tính tiếp.) : thì điểm bắt đầu là Max của vùng trên đoạn bị xóa?

Em tạm đưa công thức cho ô A2 (A1 vẫn có dữ liệu gốc)
Khi xóa 1 vùng thì nó sẽ lấy Max tiếp theo của vùng đó (số thứ tự liên tục)

Ý mình nói là viết một hàm tổng quát bằng VBA đó. Thử với hàm này nha:

[GPECODE=vb]Function MaxAddText(ByVal NumFormat As String, _
ByVal IDText As String, _
ParamArray MainArray()) As String

Dim Arr As Variant, Itm As Variant, SubArray As Variant, tmp As Variant, _
KeyText As String, LenKeyText As Long, TmpMax As Long

KeyText = UCase(IDText): LenKeyText = Len(KeyText): TmpMax = 0

For Each Arr In MainArray
SubArray = Arr
If Not IsArray(SubArray) Then SubArray = Array(SubArray)
For Each Itm In SubArray
If Right(UCase(Itm), LenKeyText) = KeyText Then
tmp = Val(Left(Itm, Len(Itm) - LenKeyText))
If TmpMax < tmp Then TmpMax = tmp
End If
Next
Next
MaxAddText = Format(TmpMax + 1, NumFormat) & KeyText
End Function
[/GPECODE]

Cấu trúc hàm như sau:

=MaxAddText(Phần định dạng, Kiểu chuỗi đuôi, Một hoặc Nhiều vùng tham chiếu)

Cụ thể trong bài đó mình có công thức:

=MaxAddText("0000","/4",$A$1:A1)

Nếu vùng tham chiếu không thuộc dãy số đó thì nó cho ra giá trị đầu tiên 0001/4
 

File đính kèm

Với bài này, một cách đơn giản nhất là dùng định dạng.

Vào FormatCells, chọn Number, chọn Custom, gõ vào Type: 0000"/4" rồi OK

Fill series xuống dưới, thế là muốn dùng công thức nào cũng được ở mọi vùng, xong sau đó chỉ copy định dạng tại đó là đã có số mới rồi!

Chủ Topic này mà đọc hết các bài này là lãi to rồi &&&%$R

Chủ Topic là người được thừa hưởng thôi. Còn chúng ta mới thật sự là "lãi to" vì mình đang có kiến thức và được học của mọi người khác lại càng được tích lũy hơn; mặt khác, mình khám phá, tìm tòi cách mới, cách hay hơn, mình không hài lòng với chính mình và tìm ra nhiều phương pháp mới lạ, thì chính mình mới có lãi phải không nè.

Học trong câu hỏi của người khác là như vậy.
 

File đính kèm

Với VBA thì em còn yếu nên chưa "múa rìu qua mắt thợ" được. hi @$@!^%. Nếu có viết thì chỉ viết để áp dụng cho 1 trường hợp cụ thể và miễn dùng được thôi. Chắc phải mất nhiều nhiều thời gian để mầy mò và học hỏi.


Với bài này, một cách đơn giản nhất là dùng định dạng.

Vào FormatCells, chọn Number, chọn Custom, gõ vào Type: 0000"/4" rồi OK

Fill series xuống dưới, thế là muốn dùng công thức nào cũng được ở mọi vùng, xong sau đó chỉ copy định dạng tại đó là đã có số mới rồi!
Cách này theo ý kiến cá nhân e thấy không nên dùng vì nếu các bạn không quen định dạng Cell khi tiến hành sử dụng các công thức khác ví dụ như Vlookup...sẽ chưa chắc đã hiểu tại sao họ sai, mặt khác nếu PasteValue sẽ cho ra các giá trị chứ không phải fomat Cell, lúc ấy thì rối không biết cách gỡ như thế nào ấy chứ
 
Em vừa đi làm về, mở topic lên, thấy có rất nhiều ý kiến.
Tuy chưa xem hết, nhưng em rất cảm ơn mọi người đã chỉ cách cho em.
XIN CẢM ƠN!!!!
 
Web KT

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

Back
Top Bottom