-
01-05-2013, 11:22 PM #1Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 4
Tự đánh thứ tự theo số mình nhập trước
Em có 1 cell chứa ký tự (ví dụ: 2c172z01) bây giờ mình muốn nhấn 1 phím bất kỳ (ví dụ ấn F2) sẽ hiện lên 1 ô cho mình nhập số nhảy (ví dụ như em muốn nhảy đến 2c172z89) thì sẽ tự động nhảy số từ 1-89 giống như mình gõ 1, 2 rồi dùng chuột kéo xuống vậy.
Nếu ít thì em dùng chuột kéo đơn giản thôi, nhưng đằng này nhảy nhiều quá mất công kéo lâu lắm ạView more random threads:
- Giúp mình gở pass trong VBA
- Tạo một danh sách thả xuống trong cell bất kỳ
- Xin hỏi cách tạo hàm tự động đếm trong excel
- Tổng hợp sheet của nhiều file excel
- CÁch tính tổng các số trong một số!
- EMBED("Forms.ComboBox.1","")
- MIDI Sound - Soạn nhạc trong Excel - Bài hát "Gọi đò"
- Chỉ giúp em với các anh chị ơi
- Tạo nút xóa cho sheet!
- Học VBA??
-
01-08-2013, 01:50 PM #2Junior Member
- Ngày tham gia
- Nov 2015
- Bài viết
- 0
Ðề: Bạn thử với macro này, có gì còn khiếm khuyết ta bổ sung sau
Mã nguồn PHP:[COLOR=#000000]
Option Explicit Sub gpeSTT[/COLOR][COLOR=#007700]() If [/COLOR][COLOR=#0000BB]Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]1 Then Dim Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range Dim jJ [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Integer[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SoCuoi [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SoDau [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]DD [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Byte Dim MyStr [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String Set Rng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Selection MyStr [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]DD [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Len[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]MyStr[/COLOR][COLOR=#007700]) If [/COLOR][COLOR=#0000BB]Not IsNumeric[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Right[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]MyStr[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700])) [/COLOR][COLOR=#0000BB]Then [/COLOR][COLOR=#007700]Exit [/COLOR][COLOR=#0000BB]Sub SoCuoi [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]InputBox[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Hay Nhap Só Cuo1i Ban Càn:"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"GPE.COM Xin Chào Ban!"[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"99"[/COLOR][COLOR=#007700]) For [/COLOR][COLOR=#0000BB]jJ [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]DD To 1 Step [/COLOR][COLOR=#007700]-[/COLOR][COLOR=#0000BB]1 [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Not IsNumeric[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Mid[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]MyStr[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700])) [/COLOR][COLOR=#0000BB]Then [/COLOR][COLOR=#007700]Exit For [/COLOR][COLOR=#0000BB]SoDau [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]10 [/COLOR][COLOR=#007700]^ ([/COLOR][COLOR=#0000BB]DD [/COLOR][COLOR=#007700]- [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700]) * [/COLOR][COLOR=#0000BB]CInt[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Mid[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]MyStr[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700])) + [/COLOR][COLOR=#0000BB]SoDau Next jJ Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Left[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]MyStr[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]jJ[/COLOR][COLOR=#007700]) & [/COLOR][COLOR=#0000BB]CStr[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]SoDau [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]AutoFill Destination[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]1 [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]SoCuoi [/COLOR][COLOR=#007700]- ([/COLOR][COLOR=#0000BB]SoDau Mod 10[/COLOR][COLOR=#007700])), [/COLOR][COLOR=#0000BB]Type[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlFillDefault Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Select End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End Sub [/COLOR]
Tại đầu cột nào đó còn trống ta nhập chuỗi chứa số ở cuối, như "GPE303"
Chép macro này vô module 1 & gán cho nó tổ hợp fím tắt, như {CTRL}+{SHIFT}+R
Kích hoạt ô vừa nhập & cho chạy macro (bằng tổ hợp fím trên)
Hiện hộp thoại iêu cầu ta cung cấp số cuối, bạn thử nhập con số 13 & xem kết quả macro;
Thực hiện với những ô khác tiếp theo để biết khả năng của macro.
/(/hững mong là khỏi đưa file lên!:k5392411:
-
01-08-2013, 03:24 PM #3Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Tự đánh thứ tự theo số mình nhập trước
Mình đã làm theo và kết quả rất tốt. Chỉ có điều là mình không biết gán phím tắt cho macro như thế nào. hiixx
Ah mình làm được rồi. Có điều là mình muốn đánh 51 ô đầu tiên, rồi chạy macro nhấn 61 là nó chạy từ 51 đến số 61, như của bạn thì nó nhảy 61 lần, (tức là số 111). Cảm ơn bạn lần nữa nhé
-
01-08-2013, 05:25 PM #4Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Tự đánh thứ tự theo số mình nhập trước
Code này cho phép bạn chọn ô để khởi đầu, <Enter> thì mặc định là ô đang chọn
Mã:' code đánh số liên tục kể từ một trị Sub DanhSo() Dim rg As Range Dim inpS, st As String Dim soD, soC, i As Integer Set rg = Selection.Cells(1, 1) ' chọn ô khởi đầu, mặc định là ô đang chọn inpS = InputBox("Dia chi o khoi dau (" & rg.Address & ")", "STARTING CELL", rg.Address) Set rg = Range(inpS).Cells(1) inpS = rg.Value ' tìm số khởi đầu soD = Len(inpS) Do While soD > 0 And IsNumeric(Mid(inpS, soD, 1)) soD = soD - 1 Loop st = Left(inpS, soD) soD = CInt(Mid(inpS, soD + 1)) ' nhập số cuối inpS = InputBox("So cuoi ", "FINAL NUMBER IN SERIES", soD) soC = CInt(inpS) ' ghi các ô liên tiếp For i = soD + 1 To soC rg.Offset(i - soD, 0).Value = st & i Next i Set rg = Nothing End Sub
-
01-08-2013, 05:33 PM #5Junior Member
- Ngày tham gia
- Aug 2015
- Bài viết
- 0
Ðề: Tự đánh thứ tự theo số mình nhập trước
Chuẩn men. Cảm ơn bạn
-
04-02-2013, 10:34 PM #6Junior Member
- Ngày tham gia
- Nov 2015
- Bài viết
- 0
Ðề: Tự đánh thứ tự theo số mình nhập trước
Gửi bởi VetMini
Trứng rung Private Massager hay còn được gọi với cái tên trứng rung cá heo là sản phẩm nức danh giờ. Công dụng chính là giúp massage “cô bé”, hỗ trợ tạo cảm giác hưng phấn, mới lạ cho chị em “tự...
Các cặp đôi hoàn toàn có thể sử dụng chày rung điều khiển từ xa ở nơi công cộng