Hỏi: Cách tạo Macro trong excel?

Liên hệ QC

kamelot

Thành viên mới
Tham gia
29/1/08
Bài viết
1
Được thích
0
Chào các bạn mình có một số thắc mắc về Macro trong excel. Các bạn giúp mình nhé:

- Làm sao tạo được một macro trong excel.

- Sub và Function khác nhau như thế nào, mình có một số ví dụ về Coding nhưng đôi lúc thấy họ bắt đầu bằng sub, đôi lúc lại function.

Hoặc ai có tài liệu hướng dẫn thì cho mình xin nhé
Xin cám ơn trước **~**
 
Tạo Macro thì dễ thôi. Bạn vào Tools -> Macro -> Record New Macro -> Nhập tên -> OK.
Việc tiếp theo là bạn thao tác cái gì đó trên bảng tính đi. Khi đã làm xong thì nhấn Stop trên Menu Stop Recording. Vậy là quá trình tạo Macro đã xong.
Muốn xem code mình tạo thì nhấn Alt + F11 thì sẽ thấy thôi.
Còn tạo Function thì cũng gần giống như vậy. Nhưng không tạo được bằng lệnh New Macro đâu. Bạn vào VBA (nhấn Alt + F11) và viết 1 cái Function bên đó thôi.
Thân.
 
Upvote 0
Chào các bạn mình có một số thắc mắc về Macro trong excel. Các bạn giúp mình nhé:

- Làm sao tạo được một macro trong excel.

- Sub và Function khác nhau như thế nào, mình có một số ví dụ về Coding nhưng đôi lúc thấy họ bắt đầu bằng sub, đôi lúc lại function.

Hoặc ai có tài liệu hướng dẫn thì cho mình xin nhé
Xin cám ơn trước **~**

Bạn vào đây xem thêm nhé!
http://www.giaiphapexcel.com/forum/showthread.php?t=888
 
Upvote 0
Macro chứa virus!

Mình viết code của hai hàm tính nội suy 1 chiều và 2 chiều trên excel theo những file mình down trên diễn đàn về. Những code này đúng và qua thử thì thấy kết quả là ok.
Nhưng mà mình không hiểu tại sao khi vùng tra đặt tại một số ô trong work sheet thì không thực hiện được hai phép tính nội suy này. Khi mình copy vùng tra ra ô khác thì lại thực hiện được 2 phép tính và kết quả là đúng!
Mình nghĩ hay là do virus bởi vì khi mình bật file excel của mình nên thì có thấy dòng chữ sau:
macros may contain viruses. It is usually safe to disable macros, but if the macros are legitimate, you might lose some functionality!
Vậy là macros bị virus nên nó bị như vậy.
Bạn nào biết cách khắc phục trong trường hợp này làm ơn chỉ mình với.
Thanks and best regards!
 
Upvote 0
À, nếu bạn chắc chắn file của mình ko chứa virus thì cứ mở, câu đấy xuất hiện vì bạn chọn mức Security (trong Tool/Macro/Security) là "medium" đấy mà, nếu bạn chuyển sang "Low" nà nó sẽ ko xuất hiện nữa...
 
Upvote 0
Chào các bạn.
Mình lập một bảng báo giá tạo phông bằng file excel, sau này, khi cần báo giá cho nhìwu khách hàng, mình phải coppy sang 1 sheet khác, như vậy nếu trong 1 tháng thì file excel sẽ có rất rất nhiều sheet. Mình muốn làm thế nào để chỉ trong 1 sheet và chỉ cần 1 click là có thể mở 1 bảng báo giá mới mà các thông số báo giá trước vẫn được lưu lại để sau này còn cần đến không? Có phải liên quan đến macro hay VBA gì gì đó không? Mong các bạn hướng dẫn cụ thể, mình mới học excel nên chưa biết gì nhiều lắm :D

Thank 4 all
 
Upvote 0
Ý kiến của mình về vấn đề bạn hỏi:

Mình nghĩ không cần VBA gì cả: Bạn nghiên cứu đi
Sheet 1 là sheet cặp nhật giá, sheet 2 bạn chỉ cần nhập ngày tháng thời điểm bạn muốn có bảng giá lập tức bảng giá ứng với thời gian ban cần hiển thị ngay.
Sheet 1: Chia cột :STT, mã, Tên hàng,ĐV, giá
Chia hàng:hàng thứ nhất là Ngày tháng năm,
(mỗi cột giá ứng với 1 ngày bạn nhập đầy đủ)các hàng sau là STT,
sau đó là nhập các hàng bao gồm nhập đủ cột
Sheet 2:Lập bảng tương tự, nhưng các ô được thiết lập từ các công thức như =hlookup(ô chứa ngày in giá, vùng bảng sheét, cột thứ,0), chú ý phải lập nhiều công thức để náy đọc ra ngày đó thuộc cột thứ mấy trong bảng, dùng hàm trim để xóa bỏ số 0....Giá mình gần bạn mình sẽ chỉ cho.
 
Upvote 0
Mình nghĩ không cần VBA gì cả: Bạn nghiên cứu đi
Sheet 1 là sheet cặp nhật giá, sheet 2 bạn chỉ cần nhập ngày tháng thời điểm bạn muốn có bảng giá lập tức bảng giá ứng với thời gian ban cần hiển thị ngay.
Sheet 1: Chia cột :STT, mã, Tên hàng,ĐV, giá
Chia hàng:hàng thứ nhất là Ngày tháng năm,
(mỗi cột giá ứng với 1 ngày bạn nhập đầy đủ)các hàng sau là STT,
sau đó là nhập các hàng bao gồm nhập đủ cột
Sheet 2:Lập bảng tương tự, nhưng các ô được thiết lập từ các công thức như =hlookup(ô chứa ngày in giá, vùng bảng sheét, cột thứ,0), chú ý phải lập nhiều công thức để náy đọc ra ngày đó thuộc cột thứ mấy trong bảng, dùng hàm trim để xóa bỏ số 0....Giá mình gần bạn mình sẽ chỉ cho.

Dạng này cũng y chang như mình lập Sơ yếu lý lịch đó ThienSonET. Sheet 1 chứa CSDL bao gồm các record tham chiếu theo chiều ngang hoặc dọc (để use HLOOKUP hoặc VLOOKUP). Sheet 2 chứa các thông tin và nhập 1 trong 2 hàm trên.
 
Upvote 0
cho mình hỏi thêm về excel 2007

Tạo Macro thì dễ thôi. Bạn vào Tools -> Macro -> Record New Macro -> Nhập tên -> OK.
Việc tiếp theo là bạn thao tác cái gì đó trên bảng tính đi. Khi đã làm xong thì nhấn Stop trên Menu Stop Recording. Vậy là quá trình tạo Macro đã xong.
Muốn xem code mình tạo thì nhấn Alt + F11 thì sẽ thấy thôi.
Còn tạo Function thì cũng gần giống như vậy. Nhưng không tạo được bằng lệnh New Macro đâu. Bạn vào VBA (nhấn Alt + F11) và viết 1 cái Function bên đó thôi.
Thân.
trong excel 2007 thì tạo macro như thế nào hả bạn . minh đang gặp kho khăn trong vấn đề nay
 
Upvote 0
Mình cũng sưu tầm cách này cũng hơn nhưng rất đơn giản, thông thường bà con rất hay sử dụng. Xin gửi cho cả nhà cùng xem...@$@!^%

Để thực hiện tự động hóa một số thao tác thường làm ta sử dụng công cụ Tập lệnh ( macro ) trong Excel.
Macro là các lệnh và hàm được lưu trữ trong Visual basic Module (nơi có thể viết các hàm, thủ tục bằng ngôn ngữ visual basic) của Excel.
CÁCH TẠO MACRO:
Có thể tạo macro đơn giản bằng cách ghi lại những thao tác ( Record ) sau đó cho chạy macro nó sẽ thực hiện lại các thao tác đã ghi.
Ngoài ra ta có thể tạo macro bằng cách tạo trực tiếp các lệnh bằng ngôn ngữ visual basic.
Tạo macro bằng phương pháp ghi (record)
Vào menu Tools – Macro – Record new macro…

Chi tiết xem file hướng dẫn kèm theo
 

File đính kèm

  • tao macro.doc
    93 KB · Đọc: 5,609
Upvote 0
Chào cả nhà, Demi không biết như thế này thì gọi là gì nên mạn phép up câu hỏi vào đây. Demi muốn tạo như trong hình file đính kèm , nhờ cả nhà giúp Demi với ạ. Vì Demi làm kế toán nên muốn cho nhiều sổ cái vào một sheet thôi và chỉ cần tích và chọn vào mã Tài khoản là sổ của tài khoản đó hiện ra ngay.
Cám ơn cả nhà rất nhiều ạ^^
 

File đính kèm

  • Tao nut.rar
    109.2 KB · Đọc: 870
Upvote 0
tôi muốn tạo mật khẩu bằng VBA nhưng không có tài liệu nào hướng dẫn,Xin chỉ dùm
 
Upvote 0
tao macro trong excel

Mình là thành viên mới. Xin chào các bạn.
Mình có một bài tập nhờ các bàn giúp mình với nhé.
Trong sheet ct xk minh đã nhập tất cả chi tiết hàng xuất trong container . Sheet invoice mình muốn tạo macro để chỉ khi mình nhập số invoice tương ứng ( như file ct xk ) thì chi tiết sẽ hiện thị trong file excel này.
Các bạn giúp mình nhé, cảm ơn nhiều.
 

File đính kèm

  • Book1.xlsx
    12.8 KB · Đọc: 233
Upvote 0
Em đang làm cái bảng tính mà trong đó có nhiều bảng tra. (bảng tra rất nhiều) :)
Chẳng lẻ mỗi lần đến một số cần tra nào đó thì lại mở sách hay file ra tra sao? như thế rất mất thời gian.
Em có đọc trên diễn đàn là có thể áp dụng VBA để tra tự động- 1 hoặc 2 chiều đều được.
Loay hoay mãi mà chưa viết được code cho số cần tra đó: vì có học qua VB nhưng mà bỏ lâu quá nên quên tuốt tùn tụt rồi ! :(.
vậy nay em viết bài này kính mong các sư huynh, đại tỷ có thể gởi cho em đoạn code để em có thể tra dễ dàng không?
Em cảm ơn trước nhá ! nếu được em có thể mời mấy sư huynh và dại tỷ đi "en" hay là gì cũng được há !! - có giới hạn nhá-
Tại sếp tất cả mà !
 
Upvote 0
Em đang làm cái bảng tính mà trong đó có nhiều bảng tra. (bảng tra rất nhiều) :)
Chẳng lẻ mỗi lần đến một số cần tra nào đó thì lại mở sách hay file ra tra sao? như thế rất mất thời gian.
Em có đọc trên diễn đàn là có thể áp dụng VBA để tra tự động- 1 hoặc 2 chiều đều được.
Loay hoay mãi mà chưa viết được code cho số cần tra đó: vì có học qua VB nhưng mà bỏ lâu quá nên quên tuốt tùn tụt rồi ! :(.
vậy nay em viết bài này kính mong các sư huynh, đại tỷ có thể gởi cho em đoạn code để em có thể tra dễ dàng không?
Em cảm ơn trước nhá ! nếu được em có thể mời mấy sư huynh và dại tỷ đi "en" hay là gì cũng được há !! - có giới hạn nhá-
Tại sếp tất cả mà !
Đoạn code đó đây:
Mã:
[COLOR=#ff0000][I][B]Public Sub ChaChaCha()[/B][/I][/COLOR]
      [COLOR=#ff0000][I][B]If [/B][/I][/COLOR]Tiểu đệ hay Tiểu muội gì đó  gởi file lên [COLOR=#ff0000][I][B]then[/B][/I][/COLOR]
        [COLOR=#ff0000][I][B]If [/B][/I][/COLOR]Tiểu đệ hay Tiểu muội gì đó  trình bày thật rõ mình muốm làm gì [COLOR=#ff0000][I][B]then[/B][/I][/COLOR]
              Có thể có câu trả lời
[COLOR=#ff0000][I][B]          Else[/B][/I][/COLOR]
               Cóc có câu trả lời đâu, đừng có mà chờ
[COLOR=#ff0000][I][B]         End If
    End If
End Sub[/B][/I][/COLOR]
Híc -0-0-0-
 
Upvote 0
lần thứ 2 post bài mà bị su huynh hay sư tỷ concogia gội gáo nước nóng vô mặt 'mát quá', nhưng mà không sao, có thế mới tỉnh ngủ được mà gởi cái file cần sữa lên đây cho "cò già" hay " cô gia" gì đó giúp đỡ vậy !!
em gởi cái file lên cho anh chị em xem giúp với nhá !
ngàn lần xin cảm tạ !!
-yêu cầu:
+ có hệ số anpha 1, nội suy bởi 2 hệ số A và B. ---> nhờ anh chị viết dùm cái VBA cho nó,
hay là cách nào đó mà chỉ cần có 2 số A, B thì ngay lập tức nội suy được an pha 1.
+ Bảng tra được ghi chú riêng một sheet.

http://www.mediafire.com/view/?jb45a95h7gs04ry
 
Lần chỉnh sửa cuối:
Upvote 0
sao không thấy huynh nào giúp đỡ vậy ta !! buồn quá đi...hic hic !
 
Upvote 0
Thà chịu khó đổi bảng tra của bạn còn dễ hơn viết lại hàm

sao không thấy huynh nào giúp đỡ vậy ta !! buồn quá đi...hic hic !

Bạn xem trong file
}}}}} }}}}} }}}}} }}}}} @$@!^% @$@!^% @$@!^%
 

File đính kèm

  • gpeKyThuat.rar
    15.6 KB · Đọc: 382
Lần chỉnh sửa cuối:
Upvote 0
đa tạ sư huynh SA_DQ.
em đang nghiên cứu thêm để ứng dụng vào coogn việc, cảm ơn anh nhiều nha !
có gì không hiểu em xin phiền anh again vậy !
phả chi anh ở gần em xin dẫn đi hậu tạ ! hé hé !
P/S: anh ơi cho em hỏi cái: các số trong bảng tra phải bắt buộc phải thay đổi ngược lại như thế sao anh?- để cho tuyến tính thấp đến cao hay sao anh ơi !
 
Lần chỉnh sửa cuối:
Upvote 0
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom