Cách sử dụng Macro như autocorrect

Liên hệ QC

adboy

Thành viên mới
Tham gia
29/11/06
Bài viết
27
Được thích
1
[FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]Chào các anh chị:

Toi hiện đang sử dụng Excel hàng ngày để nhập dữ liệu (lập đi lập lại) với tên khách hàng khoảng 300 công ty, vậy tôi có thể dùng macro để nó nhận biết danh sách do tôi lập sẵn o sheet khac rồi tự điền thông tin vào ô đang nhập dữ liệu như chức năng autocorrect cua Excel không (tôi không muốn dùng autocorrect vi số lượng công ty khá nhiều và nếu phải qua máy khác, tôi phải tạo lại autocorrect mới ).

Ví dụ: tôi gõ chữ "MC" vào ô A1, macro sẽ tự động nhập vào chữ "Microsoft Office" vào ô A1 cho tôi.

Mong anh chị giúp tôi nhé (tôi không rành lắm về macro)


[/FONT]
 
Bạn sửa đổi CSDL & trích 1 fần đưa lên DĐàn; Sẽ có người zúp!:=\+
 
Upvote 0
Đâu cứ phải dùng macro?

adboy đã viết:
[FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]Chào các anh chị:

Toi hiện đang sử dụng Excel hàng ngày để nhập dữ liệu (lập đi lập lại) với tên khách hàng khoảng 300 công ty, vậy tôi có thể dùng macro để nó nhận biết danh sách do tôi lập sẵn o sheet khac rồi tự điền thông tin vào ô đang nhập dữ liệu như chức năng autocorrect cua Excel không (tôi không muốn dùng autocorrect vi số lượng công ty khá nhiều và nếu phải qua máy khác, tôi phải tạo lại autocorrect mới ).
Ví dụ: tôi gõ chữ "MC" vào ô A1, macro sẽ tự động nhập vào chữ "Microsoft Office" vào ô A1 cho tôi.
Mong anh chị giúp tôi nhé (tôi không rành lắm về macro)

Bạn không cần phải dùng tới macro, dùng ngay các hàm sẵn có của Excel . Bạn đặt cho mỗi khách hàng một cái mã VD Mã KH la "MC" thì tên khách hàng là "Microsoft Office"....trong Sheet Khách hàng(cột A là mã khách hàng, cột B là tên khách hàng . Dặt tên cho vùng KHACHHANG ở Sheet nay là từi ô A1 đến B300 tuỳ theo số lượng KH bạn quản lý). Ở Sheet nhập dữ liệu, ô A1 bạn gõ "MC", ô B1 bạn gõ =VLOOKUP(A1,KHACHHANG,2,0). Copy công thức này xuống các ô bên dưới cột B.Từ giờ trở đi, bnếu bên cột A cũa Sheet nhập dữ liệu bạn gõ một mã KH trùng với mã KH bạn đã đăng ký trong Sheet Khách hàng thì ở cột B tự động điền tên KH cho bạn
Còn nếu dùng đến macro thì bạn phải dùng một combo để chọn Nếu bạn đồng ý cách này tôi sẽ giúp bạn sau
Thân
 
Upvote 0
Cảm ơn bạn SA-DQ và bạn AnhPhuong nhe !!

Hôm nay di làm về, tính mang file de post len nho cac anh chi giúp, mà lại quên mất (đãng trí thật), mà tới thứ 3 mình mới làm lại lận, nhưng mình vẫn muốn sử dụng Macro để làm công việc đó thì làm cách nào (vì mình cũng biết sử dụng Vlookup và Combobox). 2 bạn và anh chị gợi ý cho mình cũng được, mình sẽ thử tự mày mò làm xem có được không , coi như tự nghiên cứu ấy mà.....

Cám ơn các anh chị trứơc nhe ! (^_^)
 
Upvote 0
Bạn xem xét trường hợp dùng Combo tự động nhập mã #h hàng

/(hi chọn 1 trong DS #h hàng trong Combo; Macro sẽ tự động gán mã #h hàng (duy nhất) vô cột mã #h hàng:

Mã:
Option Explicit[b]
Sub IDCust()[/b]
 Dim TTu, StrC As String:                   Dim iJ As Long
 Application.ScreenUpdating = False
 Range("B1").Select:                        TTu = 1 + Selection.Value
 Sheets("DM").Select:                       TTu = Range("A" & TTu).Value
 Sheets("S2").Select
 Range("C" & 1 + Range("C35555").End(xlUp).Row).Value = TTu[b]
 
End Sub[/b]
 

File đính kèm

  • MaHang.rar
    11.1 KB · Đọc: 112
Upvote 0
Cam on ban sa_dq nhe !!

Rat cam on su nhiet tinh cua ban, nhung minh goi cho ban file dinh kem de ban hieu ro hon ve mong muon cua minh...ban giup minh nhe!!View attachment adboy.xls
 
Upvote 0
Bạn chọn Mã từ Combo, chuyện còn lại Macro sẽ làm!

Bạn chỉ cần sửa lại một số chổ như sau, bạn sẽ toại nguyện:
B1:Fải chuột vô Combo duy nhất; trong ngăn Input range bạn nhập:
DM!$A$2:$A$99
Trong ngăn Cell link bạn nhập : $H$1 (thay vì $B$1 có cũ)
B2: Bạn Copy đoạn Code sau đây & chép đè lên đoạn code cũ
Mã:
[b]
Sub IDCust()[/b]
 Dim MaKH, TenKH, Rng As Range:                     Dim iJ As Long
 
 Application.ScreenUpdating = False
 Range("H1").Select:                        MaKH = 1 + Selection.Value
 Sheets("DM").Select:
 Set Rng = Range("A" & MaKH):               MaKH = Rng.Value
 TenKH = Rng.Offset(0, 1).Value
 Set Rng = Nothing:                         Sheets("S2").Select
 Range("C" & 1 + Range("C35555").End(xlUp).Row).Value = MaKH
 Range("C" & 1 + Range("C35555").End(xlUp).Row).Offset(-1, 1).Value = TenKH
[b]End Sub[/b]

:=\+ -=09= --=0
 
Upvote 0
Web KT
Back
Top Bottom