Bài giảng Hướng dẫn cập nhật dữ liệu tự động trong các sheet

12 16.2K 21
Bài giảng Hướng dẫn cập nhật dữ liệu tự động trong các sheet

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Tự động cập nhật dữ liệu trong EXCEL Trong Excel có một hàm mà chúng ta có thể dùng nó để tự động hóa quá trình cập nhật dữ liệu! đó là hàm OFFSET Hàm Offset cho kết quả là nội dung của một ô. cú pháp của hàm này như sau: OFFSET(tọa độ một ô bất kỳ, số dòng, số cột) Lưu ý: Số dòng và số cột chứ không phải tọa độ dòng hay tọa độ cột, hay đó là khoảng cách từ ô A1 đến ô cần lấy dữ liệu. (Ta nên chọn ô bất kỳ đó là ô A1) Ví dụ ở ô C5 có nội dung là 1/1/2004, và ta cần lấy nội dung 1/1/2004 đó. công thức là offset($A$1,4,2) sẽ cho kết quả là 1/1/2004 Do đó dùng hàm này để tự động cập nhật dữ liệu của các chứng từ khi lập các sổ Nhật ký chung, nhật ký đặc biệt, sổ cái . từ sheet chứng từ. :f_o :bia View Full Version : Tự động cập nhật dữ liệu giữa các sheet Lenbao 21-03-09, 05:28 PM Các bán giúp mình bài này nhé. Mình có danh sách lớp A, danh sách lớp B và danh sách học sinh trong trường. Mình sẽ phải sử dụng công thức nào để khi cập nhật học sinh vào danh sách các lớp thì tự động danh sách học sinh trong trường sẽ được cập nhật. Cám ơn các bạn ChanhTQ@ 21-03-09, 05:52 PM Các dùng: Phải chuột vô lần lượt các sheets 'lop A' & 'lop B' chọn dòng cuối cửa sổ vừa hiện ra & chép mảco dưới vô chúng Sau đó hễ bạn nhập vô 'Lop A' hay 'Lop B' sẽ có những từ đó bên sheet thứ ba; Mà bạn cần sửa lại tên các trang tính: (+) Không có khoảng trắng (+) Tên gì mà dài lê thê, đến nổi mình phải thay bằng tên cúng cơm của nó luôn làm vậy?! Thay vì dài ngoãng như vậy, ta chỉ nên là 'DSHS' )(&&@@ !$@!! Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns("B:B")) Is Nothing Then _ Sheet3.[b65500].End(xlUp).Offset(1) = Target.Value End Sub Lenbao 21-03-09, 06:37 PM :( rất tiếc vì kiến thức tin học của mình có hạn nên bạn có thể chỉ cho mình kỹ hơn về vụ đưa macro này vào excel bằng cách nào được không và nếu có hàm nào đơn giản hơn thì càng tốt. Cám ơn bạn trước ndu96081631 21-03-09, 08:09 PM :( rất tiếc vì kiến thức tin học của mình có hạn nên bạn có thể chỉ cho mình kỹ hơn về vụ đưa macro này vào excel bằng cách nào được không và nếu có hàm nào đơn giản hơn thì càng tốt. Cám ơn bạn trước Nếu tôi là người nhập liệu thì tôi làm khác: - Tôi nhập toàn bộ hs trường vào 1 sheet với các trường: STT, Họ và Tên, Mã HS, Ngày sinh, vân vân . là tất cả thông tin cần thiết để truy tìm 1 hs nào đó khi cần thiết - Ở sheet thứ 2, nếu muốn biết ds của 1 lớp nào đó thì đơn giản ta dùng AutoFilter hoặc Advanced Filter mà lọc * Thêm nữa: - Bạn có từng nghĩ đến việc 1 hs nào đó từ lớp này sẽ chuyển sang học lớp khác không? - Hay đơn giản, bạn có từng nghĩ lớp 10A của niên khóa này khác với lớp 10A của niên khóa trước không? ---> Lúc đó bạn quản lý dử liệu thế nào đây nếu như nhập liệu mỗi lớp là 1 sheet? Thay 23-03-09, 11:36 PM Các dùng: Phải chuột vô lần lượt các sheets 'lop A' & 'lop B' chọn dòng cuối cửa sổ vừa hiện ra & chép mảco dưới vô chúng Sau đó hễ bạn nhập vô 'Lop A' hay 'Lop B' sẽ có những từ đó bên sheet thứ ba; Mà bạn cần sửa lại tên các trang tính: (+) Không có khoảng trắng (+) Tên gì mà dài lê thê, đến nổi mình phải thay bằng tên cúng cơm của nó luôn làm vậy?! Thay vì dài ngoãng như vậy, ta chỉ nên là 'DSHS' )(&&@@ !$@!! Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns("B:B")) Is Nothing Then _ Sheet3.[b65500].End(xlUp).Offset(1) = Target.Value End Sub Bạn cho tôi hỏi nếu khi vào danh sách mà bị sai, sau đó sửa lại thì bên Shee3 vẫn còn tên gõ sai, Vậy phải làm thế nào để tự động cập nhật khi sửa tên gõ sai ChanhTQ@ 24-03-09, 07:16 AM Cho hỏi, nếu khi vào danh sách mà bị sai, sau đó sửa lại thì bên Shee3 vẫn còn tên gõ sai, Vậy phải làm thế nào để tự động cập nhật khi sửa tên gõ saiĐể tìm tên sai bên CSDL tổng hợp, theo mình, có lẻ nên có mã HS riêng biệt cho từng em. & kiểm mỗi lần khi chép; nếu trùng thì báo cho ta biết để sửa; Nhưng cũng còn lắm công phu lắm để sửa cái sai này. . . . Đến đây, vấn đề sẽ liên quan đến việc NDU đã đề cập; Vì chúng ta làm ngược quy trình ngay từ đầu nên sẽ phức tạp chuyện sửa đổi tên sai . . . . Thật ra, Macro mình đưa ra chỉ để thỏa mãn iêu cầu của chủ topic mà thôi, . . . )(&&@@ @!## agiap 25-03-09, 05:51 PM Tôi không hiểu về maco lắm nhưng tôi nghĩ dùng hàm Vlookup cũng được mà. View Full Version : Tự động cập nhật dữ liệu khi thêm worksheet mới quandrc 04-06-09, 02:25 PM Bác Chuyên gia nào cho em hỏi một vấn đề em đang có một flie nhập dữ liệu các mặt hàng ở các kho A B C. Hằng ngày em phải nhập vào các sheet ứng với một sheet là một kho là một ngày vd: a.1 là kho a ngày 1, b.1 là kho b ngay 1 tương tự. Bây giờ em muốn khi dữ liệu nhập vào sheet a.1 là nó sẻ tự động cập nhật cộng vào sheet tổng hợp và các sheet kho ngày này không định sẳn, có nghĩa là làm đến ngày nào thì chèn thêm sheet ngày đó .Bác chuyên gia nào giúp em với em cám ơn. và giúp em băng công thức nhé. chức maro thì em bó tay, không hiểu (file đính kèm ) domfootwear 04-06-09, 02:53 PM Bác Chuyên gia nào cho em hỏi một vấn đề em đang có một flie nhập dữ liệu các mặt hàng ở các kho A B C. Hằng ngày em phải nhập vào các sheet ứng với một sheet là một kho là một ngày vd: a.1 là kho a ngày 1, b.1 là kho b ngay 1 tương tự. Bây giờ em muốn khi dữ liệu nhập vào sheet a.1 là nó sẻ tự động cập nhật cộng vào sheet tổng hợp và các sheet kho ngày này không định sẳn, có nghĩa là làm đến ngày nào thì chèn thêm sheet ngày đó .Bác chuyên gia nào giúp em với em cám ơn. và giúp em băng công thức nhé. chức maro thì em bó tay, không hiểu (file đính kèm ) Bạn nên sấp xếp và thiết kế lại bảng nhập liệu, làm như bạn rất là rối, 1 kho nhập 1 ngày = 1 sheet, làm sao quản lý cho nổi **~**. Cái này mình chỉ cần xây dùng 2 sheet. 1 Sheet dùng nhập liệu và 1 sheet dùng làm bảng tổng hợp thôi Bạn xem file đính kèm nhé Thân quandrc 04-06-09, 03:35 PM Ban thông cảm .! file này đã có sẳn và nội dung trong file rất nhiều vấn đề nhiều yêu cầu và nhiều công đoạn nhập dữ liêu. ở đây mình chỉ trích ra một yêu cầu công việc để đưa lên diễn đàn hỏi chuyên gia. do đó các chuyên gia cố gắng giúp mình theo như mình trình bày thank .! thivantan 05-06-09, 12:21 PM Ban thông cảm .! file này đã có sẳn và nội dung trong file rất nhiều vấn đề nhiều yêu cầu và nhiều công đoạn nhập dữ liêu. ở đây mình chỉ trích ra một yêu cầu công việc để đưa lên diễn đàn hỏi chuyên gia. do đó các chuyên gia cố gắng giúp mình theo như mình trình bày thank .! Bạn nên sắp sếp lại theo hướng dẫn của bạn Domfootwear; có sắp sếp dữ liệu khoa học thì mới dễ tổng hợp, theo tôi bạn nên nhập các ngày của một kho lại thành một sheet VD Sheet A chứa việc nhập số liệu theo các ngày của Kho A .như vậy khi bạn có 4 kho (A;B;C;D) thì chỉ cần 4 sheet tương ứng, sau đó tổng hợp thì sẽ dễ dàng hơn và chắc chắn các anh chị trên GPE sẽ giúp được bạn. quandrc 06-06-09, 07:21 AM Nội dung đặt ra là như vậy. với lại file đòi hỏi là như vậy như trình bày ở trên, làm sao các bác biểu em phải thay đổi được. Chắc là bó tay thôi . sâu xa của vấn đền ở đây em nghỉ không ra là dữ liệu nguồn không cố định có nghĩa là các sheet không định dạng trước được. HYen17 06-06-09, 08:30 AM (2) Với lại file đòi hỏi là như vậy như trình bày ở trên, làm sao các bác biểu em phải thay đổi được. Chắc là bó tay thôi . sâu xa của vấn đền ở đây em nghỉ không ra là dữ liệu nguồn không cố định có nghĩa là các sheet không định dạng trước được. (1) & giúp em băng công thức nhé. chứ maro thì em bó tay, không hiểu (1): Bạn có hiểu hết excel không (í tôi muốn nói, cái cách mà người ta xây dựng lên cái excel cho bạn xài đó? Nhưng bạn vẫn xài được nó đó thôi!) Macro người khác viết cho bạn mà bạn từ chối thì đành chờ vậy bạn nha; Tuy nhiên mình cũng báo cho bạn biết rằng, với VBA cái này giải quyết rất ư là đơn giản so với công thức nhiều. Bạn phải hiểu rằng, bạn yêu cầu di chuyển/Copy dữ liệu đó nha! Nếu bạn suy nghĩ lại mình sẽ đưa file đính kèm & cụ thể với bạn sau Chúc vui! HYen17 06-06-09, 03:24 PM em có một flie nhập dữ liệu các mặt hàng ở các kho A B C. Hằng ngày em phải nhập vào các sheet Ứng với một sheet là một kho là một ngày vd: a.1 là kho a ngày 1, b.1 là kho b ngay 1 tương tự. Bây giờ em muốn khi dữ liệu nhập vào sheet a.1 là nó sẻ tự động cập nhật cộng vào sheet tổng hợp. & các sheet kho ngày này không định sẳn, có nghĩa là làm đến ngày nào thì chèn thêm sheet ngày đó . (file đính kèm )Bạn hãy tải file đính kèm & trình tự trãi qua các bước mình hướng dẫn. (Chỗ nào chưa thông thì ta thảo luận tiếp) Trong file của mình, giờ chỉ có hai trang tính Trong đó có trang tính 'TongHop' & trang tính thứ 2 có chứa macro sự kiện, như sau: Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Columns(2)) Is Nothing Then CopyToGeneral Target.Value, Target.Offset(, -1).Value, [b1].Value End If End SubThực tế, macro này có 1 dòng lệnh mà thôi; Diễn nôm dòng lệnh đó như sau: Nếu Ta nhập số lượng mặt hàng nào đó vô cột 'B' (của trang tính này) thì thực thi macro CopyToGeneral Với ba thông số sau: (Thông số ta vừa nhập, Thông số tên mặt hàng & thông số tên kho) Macro CopyToGeneral có nội dung như dưới đây: (Tất nhiên bạn chưa cần quan tâm nhiều đến nội dung này;) Sơ lược như vầy: (*) Tìm Đúng tên kho đang tại cột nào lưu vô biến Col (*) Tìm đúng dòng có tên mặt hàng trùng với thông số về mặt hàng mà nó vừa được nhận (*) Chép số lượng lên đó (Chú ý nó đang chỉ là chép hay chép đè lên cái số cũ hiện có; Nếu bạn muốn chép cộng vô, thì chúng ta sẽ sửa lại dòng lệnh đôi chút - Chuyện ấy không phức tạp) Đến đây bạn nên thử nhập số liệu nhiều lần lên trang tính này & kiểm tra sau mỗi lần nhập coi chơi nha. Khi tạo trang tính mới. (Đồng thời với việc ấy là tạo ra trường ứng với trang tính mới này tại 'TongHop') Cách mà bạn nên làm như sau: Bạn bấm chuột vô trang 'A.1'; Sau đó ấn giữ {CTRL} & dùng chuột kéo tên trang tính này trên thanh SheetName sang phải (Copy trang tính) Bây giờ, việc tiếp theo chỉ là sửa lại tên trang tính, nội ung tại [B1] & thêm tên trường tương ứng với trang tính này tại 'TongHop' (Đến đây xin dừng để nhắc bạn 1 điều, tên trang tính nên viết liền (Thay vì 'TONG HOP' ta nên gán nó cái tên 'TongHop') & không nên chưa cáctự như dấu '.' đó đâu. Tất nhiên dấu chấm đó vẫn dùng được, cũng giống như không ai cấm chúng ta đi bộ mà 1 chân trên vĩa hè, một chân dưới lòng đường cả) Làm cách này, là excel sẽ copy luôn cho bạn cái macro cần thiết sang trang tính mới (Không tin thì bạn thử phải chuột lên trang tính song sinh mới tạo ra & chọn dòng cuối trong cửa số vừa xuất hiện xem sao. Option Explicit Sub CopyToGeneral(SoLg As Double, TenHg As String, Kho As String) Dim Sh As Worksheet, Rng As Range, sRng As Range, RngK As Range Dim Col As Byte Set Sh = Sheets("TongHop") Set Rng = Sh.Range(Sh.[A1], Sh.[A65500].End(xlUp)) Set RngK = Sh.Range(Sh.[A1], Sh.[iV1].End(xlToLeft)) Set sRng = RngK.Find(Kho, , xlFormulas, xlWhole) If sRng Is Nothing Then MsgBox "Chua Co Kho Nay", , "Welcome to GPE.COM": Exit Sub Else Col = sRng.Column - 1 End If Set sRng = Rng.Find(TenHg) If sRng Is Nothing Then MsgBox "Chua Co Mat Hang Nay", , "Bye!": Exit Sub Else sRng.Offset(, Col).Value = SoLg End If End Sub Chờ tin bạn! quandrc 08-06-09, 09:04 AM Bạn hãy tải file đính kèm & trình tự trãi qua các bước mình hướng dẫn. (Chỗ nào chưa thông thì ta thảo luận tiếp) Trong file của mình, giờ chỉ có hai trang tính Trong đó có trang tính 'TongHop' & trang tính thứ 2 có chứa macro sự kiện . không được rồi bạn ơi ! mình chẳng hiểu gì về những câu lệnh trong vba của bạn. nhưng mình đã thử rồi copy một sheet mới và đổi tên nhưng nó không cập nhật dữ liệu. còn dữ liệu của các ngày của từng kho mình còn đang lưởng lự không biết nên cộng dồn vào cột của kho đó ở sheet "tonghop" luôn hay tạo một cột phụ sẻ liệt kê các ngày trong tháng kho đó để tiện theo dõi khi bị lệch dự liệu. mong bạn chỉ giáo. Trong Excel có một hàm mà chúng ta có thể dùng nó để tự động hóa quá trình cập nhật dữ liệu! đó là hàm OFFSET dùng hàm này để tự động cập nhật dữ liệu của các chứng từ khi lập các sổ Nhật ký chung, nhật ký đặc biệt, sổ cái . từ sheet chứng từ. :f_o :bia VD thế này: Khi các nghiệp vụ sảy ra thì các bạn tập hợp vào 1 Sheet riêng, gọi đại là SheetCT đi. Bây giờ bạn muốn lập sổ NKC chẳng hạn, có nhiều cách để lập: 1: Bạn copy dữ liệu từ SheetCT ra SheetNKC rồi tiến hành vài thao tác sao chép đơn giản. Công việc này bạn phải làm mỗi khi muốn có sổ NKC, hay khi có nghiệp vụ mới phát sinh và còn tùm lum thứ nữa. 2: Bạn dùng Offset. thì bạn lập một công thức chung ban đầu, sau đó mỗi khi có nghiệp vụ KT sảy ra thì bạn chỉ việc chép công thức xuống dưới và dữ liệu sẽ tự động được lấy từ SheetCT sang điền vào Sheet NKC. Trong Sheet NKC này bạn có thể thêm vào 2 ô "ngayD" và "ngayC" để lọc dữ liệu trong một khoảng thời gian nào đó bằng hàm SUBTOTAL mà mình đã trình bày, dĩ nhiên hàm Offset cũng chỉ lấy những nghiệp vụ nào thỏa điều kiện mà thôi. Từ hàm offset,Dsum,dlookup,if .và sử dụng một số macro ta có thể tự động hàon toàn công việc kế toán, từ công nợ chi tiết cho đến tổng hợp và báo cáo kế toán,kể cả tự động tính kết quả SXKD,tôi đã làm được một chương trình này để lam kế toán rất hay nhưng thú thực Excel chỉ áp dụng được cho đơn vị có nghiệp vụ kế toán không lớn thì nó chạy nhanh, nhưng nếu xử lý đối với những DN có nghiệp vụ phát sinh lớn thì không dùng được nên tôi phải chuyển qua ACCess tốt hơn nhiều và cũng oai hơn. Hàm Offset có thể kết hợp nó với các hàm: INDIRECT, ADDRESS để tạo nên một công thức siêu đẳng. Chẳng hạn khi bạn muốn lập sổ cái 111 thì bạn phải lấy được vị trí của các chứng từ có TK111 trong SheetCT, nhưng những CT này đâu có nằm liên tục, mà nó sẽ bị ngắt quãng, rải rác. Khi đó bạn sẽ phải dùng Offset, kết hợp INDIRECT, ADDRESS, MATCH để lấy được những CT đó. Nguồn trích dẫn (0) 4 Bình luận Ẩn lời bình 1. hoainam 17:00 06-02-2010 2. hoainam 17:00 06-02-2010 Công dụng: Trả về tham chiếu đến một vùng nào đó, cách một ô hoặc một dãy ô một khoảng cách với số dòng hoặc số cột được chỉ định trước. Chúng ta có thể chỉ định số dòng, số cột của vùng tham chiếu trả về. Cú pháp: =OFFSET(reference, rows, cols, height, width) Trong đó: o reference: là vùng tham chiếu làm cơ sở cho hàm (làm điểm xuất phát) để tạo vùng tham chiếu mới. reference phải chỉ đến một ô hoặc một dãy ô liên tục, nếu không hàm sẽ trả về lỗi #VALUE!. o rows: là số dòng bên trên hoặc bên dưới reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu rows là 3, sẽ có 3 dòng trả về và nằm bên dưới reference. Khi rows là số dương thì các dòng trả về nằm bên dưới reference, khi rows là số âm thì các dòng trả về nằm bên trên reference. o cols: là số cột bên trái hoặc bên phải reference, tính từ ô đầu tiên (ô ở góc trên bên trái) của reference. Ví dụ nếu cols là 4 sẽ có 4 cột trả về và nằm bên phải của reference. Khi cols là số dương thì các cột trả về nằm bên phải reference, khi cols là số âm thì các cột trả về nằm bên trái reference. o height: là số dòng của vùng tham chiếu cần trả về. Height phải là số dương. o width: là số cột của vùng tham chiếu cần trả về. Width phải là số dương. Lưu ý: o Nếu rows và cols làm cho tham chiếu trả về vượt ra ngoài phạm vi của một worksheet, hàm Offset sẽ báo lỗi #REF! o Nếu bỏ qua height và width, thì height và width sẽ có kích thước mặc định là height và width của reference. o Offset thật sự không di chuyển bất cứ ô nào, cũng không thay đổi bất kỳ phần chọn nào, nó chỉ trả về tham chiếu mà thôi. Chúng ta có thể sử dụng Offset với bất kỳ hàm nào cần đối số là một tham chiếu. Ví dụ, công thức Sum(Offset(C10,1,2,3,1)) sẽ tính tổng các giá trị của một dãy gồm ba dòng, một cột; đây là dãy nằm bên dưới ô C10 một dòng và bên phải ô này hai cột. 3. hoainam 16:59 06-02-2010 4. hoainam 16:58 06-02-2010 Nhập dữ liệu đồng thời vào nhiều sheet thường người dùng Excel có những dữ liệu muốn nhập vào nhiều sheet khác nhau. Bạn có thể dùng công cụ Group các sheet lại để có thể nhập dữ liệu đồng thời. Nhưng cũng có 1 cách khác nhanh chóng và linh hoạt hơn nếu bạn dùng vài dòng lệnh VBA. Nhưng phải nói đến công cụ Group cái đã nhỉ? Công cụ Group dùng để nhập dữ liệu vào nhiều sheet 1 lúc chắc có nhiều người chưa dùng đến. Nó dùng để kết nối các sheets với nhau trong phạm vi work book. 1. Group các sheet lại bằng tay: Để nhóm các sheet lại, các bạn chỉ việc click chọn sheet thứ nhất, nơi bạn sẽ nhập liệu từ bàn phím vào, rồi vừa nhấn Ctrl, vừa nhấn vào tên những sheet khác mà bạn muốn nhập liệu đồng thời. Khi bạn gõ bất kỳ cái gì vào sheet hiện hành, dữ liệu đó cũng sẽ tự động nhập vào các sheet còn lại trong nhóm. Điệp vụ hoàn tất nhanh chóng (nghe giống 007 nhỉ). Để thoát khỏi tình trạng group, bạn chỉ việc hoặc click chọn 1 sheet khác ngoài nhóm, hoặc click chuột phải lên tên 1 sheet trong nhómbất kỳ, chọn Ungroup Sheets. Hoặn nếu bạn chỉ muốn gỡ 1 trong số các sheet ra khỏi nhóm, hãy Ctrl click vào tên sheet đó. Khi 2 hay nhiều sheet Group với nhau, trên thanh tiêu đề của Windows sẽ có chữ [Group] (tronh ngoặc vuông). Nhìn vào đó bạn có thể biết bạn vẫn còn đang trong tình trạng group các sheets. Trừ khi bạn có cặp mắt sắc như chim ưng, hoặc bén như dao cạo, thường thì bạn không để ý đến dấu hiệu này, bạn sẽ quên và không ungroup khi công việc đã xong. Chính vì thế tôi khuyên bạn ngay khi thực hiện xong thao tác nhập liệu hàng loạt vào các sheet, phải ungroup chúng ngay. phương pháp này là dễ nhất, nhưng có nghĩa là bạn phải nhớ và nhớ group và ungoup khi cần, nếu không bạn sẽ vô tình ghi đè lên dữ liệu ở những sheet mà bạn không nhìn thấy trên màn hình hiện thời. Thí dụ như bạn chỉ muốn ghi cùng lúc dữ liệu vào 1 vùng nào đó của các bảng tính, còn ngoài vùng đó thì dữ liệu các sheet phải khác nhau. Thế nhưng khi các sheet đã group rồi thì nó có thèm quan tâm bạn đang nhập liệu ở vùng nào đâu? 2. Group các sheet lại 1 cách tự động: Bạn có thể giải quyết vấn đề trên bằng cách dùng 1 đoạn code VBA hết sức đơn giản. Để đoạn code làm việc được, nó phải được đặt trong các sự kiện của [...]... rằng đoạn code trên phải nằm trong sheet được khai báo đầu tiên của Array, là sheet mà bạn sẽ nhập dữ liệu từ bàn p Khi bạn đã hoàn tất, mỗi khi bạn click chọn 1 ô nào đó trong sheet5 , đoạn code sẽ kiểm tra xem ô bạn chọn có nằm trong vùng đã không Nếu đúng, code sẽ Group các sheet lại với nhau để bạn nhập dữ liệu hàng loạt sheets Nếu không phải, nó ungroup chúng ra kích hoạt sheet hiện hành Dùng đoạn... phải: PHP Code: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("MyRange"), Target) Is Nothing Then Sheets(Array( "Sheet5 ", "Sheet3 ", "Sheet1 ")).Select Else Me.Select End If End Sub Trong đoạn code trên, sheet5 được ghi đầu tiên trong mảng Array, vì bạn muốn nó là sheet mà bạn sẽ gõ dữ liệu nhập vào Bạn có khác để group chúng lại bên dưới sheet5 Sau khi gõ code xong,... khi bắt đầu và UnG liệu trong vùng chọn Bây giờ nếu bạn muốn những dữ liệu như nhau được nhập vào các sheet chọn, nhưng ở những vị trí khác nhau, hãy dùng đoạn code PHP Code: Private Sub worksheet_Change(ByVal Target As Range) If Not Intersect(Range("MyRange"), Target) Is Nothing Then With Range("MyRange") Copy Destination:=Sheets( "Sheet3 ").Range("A1") Copy Destination:=Sheets( "Sheet1 ").Range("D10")... của sheet nếu bạn chọn View Code như trên hướng dẫn Bạn có thể nó thuộc về sheet bạn chọn hay không bằng cách nhìn vào cửa sổ VBA Project bên trái, nếu bạn thấy dạng thư mục This Workbook sheet đang chọn thì đúng nếu không bạn phải tìm đúng sheet bạn cần và doubled click nó Trước tiên bạn phải đặt name cho vùng ô bạn muốn nhập dữ liệu trùng trong các sheet, giả sử là “MyRange” Sau đó gõ đoạn code này...riêng sheet nào bạn muốn Để vào trang soạn thảo code của sheet nào, thì click phải chuột vào tên sheet đó và chọn View Code Bạn có thể chọn 1 trong các sự kiện của sheet, những sự kiện chỉ liên quan đến sheet đó như đổi ô chọn, thay đổi nội dung 1 ô, kích sheet, … để thực thi đoạn code VBA của mình Thường thì bạn được đưa thẳng đến trang soạn thảo code riêng của sheet nếu bạn chọn View Code như trên hướng. .. Destination:=Sheets( "Sheet1 ").Range("D10") End With End If End Sub Đoạn code này cũng phải được đặt trong khung soạn thảo của riêng sheet5 Đoạn code này hoạt động khác với đoạn code trên Khi bạn thay đổi nội dung của 1 ô nào đó, code sẽ xác định xem ô hiện hành "MyRange" hay không, nếu phải thì copy nguyên vùng "MyRange" (của sheet5 ) và paste vào đồng thời ô A1 của sheet1 và D10 lại thì không làm gì cả . để tự động hóa quá trình cập nhật dữ liệu! đó là hàm OFFSET dùng hàm này để tự động cập nhật dữ liệu của các chứng từ khi lập các sổ Nhật ký chung, nhật. Tự động cập nhật dữ liệu trong EXCEL Trong Excel có một hàm mà chúng ta có thể dùng nó để tự động hóa quá trình cập nhật dữ liệu& amp;#33;

Ngày đăng: 29/11/2013, 07:11

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan