Trang Chủ Xã hội Truyền thông Phân tích Tên VBA Way - núm vú

Phân tích Tên VBA Way - núm vú

Video: Học VBA trong Excel | 83 Hướng dẫn lọc dữ liệu bằng VBA với 1 điều kiện 2025

Video: Học VBA trong Excel | 83 Hướng dẫn lọc dữ liệu bằng VBA với 1 điều kiện 2025
Anonim

Bạn đã bao giờ được đưa ra một bảng tính Excel với tên, trong đó tên đầy đủ là tất cả trong một tế bào? Nhiệm vụ của bạn là phá vỡ tên thành tên, họ - một quá trình được gọi là phân tích cú pháp . Bạn có thể thử sử dụng một công thức và / hoặc chức năng để giúp đỡ, hoặc bạn có thể sử dụng mã Visual Basic for Applications (VBA).

Cách tiếp cận chung là tìm khoảng cách giữa tên và họ, và voila! - bạn biết nơi mà tên đầu tiên kết thúc và tên cuối cùng bắt đầu.

Trừ khi bạn có tên có cấu trúc phức tạp hơn, như Dr. William Healer hay Zak H. Sneezer III.

Dưới đây là một thói quen VBA điển hình nhìn qua mỗi tên, nhân vật theo nhân vật, cho đến khi nó tìm thấy một không gian. Sau đó, nó đặt bất cứ điều gì là bên trái của không gian trong một cột và bất cứ điều gì là bên phải của không gian trong cột sau.

Do Until ActiveCell = "thename = ActiveCell Giá trị For looking = 1 Để Len (thename) Nếu Mid (thename, looking, 1) =" "Sau đó ActiveCell Offset (0, 1) = Còn lại (tên, 1) ActiveCell Offset (0, 2) = Mid (tên, tìm kiếm + 1) Exit For End If Next ActiveCell Offset (1, 0) Kích hoạt Loop

Thủ tục này rất hữu ích trong việc phân tách các tên chỉ với một khoảng trống, chẳng hạn như Harvey Wallbanger hoặc Tom Collins Bảng dưới đây cho thấy kết quả của việc chạy mã trên tên có nhiều không gian:

Dr William Healer Tiến sĩ < Zak Heineau Zak H. Sneezer III
Zak H Sneezer III Đây không phải là một cố gắng phân tách cú pháp tốt. các tên khác

Dưới đây là một kỹ thuật phát triển hơn mang lại kết quả tốt hơn Hãy ghi nhớ rằng việc phân tích cú pháp tên không hoàn hảo, nhưng đi về nó nó sẽ làm tốt hơn

Kỹ thuật này là tính bao nhiêu không gian có đầy đủ tên và sau đó phá vỡ tên trên một trong những không gian. Đặc biệt, nếu có ba không gian nhiều hơn, sử dụng không gian hai trong từ bên phải như không gian phá vỡ; nếu không, sử dụng không gian bên phải nhất như không gian phá vỡ.

Quy trình này được chạy trong một chương trình con VBA gọi một hàm trong khi lặp lại tên. Số lượng không gian được xác định sớm trong vòng lặp chính, và chức năng trả về vị trí mà không gian phá vỡ là.

Sub parse_names () Dim thename As String Giấu các không gian như Integer Do Until ActiveCell = "thename = ActiveCell Khoảng trống giá trị = 0 Đối với test = 1 Để Len (thename) Nếu Mid (thename, test, 1) =" "Sau đó không gian = không gian + 1 Kết thúc Nếu Tiếp Nếu không gian> = 3 Sau đó, break_space_position = space_position ("", thename, spaces - 1) Else break_space_position = space_position ("", thename, spaces) End If If spaces> 0 Sau đó ActiveCell.Offset (0, 1) = Còn lại (sau đó, break_space_position - 1) ActiveCell. Offset (0, 2) = Mid (thename, break_space_position + 1) Else 'là khi tên đầy đủ chỉ là một cái tên không có dấu cách ActiveCell. Offset (0, 1) = Thename End If ActiveCell. Offset (1, 0). Kích hoạt Loop End Sub Chức năng space_position (what_to_look_for Như String, what_to_look_in Như String, space_count Như Integer) Như Integer Dim loop_counter Như Integer space_position = 0 Đối với loop_counter = 1 Để space_count space_position = InStr (loop_counter + space_position, what_to_look_in, what_to_look_for) Nếu space_position = 0 Sau đó thoát khỏi chức năng kết thúc tiếp theo

Bảng dưới đây cho biết kết quả như thế nào:

Dr. William Healer

Tiến sĩ. William Healer Zak H. Sneezer III
Zak H. Sneezer III Việc phân tích tên là nghệ thuật nhiều như quy trình kỹ thuật. Trong ví dụ thứ hai, tất cả các tên và họ là trong cột chính xác. Nếu một tên dài mới với năm hay nhiều không gian đã được giới thiệu, thói quen có thể nhận được phân tích cú pháp sai, và mã VBA sẽ cần nhiều thử nghiệm có điều kiện đưa vào nó. Nhưng ví dụ này hiện đang đi đúng hướng như một quy trình phân tích cú pháp tên công nghiệp.
Phân tích Tên VBA Way - núm vú

Lựa chọn của người biên tập

Câu hỏi Toán Thực hành aCT: Phương trình tuyến tính - núm vú

Câu hỏi Toán Thực hành aCT: Phương trình tuyến tính - núm vú

Nếu bạn muốn treo trên mặt phẳng phối hợp, sau đó bạn nên biết làm thế nào để sử dụng phương trình tuyến tính. Trong bài kiểm tra Toán ACT, bạn sẽ gặp những câu hỏi như sau, nơi bạn được yêu cầu tìm ra biểu mẫu đánh chặn độ dốc để tính toán độ dốc của các đường khác nhau. Câu hỏi thực hành Độ dốc của đường ...

Câu hỏi luyện thi aCT: Xác suất - núm vú

Câu hỏi luyện thi aCT: Xác suất - núm vú

Có một cơ hội tốt để thi ACT Math có chứa một hoặc thêm nhiều câu hỏi liên quan đến xác suất. Cũng có một cơ hội tốt để bạn trả lời đúng những câu hỏi đó sẽ cải thiện nếu bạn giải quyết các câu hỏi thực hành sau đây. Câu hỏi thực hành Sheila có 4 vớ màu đen và 2 vớ hải quân trong cô ấy

Câu hỏi Toán Thực hành aCT: Phần trăm - núm vú

Câu hỏi Toán Thực hành aCT: Phần trăm - núm vú

Nếu bạn muốn có điểm phần trăm cao trong kỳ thi Toán ACT, sau đó bạn nên biết làm thế nào để giải quyết vấn đề tỷ lệ phần trăm. Như bạn sẽ thấy trong các câu hỏi thực hành sau đây, phần trăm xuất hiện trong một loạt các vấn đề, từ toán kinh doanh sang đại số. Câu hỏi thực hành Cho rằng 6 phần trăm (a + b) = 12 phần trăm

Lựa chọn của người biên tập

Làm thế nào để Xác định Custom Cell Styles trong Excel 2016 - núm vú

Làm thế nào để Xác định Custom Cell Styles trong Excel 2016 - núm vú

Bạn không phải sống với chỉ những kiểu được xác định trước mà Excel 2016 cung cấp cho bạn trên thư viện Kiểu ô bởi vì bạn có thể dễ dàng tạo các kiểu tế bào tùy chỉnh của riêng bạn. Cách đơn giản nhất để tạo ra một kiểu tế bào tùy chỉnh mới là ví dụ. Khi bạn tạo ra một kiểu tế bào theo ví dụ, bạn ...

Làm thế nào để Xoá Cells và Dữ liệu trong Excel 2010 - núm vú

Làm thế nào để Xoá Cells và Dữ liệu trong Excel 2010 - núm vú

Trong Excel 2010, khi bạn cần xóa dữ liệu, xóa định dạng trong việc chọn ô hoặc xóa toàn bộ ô, hàng hoặc cột, bạn có nhiều tuỳ chọn. Excel có thể thực hiện hai loại xóa bỏ các tế bào trong một bảng tính: xóa dữ liệu ô và xóa các tế bào. Xoá bỏ các nội dung của ô Xoá các ô chỉ xóa hoặc bỏ các ô của ô ...

Làm thế nào để chỉnh sửa một nguồn dữ liệu của biểu đồ trong Excel 2010 - núm vú

Làm thế nào để chỉnh sửa một nguồn dữ liệu của biểu đồ trong Excel 2010 - núm vú

Sau khi tạo một biểu đồ trong Excel 2010, bạn có thể cần phải thay đổi dải dữ liệu nguồn là cơ sở cho biểu đồ. Hộp thoại Chọn nguồn dữ liệu cho phép bạn chọn một phạm vi nguồn khác cho một biểu đồ hiện có. Bạn cũng có thể sử dụng hộp thoại này để chuyển đổi hàng và ...

Lựa chọn của người biên tập

Các mẹo để Xử lý các vấn đề về Word trên ASVAB

Các mẹo để Xử lý các vấn đề về Word trên ASVAB

Các thử nghiệm aSVAB thường lãng phí rất nhiều thời gian đọc và đọc lại các vấn đề từ như thể câu trả lời có thể tiết lộ cho họ một phép lạ nào đó; tuy nhiên, giải quyết vấn đề từ toán học một cách chính xác yêu cầu bạn thực hiện một loạt các bước được tổ chức: Đọc hoàn toàn vấn đề. Tìm ra câu hỏi đang đặt ra. Đào tạo những người có liên quan ...

Cố gắng Câu hỏi Câu hỏi Câu hỏi về bốn loại Câu hỏi về ASVAB-núm vú

Cố gắng Câu hỏi Câu hỏi Câu hỏi về bốn loại Câu hỏi về ASVAB-núm vú

Phần của ASVAB sẽ hỏi bạn các câu hỏi để kiểm tra khả năng hiểu các đoạn văn ngắn. Các câu hỏi Câu hỏi Câu hỏi về ASVAB thường có một trong bốn hình thức: Tìm kiếm thông tin cụ thể Nhận biết ý chính Xác định ý nghĩa của từ trong ngữ cảnh Vẽ một ý nghĩa từ ý tưởng đã nêu Mỗi loại câu hỏi ...

Bạn sẽ tìm thấy những câu hỏi nào về Kiến thức về Toán học Subtest of the ASVAB? - con số

Bạn sẽ tìm thấy những câu hỏi nào về Kiến thức về Toán học Subtest of the ASVAB? - con số

Trên CAT-ASVAB, bài kiểm tra kiến ​​thức về Toán học bao gồm 16 câu hỏi bao gồm toàn bộ mảng toán học bậc trung học, và bạn có 20 phút để hoàn thành bài kiểm tra. (Nếu bạn đang dùng phiên bản giấy của ASVAB, bạn phải trả lời 25 câu hỏi trong vòng 24 phút.) Bạn không nhất thiết phải vội vã từng tính toán, nhưng ...