Máy tínhPhần mềm

VBA Excel: các chương trình mẫu. Macros trong Excel

Rất ít người biết rằng phiên bản đầu tiên của sản phẩm phổ biến Microsoft Excel xuất hiện vào năm 1985. Kể từ đó nó đã trải qua nhiều thay đổi và nhu cầu của hàng triệu người dùng trên khắp thế giới. Tuy nhiên, nhiều công việc chỉ với một khả năng chút bảng tính này và thậm chí không biết làm thế nào họ có thể làm cho cuộc sống dễ dàng hơn cho khả năng lập trình Excel.

VBA là gì

Lập trình trong Excel được thực hiện bằng cơ bản cho ứng dụng ngôn ngữ Visual lập trình đầu tiên được xây dựng trong bảng tính nổi tiếng nhất từ Microsoft.

Để khen mình chuyên gia thuộc tính tương đối dễ dàng phát triển. Thực tế cho thấy, VBA có thể làm chủ những điều cơ bản, ngay cả những người dùng không có kỹ năng lập trình chuyên nghiệp. Đối với VBA tính năng bao gồm thực hiện kịch bản trong môi trường ứng dụng văn phòng.

Những bất lợi của chương trình là những vấn đề liên quan đến tính tương thích của các phiên bản khác nhau. Chúng được gây ra bởi thực tế rằng mã VBA của chương trình đề cập đến chức năng mà hiện diện trong phiên bản mới của sản phẩm, nhưng không phải trong cái cũ. Ngoài ra còn có một bất lợi lớn và cởi mở cao ngất ngưởng của mã để thay đổi bộ mặt của một người lạ. Tuy nhiên, Microsoft Office, và IBM Lotus Symphony cho phép người dùng để áp dụng cài đặt mã mục mã hóa và mật khẩu để xem nó.

Đối tượng, bộ sưu tập, thuộc tính và phương pháp

Đó là với những khái niệm bạn cần phải hiểu những người đang đi làm việc trong môi trường VBA. Trước hết, bạn phải hiểu những gì đối tượng là. Trong Excel, trong hành động này như một tờ, một cuốn sách, và dãy ô. Những đối tượng có hệ thống cấp bậc đặc biệt, ví dụ: vâng lời nhau.

Đứng đầu trong số đó là các ứng dụng, chương trình Excel tương ứng riêng của mình. Workbooks theo sau, Worksheets, và Range. Ví dụ, để chỉ ô A1 trên một tờ cụ thể phải vạch ra con đường, có tính đến hệ thống phân cấp.

Về khái niệm "bộ sưu tập", nhóm này của các đối tượng của lớp đó, trong đó ghi được đưa ra ChartObjects. phần tử của nó cũng là những đối tượng.

Điều tiếp theo - tài sản. Họ là một tính năng cần thiết của bất kỳ đối tượng. Ví dụ, đối với Phạm vi - là một giá trị hoặc công thức.

Phương pháp - là lệnh để hiển thị mà bạn muốn thực hiện. Khi viết code trong VBA chúng được tách ra từ quan điểm đối tượng. Ví dụ, như sẽ được hiển thị sau, rất thường khi lập trình trong lệnh "Excel" sử dụng Cells (1,1) .Select. Nó có nghĩa rằng nó là cần thiết để chọn một ô có tọa độ (1,1), ví dụ: A1.

Tuy nhiên, nó thường được sử dụng Selection.ClearContents. thực hiện thanh toán bù trừ được các nội dung của ô đã chọn.

Làm thế nào để bắt đầu

Trước hết, bạn muốn tạo ra các tập tin và lưu nó, gán tên và chọn kiểu «Sách Excel vĩ mô được kích hoạt."

Sau đó, đi đến ứng dụng VB, đó là đủ để sử dụng một sự kết hợp của «Alt» chìa khóa và «F11». tiếp theo:

  • trong thanh menu ở phía trên cùng của cửa sổ, nhấp vào biểu tượng bên cạnh biểu tượng Excel;
  • Mudule lệnh được lựa chọn;
  • giữ cách nhấn vào biểu tượng đĩa mềm;
  • viết, nói, một phác thảo mã.

Nó trông giống như sau:

chương trình phụ ()

'Mã của chúng tôi

End Sub

Xin lưu ý rằng dòng " 'mã của chúng tôi" sẽ được đánh dấu bằng một màu khác nhau (xanh lá cây). Lý do cho dấu nháy đơn này, giao tại đầu của chuỗi, mà chỉ ra rằng những gì sau là một nhận xét.

Bây giờ bạn có thể viết bất kỳ mã và tạo cho mình một công cụ mới trong VBA Excel (xem các chương trình mẫu. Vv). Tất nhiên, những người đã quen thuộc với những điều cơ bản của Visual Basic, nó sẽ được dễ dàng hơn nhiều. Tuy nhiên, ngay cả những người không có, nếu bạn muốn có thể để có được thoải mái khá nhanh chóng.

Macros trong Excel

Đằng sau tên này ẩn chương trình viết bằng ngôn ngữ Visual Basic cho các ứng dụng. Như vậy, chương trình sang Excel - là tạo ra một macro để mã mong muốn. Với khả năng này, Microsoft bảng tính tự phát triển, thích nghi với các yêu cầu của một người dùng cụ thể. Sau khi xử lý như thế nào để tạo ra mô-đun cho viết macro, người ta có thể tiến hành với các ví dụ cụ thể của chương trình VBA Excel. Tốt nhất là bắt đầu với các mã cơ bản nhất.

VÍ DỤ 1

Nhiệm vụ: Viết một chương trình mà sẽ sao chép các giá trị của các nội dung của một tế bào và sau đó viết thư cho nhau.

Để làm điều này:

  • mở tab "View";
  • di chuyển các biểu tượng "macro";
  • lắc để các "Record Macro";
  • điền vào mẫu mở ra.

Để đơn giản, trong "Macro Name" rời "Makros1" và trong "Phím tắt" được chèn vào, ví dụ, hh (điều này có nghĩa là bạn có thể chạy các chương trình ví dụ sẽ là «Ctrl + h» đội blitz). Nhấn Enter.

Bây giờ bạn đã bắt đầu ghi vĩ mô, tạo nên nội dung của một tế bào khác. Quay trở lại biểu tượng ban đầu. Click vào "Record Macro". Hành động này đánh dấu sự kết thúc của applet.

tiếp theo:

  • một lần nữa chuyển sang chuỗi "Macros";
  • được chọn trong danh sách "Macro 1";
  • bấm vào nút "Run" (cùng bắt đầu hành động Ra mắt phím tắt Ctrl + «hh»).

Kết quả là, hành động đó đã được thực hiện trong quá trình ghi vĩ mô.

Nó làm cho tinh thần để xem cách mã trông như thế nào. Để làm điều này, quay trở lại với chuỗi "Macros" và nhấp vào "Chỉnh sửa" hoặc "Enter". Kết quả là, họ tìm thấy chính mình trong môi trường VBA. Trên thực tế, mã riêng của mình nằm giữa các dòng vĩ mô Makros1 Sub () và End Sub.

Nếu sao chép đã được thực hiện, ví dụ, từ một tế bào A1 trong ô C1, một trong những dòng mã sẽ trông giống như Range ( "C1"). Select. Trong bản dịch, có vẻ như "Range (" C1 "). Select", nói cách khác, làm cho một chuyển đổi sang VBA Excel, tại ô C1.

Một vai trò tích cực của mã hoàn ActiveSheet.Paste đội. Nó có nghĩa là ghi nội dung được lựa chọn tế bào (trong trường hợp này, A1) trong C1 ô đã chọn.

VÍ DỤ 2

chu kỳ VBA giúp tạo các macro khác nhau trong Excel.

chu kỳ VBA giúp tạo các macro khác nhau. Giả sử rằng có một hàm y = x + x 3 + 3x 2 - cos (x). Bạn muốn tạo một macro cho đồ họa của nó. Điều này có thể được thực hiện chỉ bằng cách sử dụng chu kỳ VBA.

Đối với giá trị ban đầu và cuối cùng của chức năng lập luận đưa x1 = 0 và x2 = 10. Hơn nữa, nó là cần thiết để giới thiệu một hằng số - giá trị cho bước làm thay đổi lý luận và một giá trị ban đầu cho bộ đếm.

Tất cả các ví dụ về các macro VBA Excel được tạo ra bằng cách sử dụng thủ tục tương tự như đã nêu ở trên. Trong trường hợp đặc biệt này, các mã trông giống như:

programm Sub ()

x1 = 1

x2 = 10

Shag = 0,1

i = 1

Đừng Trong khi x1

y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)

Tế bào (i, 1) .Value = x1 (x1 giá trị ghi trong bộ nhớ với các tọa độ (i, 1))

Tế bào (i, 2) .Value = y (y giá trị được viết bằng các tế bào với các tọa độ (i, 2))

i = i + 1 (count hợp lệ);

x1 = x1 + Shag (lập luận được thay đổi kích thước bước);

vòng

End Sub.

Theo kết quả của chạy macro này "Excel" được hai cột, là người đầu tiên trong số đó được ghi lại các giá trị cho x, và lần thứ hai - để y.

Sau đó sắp xếp có thể xây dựng trên đó, tiêu chuẩn cho "Excel".

VÍ DỤ 3

Để thực hiện chu kỳ trong VBA Excel 2010, cũng như trong các phiên bản khác, cùng với việc đã giảm Đỗ Trong khi thiết kế sử dụng Đối với.

Hãy xem xét một chương trình tạo ra một cột. Trong mỗi tế bào đó sẽ được ghi hình vuông số dòng tương ứng. Đối với việc sử dụng các thiết kế sẽ cho phép để ghi lại nó rất ngắn gọn, không cần sử dụng một bộ đếm.

Đầu tiên nó là cần thiết để tạo ra một vĩ mô, như mô tả ở trên. Tiếp theo, viết mã riêng của mình. Chúng tôi tin rằng chúng tôi đang quan tâm đến các giá trị cho 10 tế bào. Mã này là như sau.

For i = 1 đến 10 Tiếp theo

Lệnh được chuyển giao cho các ngôn ngữ "con người", là "lặp đi lặp lại 1-10 trong từng bước một."

Nếu nhiệm vụ để nhận được cột với hình vuông, ví dụ, tất cả các số nguyên lẻ từ 1 đến 11, chúng ta viết:

Đối với i = 1 đến 10 bước 1 Next.

Ở đây, bước - bước. Trong trường hợp này, nó tương đương với hai. Theo mặc định, sự vắng mặt của từ trong vòng lặp có nghĩa là một bước duy nhất.

Các kết quả cần phải được lưu trữ trong số tế bào (i, 1). Sau đó, mỗi khi bạn khởi động chu kỳ với sự gia tăng giá trị của i bước sẽ tự động phát triển và số dòng. Như vậy, sẽ có mã tối ưu hóa.

Nói chung, các mã sẽ như thế nào:

chương trình phụ ()

For i = 1 To 10 Bước 1 (có thể được viết chỉ cho i = 1 To 10)

Tế bào (i, 1) .Value = i ^ 2 (ví dụ: giá trị vuông được viết vào tế bào (i, 1) i)

Tiếp theo (theo nghĩa đóng vai trò của các phương tiện truy cập và một sự khởi đầu chu kỳ)

End Sub.

Nếu được thực hiện một cách chính xác, bao gồm ghi âm và chạy macro (xem. Các hướng dẫn ở trên), sau đó nó được gọi là mỗi lần một kích thước nhất định sẽ đạt được cột (trong trường hợp này gồm 10 tế bào).

VÍ DỤ 4

Trong cuộc sống hàng ngày, rất thường nó là cần thiết để đưa ra quyết định này hay cái kia tùy thuộc vào một số điều kiện. không thể làm mà không có họ trong VBA Excel. Ví dụ về các chương trình mà quá trình tiếp tục của thuật toán được chọn thay vì ban đầu được xác định trước, hầu hết thường được sử dụng thiết kế của Nếu ... Sau đó (đối với trường hợp khó khăn) Nếu ... Thì ... END Nếu.

Hãy xem xét các trường hợp cụ thể. Giả sử bạn muốn tạo một macro cho "Excel" để các tế bào với các tọa độ (1,1) đã được ghi nhận:

1 nếu đối số là tích cực;

0 nếu đối số là số không;

1, nếu đối số là tiêu cực.

Việc tạo ra một macro như vậy cho "Excel" bắt đầu trong một cách tiêu chuẩn, thông qua việc sử dụng các phím "nóng" Alt và F11. Hơn nữa viết đoạn mã sau:

chương trình phụ ()

x = Cells (1, 1) .Value (lệnh này gán giá trị của tọa độ x của các nội dung di động (1, 1))

Nếu x> 0 Then Cells (1, 1) .Value = 1

Nếu x = 0 Then Cells (1, 1) .Value = 0

Nếu x <0 Then Cells (1, 1) .Value = -1

End Sub.

Nó vẫn còn để chạy một macro và nhận được trong "Excel" giá trị mong muốn cho các cuộc tranh cãi.

chức năng VBA

Như bạn có thể nhận thấy, trong chương trình Microsoft ứng dụng bảng tính nổi tiếng nhất không phải là quá khó khăn. Đặc biệt nếu bạn tìm hiểu làm thế nào để sử dụng chức năng VBA. Tổng cộng, ngôn ngữ lập trình này tạo ra đặc biệt cho viết các ứng dụng trong "Excel" và Ngôi Lời, khoảng 160 chức năng. Họ có thể được chia thành nhiều nhóm lớn. Đó là:

  • Các hàm toán học. Áp dụng chúng vào các đối số của giá trị cosin thu được, logarit tự nhiên, và do đó toàn bộ phần.
  • chức năng tài chính. Do tình trạng phòng và sử dụng chương trình của họ trong Excel, bạn có thể nhận được các công cụ hiệu quả cho kế toán và quyết toán tài chính.
  • chức năng xử lý mảng. Chúng bao gồm Array, IsArray; LBound; UBound.
  • VBA Excel chức năng cho các dòng. Đây là một nhóm khá lớn. Nó bao gồm, ví dụ, chức năng không gian để tạo ra một chuỗi với một số khoảng trống bằng đối số nguyên hoặc chuyển ký tự Asc mã ANSI. Tất cả trong số đó là sử dụng rộng rãi và cho phép bạn làm việc với chuỗi trong "Excel" để tạo các ứng dụng dễ dàng hơn để làm việc với các bảng.
  • chức năng chuyển đổi kiểu dữ liệu. Ví dụ, cvar trả về lập luận Expression, chuyển đổi nó sang kiểu dữ liệu Variant.
  • chức năng ngày. Họ rất mở rộng các tính năng tiêu chuẩn của "Excel". Vì vậy, WeekdayName hàm trả về tên (đầy đủ hoặc một phần) của ngày trong tuần theo số của nó. Thậm chí hữu ích hơn là Timer. Ông cho biết số giây đã trôi qua kể từ nửa đêm đến một thời điểm cụ thể trong ngày.
  • Chức năng để chuyển đổi một đối số trong các hệ thống số khác nhau. Ví dụ, tháng mười kết quả đầu ra để đại diện bát phân của số.
  • chức năng định dạng. Điều quan trọng nhất trong số này là các định dạng. Nó trả về một biến thể với một biểu thức định dạng theo hướng dẫn được đưa ra trong các mô tả về định dạng.
  • và vân vân.

Việc nghiên cứu các tính chất của các chức năng và ứng dụng của họ sẽ mở rộng đáng kể phạm vi "Excel".

VÍ DỤ 5

Hãy cố gắng giải quyết vấn đề phức tạp hơn. Ví dụ:

tài liệu giấy Dan mức thực tế của chi phí của báo cáo doanh nghiệp. Yêu cầu:

  • phát triển phần mô hình của mình bằng bảng "Excel";
  • làm cho một chương trình VBA mà sẽ yêu cầu dữ liệu thô để điền vào nó, để thực hiện các tính toán cần thiết và điền vào các mẫu của các tế bào tương ứng.

Xem xét một trong các giải pháp sau.

Tạo một mẫu

Tất cả các hành động được thực hiện trên một tờ tiêu chuẩn trong Excel. các tế bào miễn phí dành cho việc nhập dữ liệu vào tháng, năm, các công ty tiêu đề người tiêu dùng, số tiền chi phí, mức độ doanh thu. Khi số lượng các công ty (công ty), trong sự tôn trọng trong đó báo cáo không được ghi lại, các tế bào để thực hiện trên cơ sở giá trị và tên chuyên nghiệp không đặt chỗ trước. Bảng được gán cho một tên mới. Ví dụ, "Օ Báo cáo".

biến

Để viết chương trình tự động điền thông tin vào mẫu, chọn ký hiệu. Họ sẽ được sử dụng cho các biến:

  • NN- số hàng hiện tại của bảng;
  • TP và TF - kế hoạch và doanh thu thực tế;
  • SF và SP - tổng chi phí thực tế và kế hoạch;
  • IP và NẾU - kế hoạch và mức chi phí thực tế.

Chúng tôi biểu thị bằng các chữ cái giống nhau, nhưng với một "tiền tố» Itog tổng tích lũy cho cột đó. Ví dụ, ItogTP - Đối với cột Với tựa đề, là "doanh thu theo kế hoạch."

Giải pháp của vấn đề sử dụng lập trình VBA

Sử dụng ký hiệu này, chúng tôi có được công thức cho đúng. Nếu bạn muốn thực hiện việc tính theo% chúng ta có (F - P) / P * 100, và trong lượng - (F - P).

Kết quả của những tính toán này có thể là tốt nhất chỉ để làm cho "Excel" bảng tính trong các tế bào thích hợp.

Đối với kết quả và tiên lượng trong thực tế thu được bằng công thức ItogP = ItogP + P và ItogF = ItogF + F.

Đối với độ lệch sử dụng = (ItogF - ItogP) / ItogP * 100 nếu tính toán được thực hiện như một phần trăm, và nếu tổng giá trị - (ItogF - ItogP).

Kết quả một lần nữa được ghi lại trong các tế bào thích hợp, do đó không cần phải gán chúng cho các biến.

Trước khi bắt đầu để tạo ra một chương trình mà bạn muốn lưu bảng tính, ví dụ, dưới cái tên "Otchet1.xls".

Bấm "Tạo một bảng báo cáo", bạn phải nhấn duy nhất 1 lần sau khi nhập các thông tin tiêu đề. Bạn nên biết và quy tắc khác. Đặc biệt, vào nút "Thêm một dòng" phải được ép mỗi lần sau khi nhập vào bảng giá trị cho từng hoạt động. Sau khi nhập tất cả các dữ liệu cần thiết để nhấn nút "Finish", và sau đó chuyển sang "Excel" trong cửa sổ.

Bây giờ bạn biết làm thế nào để giải quyết vấn đề cho Excel với các macro. Khả năng sử dụng Excel VBA (xem các chương trình mẫu. Trên) và bạn có thể cần phải làm việc trong môi trường trong những phổ biến nhất tại thời điểm, soạn thảo văn bản "Word." Đặc biệt, bằng cách ghi lại, như thể hiện trong phần đầu của bài viết này, hoặc bằng cách viết code để tạo ra các nút menu thông qua đó rất nhiều các hoạt động trên văn bản có thể được thực hiện bằng cách nhấn các phím làm nhiệm vụ hoặc thông qua biểu tượng "View" và "Macros" tab.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 vi.birmiss.com. Theme powered by WordPress.