Add-In A-Tools - Truy vấn (lọc), soạn thảo và quản trị dữ liệu Excel qua mạng (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Sorry, mình nhầm. Đáng lẽ phải nháy đúp chuột nhưng mình chỉ click nên chỉ ra list validation mà không ra bảng chọn theo đúng demo. :D
 
Bạn mô tả chức năng "Nhập liệu nâng cao" không chạy được như thế nào? Hình ảnh báo lỗi?
Bạn cho mình hỏi thêm là trong file mình dùng công thức tạo mảng động để tự cập nhật khi thêm dữ liệu vào bảng Data, nhưng A-tools không hỗ trợ thì phải. Khi tạo công thức SQL không hiện Data trong bảng chọn.
Capture1.JPG
Capture2.JPG
 
Dữ liệu nguồn để chạy SQL không được dùng NAME mà NAME đó bên trong là hàm lấy dữ liệu bạn nhé. Dữ liệu phải hiển thị trên bảng tính dù dùng hàm nào thì vẫn được.
 
1524232494210.png1524232494210.png1524232509793.png1524232521687.png1524232532533.pngmọi người ơi xem giúp em với, ko bt công thức của em sai ở đâu nữa. Mong mọi người giúp đỡ, em cảm ơn nhiều ạ
 
Bạn gửi file cho mọi người xem luôn nhé, có thể sẽ giúp được bạn
 
Ở sheet chi tiết, tham số của BS_SQL "HR = NO; INSERT = YES" => không có dấu ; ở sau INSERT = YES nhé bạn
 

File đính kèm

Untitled.jpg
Lỗi menu A-Tools bị mờ thế này à. Em đã thử các cách về sửa lỗi mất menu A-Tools mà không được, ở Office 2003 thì hiện, nhưng 2007 và 2010 thì không ạ.
Untitled.jpg

Trong Disabled Items thì chả có gì để Enable

Untitled1.jpg

Nhờ thầy có hướng để khắc phục.
 
Lần chỉnh sửa cuối:
View attachment 195150
Lỗi menu A-Tools bị mờ thế này à. Em đã thử các cách về sửa lỗi mất menu A-Tools mà không được, ở Office 2003 thì hiện, nhưng 2007 và 2010 thì không ạ.
View attachment 195150

Trong Disabled Items thì chả có gì để Enable

View attachment 195151

Nhờ thầy có hướng để khắc phục.

Lỗi menu hiển thị không đầy đủ xảy ra ở một số máy có vấn đề về Office. Bạn hãy cài Add-in A-Tools mới nhất từ trang bluesofts.net về (bản 7.4.0.8) xem được không nhé.
 
Mình đã thử bỏ dấu ; nhưng công thức vẫn không chạy, mọi người xem giúp, mình cảm ơn nhiều

Tôi đã sửa lỗi công thức cho bạn rồi nhé.. Các lỗi đã sửa:
1. Ô điều kiện về từ ngày đến ngày của bạn bị sai địa chỉ trong công thức
2. Liệt kê các cột sau từ khóa GROUP BY bị sai (thiếu tên cột). Cột DMHANG.TonDK phải sửa là SUM(DMHANG.TONDK)
3. Khi tạo cột "Ghi chú" cuối cùng của từ khóa SELECT, dấu " của bạn là dấu nháy kép, phải sửa là '' (hai dấu nháy đơn).

Tôi đã sửa cho bạn công thức chạy ok, bạn tải về xem. Bạn nên chịu khó học ít nhất hai bài tôi dạy video miến phí tại đây để sau này làm chủ công thức:

Kho NXT.png
 

File đính kèm

Lỗi menu hiển thị không đầy đủ xảy ra ở một số máy có vấn đề về Office. Bạn hãy cài Add-in A-Tools mới nhất từ trang bluesofts.net về (bản 7.4.0.8) xem được không nhé.
Vâng, e cài bản mới này rồi ạ. Vẫn vậy.

Untitled.jpg
Enable thì báo số 0 ạ.
Untitled2.jpg

Có ai bị như em không...??!! Khắc phục với.
 
Lỗi menu hiển thị không đầy đủ xảy ra ở một số máy có vấn đề về Office. Bạn hãy cài Add-in A-Tools mới nhất từ trang bluesofts.net về (bản 7.4.0.8) xem được không nhé.
Khi cài Office em chọn mục Custom: 7custom.png
và chỉ chọn Word, Access, Excel, Tools..., còn lại là bỏ. Vậy liệu có phải vì lý do không cài Full nên Add-in A-Tools bị mờ??
 
Vâng, e cài bản mới này rồi ạ. Vẫn vậy.

View attachment 195183
Enable thì báo số 0 ạ.
View attachment 195184

Có ai bị như em không...??!! Khắc phục với.

EM làm cho anh bước này xem thế nào nhé.

31957768_1647728115323158_7691793515214274560_n.png
 
Công ty Bluesofts chính thức phát hành Add-in A-Tools v8.0
v8.0.0.0: 15-05-2018
+ Nâng cấp: Tương thích với Office 2019
+ Nâng cấp: Chức năng "NHẬP LIỆU NÂNG CAO":
- Tốc độ tìm và lọc dữ liệu trong danh sách nhanh gấp nhiều lần các phiên bản cũ. Có thể lọc dữ liệu trên 100.000 dòng trong vài mili giây.
- Nhập giá trị tìm kiếm mượt hơn, không có độ trễ, không bị lỗi soạn thảo.
- Cho phép thay đổi vị trí các cột hiển thị trong danh sách tìm kiếm. Cách làm: khi danh sách hiển thị, nhấn chuột vào tên cột giữ chuột và di đến vị trí cần đặt rồi nhả chuột - Draw and Drop.
- Tốc độ sắp xếp các cột nhanh hơn nhiều bản cũ. Sắp xếp đúng với cột là con số, ngày tháng, văn bản (phiên bản cũ sắp xếp theo văn bản).
- Tìm kiếm không phân biệt chữ thường, HOA có dấu.
- Sử dụng phím mũi tên lên/xuống để di chuyển các dòng, nhấn F4 để chọn vào sheet.

+ Sửa: lỗi mở chức năng DBKEY. Lỗi này chi r xảy ra ở phiên bản 7.4.0.8
+ Sửa: lỗi hàm VTC khi lồng vào bên trong các hàm thống kê COUNT, MIN, MAX, STDEV, AVG
+ Sửa: lỗi mở file Access trong đường dẫn có dấu. Lỗi này chỉ xảy ra ở một số máy tính.
(*) Download:
http://bluesofts.net/giai-phap-phan...-thao-va-quan-tri-du-lieu-excel-qua-mang.html
 
Thưa thầy Tuân! Sau khi cài win mới thì Office của em đã nhận đầy đủ A-Tools. Vậy là lỗi không nhận do Win chứ không phải do Office.
Nhân đây em xin hỏi thêm về vấn này: File excel của e chạy VBA, trong đó code có đường dẫn đến một số file ảnh và file âm thanh để ở một thư mục khác. Khi chạy trên máy chủ thì rõ ràng là ko vấn đề gì, nhưng khi ở các máy thành phần khi chạy file excel thì phải như thế nào để code chạy vẫn nhận đầy đủ file ảnh và file âm thanh ở thư mục máy chủ ạ.
 
Thưa thầy Tuân! Sau khi cài win mới thì Office của em đã nhận đầy đủ A-Tools. Vậy là lỗi không nhận do Win chứ không phải do Office.
Nhân đây em xin hỏi thêm về vấn này: File excel của e chạy VBA, trong đó code có đường dẫn đến một số file ảnh và file âm thanh để ở một thư mục khác. Khi chạy trên máy chủ thì rõ ràng là ko vấn đề gì, nhưng khi ở các máy thành phần khi chạy file excel thì phải như thế nào để code chạy vẫn nhận đầy đủ file ảnh và file âm thanh ở thư mục máy chủ ạ.

Hi em. Em muốn mở được các file ảnh và âm thanh thì em tạo một folder riêng trên máy chủ, share nó để máy tính khác trong mạng LAN có thể xem được. Khi đó file Excel của em nhúng các ảnh , file âm thanh bằng các "//foldershare/folder/anh.jpg"
 
Hi em. Em muốn mở được các file ảnh và âm thanh thì em tạo một folder riêng trên máy chủ, share nó để máy tính khác trong mạng LAN có thể xem được. Khi đó file Excel của em nhúng các ảnh , file âm thanh bằng các "//foldershare/folder/anh.jpg"
Dạ vâng, có nghĩa là tạo 1 folder riêng, bỏ hết các file âm thanh và ảnh vào folder riêng này. Nhúng lại đường dẫn âm thanh và ảnh trong code excel đến folder riêng đó. Sau đó share folder riêng này cho các máy khách đúng không ạ?
Em xin hỏi là share folder theo cách này à thầy: Untitled.jpg
 
Lần chỉnh sửa cuối:
Dạ vâng, có nghĩa là tạo 1 folder riêng, bỏ hết các file âm thanh và ảnh vào folder riêng này. Nhúng lại đường dẫn âm thanh và ảnh trong code excel đến folder riêng đó. Sau đó share folder riêng này cho các máy khách đúng không ạ?
Em xin hỏi là share folder theo cách này à thầy: View attachment 196357
ĐÚng me nhé!
 
Phiên bản mới Add-in A-Tools 2018 - v8.1
Công ty CP BLUESOFTS chính thức phát hành phiên bản Add-in A-Tools v8.1.0.0: 28-05-2018. Các bạn có thể phản bản Free hoặc Pro trên trang chủ http://bluesofts.net nhé

(*)THÔNG TIN PHIÊN BẢN MƠI:
+ Thêm: menu "Nhập liệu nâng cao", thêm chức năng "Nhận tập tin hoặc ảnh (picture)"
+ Thêm: menu "Nhập liệu nâng cao", thêm chức năng "Tạo ảnh từ vùng chọn"
+ Thêm: menu "Nhập liệu nâng cao", thêm chức năng "Xóa các ảnh tạo ra bởi các hàm BS_PIC, BS_SQL,..."
+ Thêm: chức năng "Nhập liệu nâng cao", thêm tab "Picture" cho phép xác định các cột chứa ảnh, cách hiển thị ảnh trong danh sách tìm kiếm.
+ Thêm: chức năng "Nhập liệu nâng cao" cho phép hiển thị ảnh theo hai chế độ trong mỗi dòng của danh sách tìm kiếm hoặc hiển thị phía phải danh sách.
+ Thêm: hàm BS_PIC cho phép tạo ảnh với tham số tên tập tin ảnh đưa vào. Các ảnh sử dụng: JPG, PNG, BMP, ICO, GIF
Ví dụ:
=BS_PIC("c:\data\anh cua toi.jpg")
+ Nâng cấp: hàm BS_SQL cho phép lọc và hiển thị ảnh. Chỉ cần thêm khai báo tùy chọn PIC=n1,n2,... (n1,n2,... là vị trí các cột chưa ảnh, tọa độ tính từ 0)
Ví dụ:
=BS_SQL("SELECT TEN,NGAYSINH, PICTURE, PICTURE2 FROM DATA" , "PIC=2,3")
2, 3 tương ứng với các cột PICTURE, PICTURE2
+ Nâng cấp: hàm BS_SQL không chạy nếu tham số đưa vào đang là #N/A. Cải tiến này quan trọng khi tham số đưa vào hàm BS_SQL lấy từ một hàm BS_SQL khác không thông báo lỗi trong lúc cập nhật dở dang.


Hướng dẫn đưa ảnh vào danh sách tìm kiếm có ảnh
 
Lần chỉnh sửa cuối:
Thấy ảnh gái ở bài #524 đẹp xinh quá
Bác chủ topic có thể bật mí các bước, thuật toán, công cụ để tạo ra công cụ như ATOOL để anh em diễn đàn học hỏi theo tinh thần chia sẻ được không? Cám ơn bác có công cụ hay - tất nhiên chỉ là học tạp cùng tiến bộ, bác không lo không bán được hàng đâu (vì Excel luôn thay đổi cập nhật, nên chuyên thì không ngại)
 
Thấy ảnh gái ở bài #524 đẹp xinh quá
Bác chủ topic có thể bật mí các bước, thuật toán, công cụ để tạo ra công cụ như ATOOL để anh em diễn đàn học hỏi theo tinh thần chia sẻ được không? Cám ơn bác có công cụ hay - tất nhiên chỉ là học tạp cùng tiến bộ, bác không lo không bán được hàng đâu (vì Excel luôn thay đổi cập nhật, nên chuyên thì không ngại)

Hình đẹp mới có thêm hứng thú sáng tạo đấy bác à :)

A-Tools có 10 năm nay rồi, các tính năng, hàm cách thức vận hành thì anh em ứng dụng cũng như lập trình đều biết khá rõ. Mình không ngại về chia sẻ cái gì làm ra nó cũng như đặc tính sản phẩm. Vì công nghệ có hiện đại thế nào vẫn do con người sáng tạo bên trong...

A-Tools được lập trình bằng ngôn ngữ Delphi, từ thời Delphi 7. Nếu ai học Pascal sẽ học ngôn ngữ này rất nhanh. Về kỹ thuật thì VB6, Delphi, .NET đều viết được hết (trừ VB6 thì không nên vì không hỗ trợ unicode). Nhưng điều quan trọng nhất là phải hiểu thấu Excel vận hành như thế nào để có thể chạy "đồng điệu" cùng nó. Kỹ thuật lâp trình nhúng ứng dụng với Excel là rất dễ vì Excel là loại ứng dụng "Application Server" nên lập trình dạng COM sẽ tương tác được nó. Trong .NET cũng cho phép làm việc này. Những kỹ thuật như hàm BS_SQL, BS_VLOOKUP, Nhập liệu nâng cao, Chia sẻ mạng đều là các kỹ thuật rất khó đòi hỏi theo năm tháng mới hoàn thiện được nó với kỹ thuật lập trình API, mạng... Để làm ra sản phẩm này thì phải rất đam mê và dành rất nhiều thời gian, tâm huyết mới hoàn thành được vì nó là thứ không có trên mạng hoặc mình tìm không ra từ những năm 2007.

A-Tools lập trình theo hướng mở nên người dùng có thể lập trình cùng. Ứng dụng được các công nghệ mà nó đang có....
Ví dụ lập trình hàm mảng:

Lập trình mạng
 
Lần chỉnh sửa cuối:
Thầy ơi, cho e hỏi thêm về việc file excel có chạy form (trong form có nhiều nút xử lý dữ liệu). Khi 2 máy chạy form thì việc xử lý các dữ liệu trên form có ảnh hưởng gì với nhau không ạ? (Vì e chưa kịp lấy thêm máy để test nên hỏi thầy trước ạ.)
 
Thầy ơi, cho e hỏi thêm về việc file excel có chạy form (trong form có nhiều nút xử lý dữ liệu). Khi 2 máy chạy form thì việc xử lý các dữ liệu trên form có ảnh hưởng gì với nhau không ạ? (Vì e chưa kịp lấy thêm máy để test nên hỏi thầy trước ạ.)

Không ảnh hưởng em nhé. A-Tools phía máy chủ tự phân phối trước và sau hợp lý.
 
Hình đẹp mới có thêm hứng thú sáng tạo đấy bác à :)

A-Tools có 10 năm nay rồi, các tính năng, hàm cách thức vận hành thì anh em ứng dụng cũng như lập trình đều biết khá rõ. Mình không ngại về chia sẻ cái gì làm ra nó cũng như đặc tính sản phẩm. Vì công nghệ có hiện đại thế nào vẫn do con người sáng tạo bên trong...

A-Tools được lập trình bằng ngôn ngữ Delphi, từ thời Delphi 7. Nếu ai học Pascal sẽ học ngôn ngữ này rất nhanh. Về kỹ thuật thì VB6, Delphi, .NET đều viết được hết (trừ VB6 thì không nên vì không hỗ trợ unicode). Nhưng điều quan trọng nhất là phải hiểu thấu Excel vận hành như thế nào để có thể chạy "đồng điệu" cùng nó. Kỹ thuật lâp trình nhúng ứng dụng với Excel là rất dễ vì Excel là loại ứng dụng "Application Server" nên lập trình dạng COM sẽ tương tác được nó. Trong .NET cũng cho phép làm việc này. Những kỹ thuật như hàm BS_SQL, BS_VLOOKUP, Nhập liệu nâng cao, Chia sẻ mạng đều là các kỹ thuật rất khó đòi hỏi theo năm tháng mới hoàn thiện được nó với kỹ thuật lập trình API, mạng... Để làm ra sản phẩm này thì phải rất đam mê và dành rất nhiều thời gian, tâm huyết mới hoàn thành được vì nó là thứ không có trên mạng hoặc mình tìm không ra từ những năm 2007.

A-Tools lập trình theo hướng mở nên người dùng có thể lập trình cùng. Ứng dụng được các công nghệ mà nó đang có....
Ví dụ lập trình hàm mảng:

Lập trình mạng
Lập trình mạng kiểu này của bác quá phụ thuộc vào công cụ của bác - không từ cơ bản- nên ai muốn học và tìm hiểu thì chua vì tất cả bị che giấu rồi (nói thật có thể mất lòng). Vậy rõ là khó áp dụng để học tìm hiểu.
 
Lập trình mạng kiểu này của bác quá phụ thuộc vào công cụ của bác - không từ cơ bản- nên ai muốn học và tìm hiểu thì chua vì tất cả bị che giấu rồi (nói thật có thể mất lòng). Vậy rõ là khó áp dụng để học tìm hiểu.

Vâng. Cuộc sống vốn phụ thuộc vào nhau mà. Chúng ta đang phụ thuộc Windows, Excel đấy chứ. A-Tools làm ra cho người sử dụng cuối (end user) hoặc người phát triển, cần tools, làm công thức và phối hợp làm việc. không phải dành cho người học tìm hiểu VBA. Những người đã chọn atools đê ứng dụng có thể lập trình cùng nó để tạo ra sản phẩm của chính họ, và đương nhiên bây giờ là phụ thuộc A-Tools. Google tạo ra API của Google Map cho hàng ngàn ứng dụng khai thác bản đồ (như Uber, Grap họ đâu có thể làm ra cái bản đồ...), API Google sheet ... Nếu ai đó muốn tự mình làm ra tất cả thì đó là năng lực của họ, còn không thì lại là bài toán phụ thuộc. Hàng 1000 người không có mấy người tự làm VBA được đâu anh. Nhưng gần 1000 người đó đang cần giải phóng công việc để họ đạt mục tiêu khác. Điều này rõ ràng thôi, không có gì là mất lòng cả. Cảm ơn anh quan tâm!
 
Ý kiến cá nhân e:
E nghĩ rằng mỗi một ứng dụng, add-in hay tools của người xây dựng và phát triển đều chứa đựng trong đó những kiến thức, tầm nhìn và công sức tạo ra nó. Việc chia sẻ cách thức phương pháp làm ra những sản phẩm ấy cũng còn tùy mỗi cá nhân của họ, có người sẵn sàng cũng có người không, mà e thấy đối với những sản phẩm ứng dụng đơn giản hay không phức tạp thì dễ dàng chia sẻ cách thức phương pháp làm còn với những sản phẩm đã tốn công sức và tâm huyết trí tuệ thì rõ ràng họ phải yêu cầu được trả một phần xứng đáng với sản phẩm đó. Dù sao theo em người dùng được sử dụng 1 sản phẩm free mà đã mất gần 10 năm để phát triển thì cũng là điều quá tốt rồi.
 
cho e hỏi hàm BS_VND(); đọc số tiền có đơn vị là ngàn, cuối cùng là chữ chẵn; vậy giờ muốn sửa thì sao a. cái acchelp thì sửa được, cái này thì ko biết
 
cho e hỏi hàm BS_VND(); đọc số tiền có đơn vị là ngàn, cuối cùng là chữ chẵn; vậy giờ muốn sửa thì sao a. cái acchelp thì sửa được, cái này thì ko biết
cho e hỏi hàm BS_VND(); đọc số tiền có đơn vị là ngàn, cuối cùng là chữ chẵn; vậy giờ muốn sửa thì sao a. cái acchelp thì sửa được, cái này thì ko biết

Bạn làm theo hướng dẫn ở video dưới đây. Đó là hướng dẫn của AccHelper nhưng nó tương tự như A-Tools (vào ổ C:\A-Tools\).
 
Add-in A-Tools v8.2.0.0: 14-06-2018 (New!)
Video giới thiệu 5 đột phá mới của A-Tools 8.2
(Download)​
PHẦN 1: NHẬP LIỆU NÂNG CAO
+ Sửa: lỗi một số dòng máy tính nhập liệu nâng cao bị chậm khi kết nối với A-Tools máy chủ. Từ bảnA-Tools v8.2 đã khắc phục việc này.
+ Nâng cấp: Nhập Liệu Nâng Cao, danh sách tìm kiếm không giới hạn số cột. Phiên bản cũ giới hạn tối đa 15 cột.
+ Nâng cấp: Nhập Liệu Nâng Cao, tốc độ nhanh hơn phiên bản 8.1.
+ Nâng cấp: Nhập Liệu Nâng Cao, dữ liệu nguồn cho phép tối đa lên đến 1.048.576 (bằng số dòng trong sheet Excel), tốc độ vẫn nhanh và không bị tràn bộ nhớ.
+ Nâng cấp: Nhập Liệu Nâng Cao, CHO PHÉP TÌM KIẾM NHIỀU ĐIỀU KIỆN - GIẢI PHÁP TÍM KIẾM ĐỘT PHÁ CỦA A-TOOLS.
(*) Các phép toán sử dụng:=,>,<,>=,<=,<>)
Cho phép vừa tìm tự do như các bản 8.1 về trước, vừa tìm theo biểu thức với các điều kiện kết hợp VÀ/AND, HOẶC/OR.
Ví dụ: trong bảng dữ liệu nguồn, cột vị trí 1 là "Tỉnh", cộ vị trí 2 là "Doanh thu".
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" ta mô tả chuỗi là:
1=hà nội,sài gòn
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" và doanh thu >50000 ta mô tả chuỗi là:
1=hà nội,sài gòn, 2>50000
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" và doanh thu >50000 và < 80000 ta mô tả chuỗi là:
1=hà nội,sài gòn, 2>50000, 2<80000

- Nếu muốn tìm dữ liệu "Hà Nội" ở các cột 1,3,5 thì chuỗi mô tả như sau:
1,3,5=hà nội
- Nếu muốn tìm dữ liệu "Hà Nội", "nam định", "hải phòng","sài gòn" ở các cột 1,3,5 thì chuỗi mô tả như sau:
1,3,5=hà nội,hà Nội, nam định, hải phòng,sài gòn
(số cột bên trái phép toán so sánh và số giá trị tìm (bên phải phép toán so sánh) KHÔNG BẰNG NHAU là điều kiện HOẶC)
- Nếu muốn tìm dữ liệu "Hà Nội" và doanh thu 10000 có thể tìm theo cách mô tả của hàm BS_VLOOKUP chuỗi mô tả như sau:
1,2=hà nội,10000
Giải thích: 1: là vị trí cột Tỉnh; 2 là vị trí cột Doanh thu
(số cột bên trái phép toán so sánh và số giá trị tìm (bên phải phép toán so sánh) BẰNG NHAU là điều kiện VÀ)
- Nếu muốn tìm tương đối - dùng ký tự đại diện "*". Ví dụ cột tỉnh bắt đầu là "nội" , cột doanh thu bắt lầu là số 5 , chuỗi mô tả là:
1=*nội,2=5*
...
Cứ như vậy, chúng ta có thể kết hợp tìm nhiều giá trị trên nhiều cột với các logic tìm kiếm AND, OR một cách giản đơn nhất, nhanh nhất
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tìm giá trị là lỗi (#N/A, #NAME?, #VALUE!, #REF!,#NUM,...)
chỉ cần giá trị là: #err
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tìm giá trị là rỗng/BLANK
chỉ cần nhập giá trị là: null
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tự khai báo lại quy ước tìm giá trị lỗi với #err hoặc null với giá trị người dùng tự quy định.
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tự điều chỉnh độ cao của dòng trong danh sách tìm kiếm - phù hợp với tính năng hiển thị Wrap Text
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép hiển thị ảnh trong dòng và hiển thị ảnh phía phải màn hình
(bản 8.1 chỉ được chọn hiển thị trong dòng hoặc một phía cửa sổ bên phải)

PHẦN 2: HÀM BS_PIC VÀ CHỨC NĂNG TẠO ẢNH
+ Nâng cấp: các bức ảnh tạo ra bởi hàm BS_PIC hoặc từ menu A-Tools cho phép nhấp chuột vào sẽ hiển thị của sổ xem ảnh phóng to, chopheps zoom, resize cửa sổ.
+ Nâng cấp: mỗi sheet sẽ lưu lại trạng thái cửa sổ hình ảnh tách biệt - giúp cho việc thiết kế hiển thị ảnh trên nhiều sheet linh hoạt.
+ Nâng cấp: dùng phím tắt với ảnh:
- Chèn ảnh: CTRL+SHIFT+T
- Tạo ảnh từ vùng chọn (bôi đen): CTRL+SHIFT+R
- Xóa ảnh trong sheet tạo bởi A-Tools : CTRL+SHIFT+Y
-> Con trỏ đặt chỉ một ô thì xóa tất cả ảnh tạo ra bởi A-Tools trong sheet
-> Con trỏ bôi đen nhiều ô thì là xóa tất cả ảnh trong vùng chọn (bôi đen)
-> Chọn một ảnh, thì xóa tất cả ảnh tạo có chung nguyên tắc khi tạo nó. Tức là ảnh tạo tạo từ công thức nào sẽ xóa riêng ở khu vực đó.
+ Nâng cấp: hàm BS_PIC có thêm tham số OPTIONS và là tùy chọn. Bây giờ cấu trúc của hàm là:
=BS_PIC(FullName, [Options])
+ FullName: là đường dẫn đầy đủ hoặc thu gọn tập tin có định dạng ảnh (picture).
Ví dụ: =bs_pic("c:\pictures\me.jpg")
+ Options: Có thể bỏ qua. Nếu khai báo: OW=n để giảm chiều rộng của ảnh với đơn vị pixel so với ô chứa; OH=n giảm chiều cao của ảnh với đơn vị pixel so với ô chứa;
Ví dụ: =bs_pic("c:\pictures\me.jpg" , "OW=2; OH=2")
ảnh được tạo ra sẽ giảm chiều rộng và chiều cao 2 pixel

Có thể khai báo sự kiện sau khi đã tạo ảnh thành công là: OnAfterUpdate=CreatePic
khai báo trên là chạy sự kiện VBA có tên là "CreatePic" (tên có thể thay đổi tùy ý), mẫu thủ tục sự kiện là:

Sub CreatePic(Byval rng As Range, Byval Pic As Picture, Byval FullName As String)
'rng: là vùng ô mà bức ảnh nằm trong
'Pic: là biến đối tượng trỏ vào bức ảnh vừa tạo
'FullName: là tên đầy đủ tập tin tạo ảnh
'...các lệnh khai thác của bạn
End Sub


Ví dụ: =bs_pic("c:\pictures\me.jpg" , "OW=2; OH=2; OnAfterUpdate=CreatePic")
ví dụ trên tạo ảnh, giảm chiều rộng và chiều cao 2 pixel so với ô chứa công thức, chạy sự kiện "CreatePic".

PHẦN 3: HÀM BS_SQL VỚI HÀM VTC
+ Nâng cấp: Hàm VTC với tham số thứ 5 cho phép tạo biểu thức sắp xếp. Ví dụ tạo báo cáo tổng hợp số tiền của khách hàng theo từng tháng, năm trong KHO

SELECT MA_KH, VTC('Tháng ' & Month(NGAY_CT)&'/'&Year(NGAY_CT), SUM,THANH_TIEN , , Year(NGAY_CT)*12+Month(NGAY_CT) )
FROM KHO
GROUP BY MA_KH

(Ví dụ trên, tham số thứ 5 là Year(NGAY_CT)*12+Month(NGAY_CT) là tạo biểu thức số để sắp xếp tăng dần, nếu là Year(NGAY_CT)*12+Month(NGAY_CT) DESC là giảm dần (có thêm DESC)
Khi tên cột là các con số ghép lại, việc sắp xếp sẽ theo kiểu văn bản nên tháng 1, tháng 10 sẽ nằm gần nhau, vì thế phải tạo biểu thức số để sắp xếp.
Biểu thức tổng con số như là Year(NGAY_CT)*12+Month(NGAY_CT) sẽ tạo ra con số sắp xếp và ta được: Tháng 1, Tháng 2,.. Tháng 12 )
+ Sửa: hàm DATA trong BS_SQL lỗi khi dùng tọa độ cột là 0, ví dụ DATA(row,0).

Video hướng dẫn nhập liệu kết hợp tìm kiếm trong danh sách có nhiều điều kiện trên nhiều cột
(Download)​
 
Add-in A-Tools v8.2.0.0: 14-06-2018 (New!)
Video giới thiệu 5 đột phá mới của A-Tools 8.2
(Download)​
PHẦN 1: NHẬP LIỆU NÂNG CAO
+ Sửa: lỗi một số dòng máy tính nhập liệu nâng cao bị chậm khi kết nối với A-Tools máy chủ. Từ bảnA-Tools v8.2 đã khắc phục việc này.
+ Nâng cấp: Nhập Liệu Nâng Cao, danh sách tìm kiếm không giới hạn số cột. Phiên bản cũ giới hạn tối đa 15 cột.
+ Nâng cấp: Nhập Liệu Nâng Cao, tốc độ nhanh hơn phiên bản 8.1.
+ Nâng cấp: Nhập Liệu Nâng Cao, dữ liệu nguồn cho phép tối đa lên đến 1.048.576 (bằng số dòng trong sheet Excel), tốc độ vẫn nhanh và không bị tràn bộ nhớ.
+ Nâng cấp: Nhập Liệu Nâng Cao, CHO PHÉP TÌM KIẾM NHIỀU ĐIỀU KIỆN - GIẢI PHÁP TÍM KIẾM ĐỘT PHÁ CỦA A-TOOLS.
(*) Các phép toán sử dụng:=,>,<,>=,<=,<>)
Cho phép vừa tìm tự do như các bản 8.1 về trước, vừa tìm theo biểu thức với các điều kiện kết hợp VÀ/AND, HOẶC/OR.
Ví dụ: trong bảng dữ liệu nguồn, cột vị trí 1 là "Tỉnh", cộ vị trí 2 là "Doanh thu".
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" ta mô tả chuỗi là:
1=hà nội,sài gòn
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" và doanh thu >50000 ta mô tả chuỗi là:
1=hà nội,sài gòn, 2>50000
- Nếu muốn tìm dữ liệu là "Hà Nội" hoặc "Sài Gòn" và doanh thu >50000 và < 80000 ta mô tả chuỗi là:
1=hà nội,sài gòn, 2>50000, 2<80000

- Nếu muốn tìm dữ liệu "Hà Nội" ở các cột 1,3,5 thì chuỗi mô tả như sau:
1,3,5=hà nội
- Nếu muốn tìm dữ liệu "Hà Nội", "nam định", "hải phòng","sài gòn" ở các cột 1,3,5 thì chuỗi mô tả như sau:
1,3,5=hà nội,hà Nội, nam định, hải phòng,sài gòn
(số cột bên trái phép toán so sánh và số giá trị tìm (bên phải phép toán so sánh) KHÔNG BẰNG NHAU là điều kiện HOẶC)
- Nếu muốn tìm dữ liệu "Hà Nội" và doanh thu 10000 có thể tìm theo cách mô tả của hàm BS_VLOOKUP chuỗi mô tả như sau:
1,2=hà nội,10000
Giải thích: 1: là vị trí cột Tỉnh; 2 là vị trí cột Doanh thu
(số cột bên trái phép toán so sánh và số giá trị tìm (bên phải phép toán so sánh) BẰNG NHAU là điều kiện VÀ)
- Nếu muốn tìm tương đối - dùng ký tự đại diện "*". Ví dụ cột tỉnh bắt đầu là "nội" , cột doanh thu bắt lầu là số 5 , chuỗi mô tả là:
1=*nội,2=5*
...
Cứ như vậy, chúng ta có thể kết hợp tìm nhiều giá trị trên nhiều cột với các logic tìm kiếm AND, OR một cách giản đơn nhất, nhanh nhất
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tìm giá trị là lỗi (#N/A, #NAME?, #VALUE!, #REF!,#NUM,...)
chỉ cần giá trị là: #err
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tìm giá trị là rỗng/BLANK
chỉ cần nhập giá trị là: null
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tự khai báo lại quy ước tìm giá trị lỗi với #err hoặc null với giá trị người dùng tự quy định.
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép tự điều chỉnh độ cao của dòng trong danh sách tìm kiếm - phù hợp với tính năng hiển thị Wrap Text
+ Nâng cấp: Nhập Liệu Nâng Cao, cho phép hiển thị ảnh trong dòng và hiển thị ảnh phía phải màn hình
(bản 8.1 chỉ được chọn hiển thị trong dòng hoặc một phía cửa sổ bên phải)

PHẦN 2: HÀM BS_PIC VÀ CHỨC NĂNG TẠO ẢNH
+ Nâng cấp: các bức ảnh tạo ra bởi hàm BS_PIC hoặc từ menu A-Tools cho phép nhấp chuột vào sẽ hiển thị của sổ xem ảnh phóng to, chopheps zoom, resize cửa sổ.
+ Nâng cấp: mỗi sheet sẽ lưu lại trạng thái cửa sổ hình ảnh tách biệt - giúp cho việc thiết kế hiển thị ảnh trên nhiều sheet linh hoạt.
+ Nâng cấp: dùng phím tắt với ảnh:
- Chèn ảnh: CTRL+SHIFT+T
- Tạo ảnh từ vùng chọn (bôi đen): CTRL+SHIFT+R
- Xóa ảnh trong sheet tạo bởi A-Tools : CTRL+SHIFT+Y
-> Con trỏ đặt chỉ một ô thì xóa tất cả ảnh tạo ra bởi A-Tools trong sheet
-> Con trỏ bôi đen nhiều ô thì là xóa tất cả ảnh trong vùng chọn (bôi đen)
-> Chọn một ảnh, thì xóa tất cả ảnh tạo có chung nguyên tắc khi tạo nó. Tức là ảnh tạo tạo từ công thức nào sẽ xóa riêng ở khu vực đó.
+ Nâng cấp: hàm BS_PIC có thêm tham số OPTIONS và là tùy chọn. Bây giờ cấu trúc của hàm là:
=BS_PIC(FullName, [Options])
+ FullName: là đường dẫn đầy đủ hoặc thu gọn tập tin có định dạng ảnh (picture).
Ví dụ: =bs_pic("c:\pictures\me.jpg")
+ Options: Có thể bỏ qua. Nếu khai báo: OW=n để giảm chiều rộng của ảnh với đơn vị pixel so với ô chứa; OH=n giảm chiều cao của ảnh với đơn vị pixel so với ô chứa;
Ví dụ: =bs_pic("c:\pictures\me.jpg" , "OW=2; OH=2")
ảnh được tạo ra sẽ giảm chiều rộng và chiều cao 2 pixel

Có thể khai báo sự kiện sau khi đã tạo ảnh thành công là: OnAfterUpdate=CreatePic
khai báo trên là chạy sự kiện VBA có tên là "CreatePic" (tên có thể thay đổi tùy ý), mẫu thủ tục sự kiện là:

Sub CreatePic(Byval rng As Range, Byval Pic As Picture, Byval FullName As String)
'rng: là vùng ô mà bức ảnh nằm trong
'Pic: là biến đối tượng trỏ vào bức ảnh vừa tạo
'FullName: là tên đầy đủ tập tin tạo ảnh
'...các lệnh khai thác của bạn
End Sub


Ví dụ: =bs_pic("c:\pictures\me.jpg" , "OW=2; OH=2; OnAfterUpdate=CreatePic")
ví dụ trên tạo ảnh, giảm chiều rộng và chiều cao 2 pixel so với ô chứa công thức, chạy sự kiện "CreatePic".

PHẦN 3: HÀM BS_SQL VỚI HÀM VTC
+ Nâng cấp: Hàm VTC với tham số thứ 5 cho phép tạo biểu thức sắp xếp. Ví dụ tạo báo cáo tổng hợp số tiền của khách hàng theo từng tháng, năm trong KHO

SELECT MA_KH, VTC('Tháng ' & Month(NGAY_CT)&'/'&Year(NGAY_CT), SUM,THANH_TIEN , , Year(NGAY_CT)*12+Month(NGAY_CT) )
FROM KHO
GROUP BY MA_KH

(Ví dụ trên, tham số thứ 5 là Year(NGAY_CT)*12+Month(NGAY_CT) là tạo biểu thức số để sắp xếp tăng dần, nếu là Year(NGAY_CT)*12+Month(NGAY_CT) DESC là giảm dần (có thêm DESC)
Khi tên cột là các con số ghép lại, việc sắp xếp sẽ theo kiểu văn bản nên tháng 1, tháng 10 sẽ nằm gần nhau, vì thế phải tạo biểu thức số để sắp xếp.
Biểu thức tổng con số như là Year(NGAY_CT)*12+Month(NGAY_CT) sẽ tạo ra con số sắp xếp và ta được: Tháng 1, Tháng 2,.. Tháng 12 )
+ Sửa: hàm DATA trong BS_SQL lỗi khi dùng tọa độ cột là 0, ví dụ DATA(row,0).

Video hướng dẫn nhập liệu kết hợp tìm kiếm trong danh sách có nhiều điều kiện trên nhiều cột
(Download)​
Dear Mr.Tuân,
Tôi đang cài đặt và sử dụng A-Tools pro bản A-Tools Free 8.2.0.1, updated on 10/07/2018.
Tuy nhiên, hiện nay, tôi không thể sử dụng các control trong lập trình VBA với các control của a-tools.
Xin A cho hỏi giải pháp khắc phục tình trạng trên.
Chờ tin A.

Tks & Rgds,
Chí Thanh
 
Dear Mr.Tuân,
Tôi đang cài đặt và sử dụng A-Tools pro bản A-Tools Free 8.2.0.1, updated on 10/07/2018.
Tuy nhiên, hiện nay, tôi không thể sử dụng các control trong lập trình VBA với các control của a-tools.
Xin A cho hỏi giải pháp khắc phục tình trạng trên.
Chờ tin A.

Tks & Rgds,
Chí Thanh
Để lập trình với các controls BSAC, trong trường hợp bạn không thể mở Additional Controls trong VBA thì bạn tải file tại BLuesofts đọc kỹ hướng dẫn là làm được nhé.
http://bluesofts.net/download/phan-mem/phan-mem-mien-phi/
 
Dear Mr.Tuân,

Tôi đã tải và làm theo hướng dẫn.
Tuy nhiên, khi dùng các control của a-tools thì vẫn bị lỗi.
Ví dụ 1: BSButton thì excel sẽ tự khởi động lại
Ví dụ 2:
- Dùng BSTreeView sẽ bị như các lỗi trong 4 file đính kèm (theo thứ tự xuất hiện từ 1-4)
- Sau đó màn hình trở về cửa sổ VB Editor.
- Nếu cố nhấn vào Window Form thì sẽ xuất hiện các lỗi từ trong ảnh Msg2 - Msg3 - Msg4
Chi tiết A check dùm file đính kèm.

Rất mong A giải đáp và hỗ trợ sớm.
Bài đã được tự động gộp:

Để lập trình với các controls BSAC, trong trường hợp bạn không thể mở Additional Controls trong VBA thì bạn tải file tại BLuesofts đọc kỹ hướng dẫn là làm được nhé.
http://bluesofts.net/download/phan-mem/phan-mem-mien-phi/
Dear Mr.Tuân,

Tôi đã tải và làm theo hướng dẫn.
Tuy nhiên, khi dùng các control của a-tools thì vẫn bị lỗi.
Ví dụ 1: BSButton thì excel sẽ tự khởi động lại
Ví dụ 2:
- Dùng BSTreeView sẽ bị như các lỗi trong 4 file đính kèm (theo thứ tự xuất hiện từ 1-4)
- Sau đó màn hình trở về cửa sổ VB Editor.
- Nếu cố nhấn vào Window Form thì sẽ xuất hiện các lỗi từ trong ảnh Msg2 - Msg3 - Msg4
Chi tiết A check dùm file đính kèm.

Rất mong A giải đáp và hỗ trợ sớm.
 

File đính kèm

  • Msg1.jpg
    Msg1.jpg
    103 KB · Đọc: 3
  • Msg2.jpg
    Msg2.jpg
    103.3 KB · Đọc: 3
  • Msg3.jpg
    Msg3.jpg
    97.5 KB · Đọc: 3
  • Msg4.jpg
    Msg4.jpg
    101.5 KB · Đọc: 3
Dear Mr.Tuân,

Tôi đã tải và làm theo hướng dẫn.
Tuy nhiên, khi dùng các control của a-tools thì vẫn bị lỗi.
Ví dụ 1: BSButton thì excel sẽ tự khởi động lại
Ví dụ 2:
- Dùng BSTreeView sẽ bị như các lỗi trong 4 file đính kèm (theo thứ tự xuất hiện từ 1-4)
- Sau đó màn hình trở về cửa sổ VB Editor.
- Nếu cố nhấn vào Window Form thì sẽ xuất hiện các lỗi từ trong ảnh Msg2 - Msg3 - Msg4
Chi tiết A check dùm file đính kèm.

Rất mong A giải đáp và hỗ trợ sớm.
Bài đã được tự động gộp:


Dear Mr.Tuân,

Tôi đã tải và làm theo hướng dẫn.
Tuy nhiên, khi dùng các control của a-tools thì vẫn bị lỗi.
Ví dụ 1: BSButton thì excel sẽ tự khởi động lại
Ví dụ 2:
- Dùng BSTreeView sẽ bị như các lỗi trong 4 file đính kèm (theo thứ tự xuất hiện từ 1-4)
- Sau đó màn hình trở về cửa sổ VB Editor.
- Nếu cố nhấn vào Window Form thì sẽ xuất hiện các lỗi từ trong ảnh Msg2 - Msg3 - Msg4
Chi tiết A check dùm file đính kèm.

Rất mong A giải đáp và hỗ trợ sớm.

Rất có thể hệ thống file rác máy bạn đã làm lỗi. Bạn làm các bước sau:
1. Đóng Excel và các chương trình trong bộ Office
2. Vào menu "Run" hoặc trên thanh địa chỉ "File Explorer" dán lệnh
%appdata%\Microsoft\Forms
Enter
Sau đó bạn xóa các file trong này đi.
3. Mở lại Excel, nạo thư viện xem thế nào?
 
Rất có thể hệ thống file rác máy bạn đã làm lỗi. Bạn làm các bước sau:
1. Đóng Excel và các chương trình trong bộ Office
2. Vào menu "Run" hoặc trên thanh địa chỉ "File Explorer" dán lệnh
%appdata%\Microsoft\Forms
Enter
Sau đó bạn xóa các file trong này đi.
3. Mở lại Excel, nạo thư viện xem thế nào?
Dear Mr.Tuân,
Tôi đã làm theo hướng dẫn.
Lỗi trên vẫn xuất hiện.
Chi tiết các thao tác, A vui lòng xem file đính kèm.

Note: các control bị lỗi bao gồm các control liên quan đến Button, List, Tree.

Tks & Rgds,
Chí Thanh
 

File đính kèm

  • Msg5.jpg
    Msg5.jpg
    87.9 KB · Đọc: 1
  • Msg6.jpg
    Msg6.jpg
    197.5 KB · Đọc: 1
  • Msg7.jpg
    Msg7.jpg
    208.1 KB · Đọc: 1
  • Msg8.jpg
    Msg8.jpg
    200.3 KB · Đọc: 1
Dear Mr.Tuân,
Tôi đã làm theo hướng dẫn.
Lỗi trên vẫn xuất hiện.
Chi tiết các thao tác, A vui lòng xem file đính kèm.

Note: các control bị lỗi bao gồm các control liên quan đến Button, List, Tree.

Tks & Rgds,
Chí Thanh

Bạn gửi ID và Pass UltraViewer mình kiểm tra trực tiếp xem thế nào?
Số đt: 0904210337
 
Chào anh Tuân!
Em có làm bảng Báo cáo quỹ lương, nay cho em hỏi, hàm BS_SQL có thể tách riêng theo từng tháng không (Như file mẩu)
Em cũng đã dùng hàm VTC để tách riêng cột tháng ra, nhưng hơi khó xem.
Rất mong được anh hướng dẫn để tạo ra được mẩu Báo cáo dễ xem nhất ạ
Link
Trân trọng cảm ơn anh!
 
Chào anh Tuân
Hiện tại em đang dùng A-Tools nhưng gặp lỗi bị giới hạn dòng (hình ảnh)

1537499151217.png
Mong anh hướng dẫn khắc phục lỗi
Cám ơn anh
 
Mình cần tư vấn kĩ hơn về A Tool thì có thể liên hệ với tác giả qua phương tiện nào ạh ?
Thanks
 
Xin Chao
Cho minh hỏi là A tools có chức năg track changes như khi share workbook của excel ko
Thanks mọi người
 
Xin Chao
Cho minh hỏi là A tools có chức năg track changes như khi share workbook của excel ko
Cảm ơn mọi người

Track Change trong A-Tools không giống như của Excel. Nó dùng để theo dõi con trỏ của máy khác trong mạng đang chọn vào ô nào trên bảng tính Excel.
 
Giới thiệu phiên bản mới Add-in A-Tools 2019. Đây là một đột phá rất tuyệt vời cho báo cáo Excel và chia sẻ Excel qua mạng
Hàm VTC tạo cột tự động để thống kê
Các phương pháp gộp dữ liệu nhiều sheet, nhiều file Excel ngắn gọn.
Các tính năng mới và sửa lỗi trong phiên bản Add-in A-Tools 2019
v9.0.0.5: 15-01-2019 (Add-in A-Tools 2019)
(*) Sửa chức năng INSERT/DELETE (Chèn/Xóa) dòng, cột, vùng khi chia sẻ qua mạng tốt hơn.
- Không yêu câu ngắt kết nối khi người dùng đang soạn thảo trong sheet có lệnh chèn/xóa.
- Kiểm soát đồng bộ dữ liệu và cấu trúc sheet tốt hơn.
- Trong tình huống lỗi chèn, xóa máy chủ có thông báo cho máy khách rõ ràng lý do trước khi ngắt kết nối.
- Việc chèn/xóa với sheet chia sẻ qua mạng người dùng bây giờ có thể dùng mà không có một hạn chế nào!
- Sửa lỗi chọn (bôi đen) cả dòng trong file có định dạng 2007 làm máy chủ cập nhật dữ liệu bị chậm. Phiên bản v9.0.0.5 đã khắc phục.

Add-in A-Tools 2019 v9.0.0.5 không yêu cầu phải nâng cấp cả máy chủ và máy khác (các phiên bản từ 7.x trở lên vẫn kết nối được).
Tuy nhiên, nếu đồng bộ cả máy chủ và máy khách cùng phiên bản v9.0.0.5 là tốt nhất!

v9.0.0.4: 11-01-2019 (Add-in A-Tools 2019)
(*) Đây là phiên bản nâng cấp tập trung vào tính năng chia sẻ Excel qua mạng và các hàm liên quan đến mạng!
(*) Các khách ahngf dùng tính năng chia sẻ mạng nên nâng cấp phiên bản 9.0.0.4 là tốt nhất!
(*) Các khách hàng đã đăng ký bản quyền Add-in A-Tools 2019 PRO nâng cấp là miễn phí!

+ Nâng cấp: cho phép chèn, xóa cột, dòng , vùng dữ liệu khi chia sẻ file Excel qua mạng. Các phiên bản cũ khuyến cáo không nên dùng.
Phiên bản mới làm rất tốt cơ chế này, tuy nhiên Bluesofts vẫn khuyến cáo hạn chế tối đa việc thay đổi cấu trúc bảng tính Excel khi đang chia sẻ nhiều người.
+ Nâng cấp: chức năng cập nhật định dạng qua mạng chạy tốt hơn.
+ Nâng cấp: hàm BS_PIC() mở được các link ảnh từ website có cơ chế mã hóa bằng SSL.
Phiên bản cũ lỗi một số trường hợp này nên khi bấm chuột vào ảnh trên sheet không lên khung hình lớn.
+ Thêm: Thêm hàm trong thư viện lập trình mạng BSNetwork.InsertOrDeleteRange() cho phép lập trình VBA để chèn, xóa dòng, cột, vùng dữ liệu trên bảng tính Excel khi chia sẻ qua mạng.
+ Thêm: Menu "Help Online" thêm hướng dẫn các chức năng mới của Add-in A-Tools 2019.
+ Sửa: lỗi cập nhật định dạng từ máy chủ, một số máy khách không cập nhật.
+ Sửa: lỗi hàm BSNetwork.RunMacroInServer() nếu gửi mảng dữ liệu có giá trị ngày, giờ lên máy chủ nếu máy chủ đó thiết lập dấu chấm, dấu phảy kiểu Việt Nam (dấu chấm ngăn cách hàng ngàn)

v9.0.0.3: 06-01-2019 (Add-in A-Tools 2019)
+ Thêm: thêm khai báo thuộc tính "DEF=giá trị" trong tham số OPTIONS. Hàm BS_SQL với hàm VTC sẽ trả về "giá trị" thay cho giá trị NULL khi hàm VTC tính toán.
Ví dụ:
= BS_SQL("SELECT MA_KH, VTC(MA_VLSPHH,SUM,SLG) AS [TỔNG SLG] FROM KHO GROUP BY MA_KH", "DEF=0")
Hàm VTC sẽ tạo tự động các cột ứng với các mã khách hàng (MA_KH), cột SLG được tính tổng, cột mã khách hàng nào không có số liệu sẽ tự điền số 0.
Phiên bản cũ là NULL. Việc này có ý nghĩa nếu hàm BS_SQL với hàm VTC tạo ra bảng trung gian để làm dữ liệu nguồn, giá trị 0 đảm bảo cấu trúc cột định dạng Number.

+ Nâng cấp: Hàm BS_JOIN sẽ gộp dữ liệu từ máy chủ (qua mạng), không cần phải khai báo "SVR=YES" nếu công thức có hàm BS_JOIN đang ở trong file chia sẻ từ máy chủ.
Nguyên tắc này giống với hàm BS_SQL.

+ Nâng cấp: Hàm GROUP_CONCAT cho phép chạy qua mạng. Tức hàm BS_SQL có tham số "SVR=YES" ở tham số OPTIONS
(Phiên bản cũ lỗi nếu hàm BS_SQL lấy dữ liệu từ máy chủ).

+ Sửa: Hàm GROUP_CONCAT lỗi khi câu lệnh SQL có từ khóa ORDER BY. Phiên bản mới - v9.0.0.3 đã fix.
+ Sửa: Hàm GROUP_CONCAT lỗi khi danh sách liệt kê có độ dài > 255 ký tự. Phiên bản mới - v9.0.0.3 đã fix và cắt lại 255 ký tự nếu nó vượt quá.

v9.0.0.2: 01-01-2019 (Add-in A-Tools 2019)
+ Nâng cấp: Hàm VTC cho phép liệt kê giá trị với điều kiện như LIKE %. Ví dụ SELECT ... VTC(loai_phieu IN('N%', 'X%')... (xem tài liệu hàm VTC)
+ Nâng cấp: Hàm BS_FILES cho phép hiển thị tùy biến nhiều cột thông tin, sắp xếp, cách hiển thị file và folder,...
(xem file "Function BS_FILES list all files in a path.xls")
+ Nâng cấp: Hàm BS_JOIN cho phép gộp từ nhiều file đa năng hơn, có thể lấy từ các file trong máy chủ (gộp file qua mạng).
=BS_JOIN("SELECT ... FROM..", "Danh sách file", "SVR=YES")
SVR=YES là để báo A-Tools lấy dữ liệu trong máy chủ. Nếu không có tham số này thì lấy từ máy khách (máy đang chạy công thức)

(Xem file "C:\A-Tools\HELP & DEMOS\JOIN FILES\Function BS_JOIN append data from multi files - gộp dữ liệu từ nhiều file.xls")
+ Nâng cấp: Hàm BS_VLOOKUP, BS_FILLARRAY, BS_SORTARRAY,... cho phép khai báo HR=YES; nếu mảng giá trị có dòng đầu tiên là tiêu đề.

+ Nâng cấp: Hàm TEXT để định dạng trong FOOTER của group luôn định nghĩa dấu "," cho hàng ngàn, "dấu "." cho thập phân luôn đúng khi Excel đổi định dạng.
+ Nâng cấp: Nhập liệu nâng cao cho phép nhấn CTRL+C để copy dữ liệu trong danh sách tìm kiếm
+ Nâng cấp: Thêm các file ví dụ về hàm VTC, BS_JOIN, BS_FILES
+ Nâng cấp: Các class đối tượng lập trình: BSNetwork, BSFormulaArray, BSFormulaInfo
bổ sung một số hàm và thuộc tính hỗ trợ lập trình mạng và hàm mảng trong Excel tiện lợi hơn.

+ Thêm: Thêm thủ tục sự kiện BSFormulaArray.OnCallBackMethod() để hỗ trợ lập trình tạo mảng kết quả cho hàm trong nhưng trường hợp đặc biệt.
+ Thêm: Thêm thủ tục load tham số Options BSFormulaInfo.UpdateOptions(chuỗi options). Hỗ trợ viết hàm mảng cùng A-Tools với cách viết tham số Options giống hàm BS_SQL.
Options = "HR=YES; INSERT = YES"
BSFormulaInfo.UpdateOptions(Options)

+ Thêm: Thêm hàm API GetPropertyValue() để nhận giá trị của thuộc tính.
Options = "HR=YES; COLS = 5"
GetPropertyValue("HR") => YES
GetPropertyValue("COLS") => 5

+ Thêm: Hàm API AppendArray2D : để nối mảng 2D vào dòng cuối của mảng trước.
+ Thêm: Hàm API AppendArray2DCols : để nối mảng 2D vào cột cuối của mảng trước.
+ Thêm: Hàm API Tạo và ghi giá trị theo cấu trúc XML: ValueToXml, ValueFromXml

+ Sửa: Lỗi "The connection for viewing your linked Microsoft Excel worksheet was lost" xuất hiện trong hàm BS_JOIN của phiên bản cũ đã được sửa tại phiên bản mới - 9.0.0.2.
+ Sửa: Xóa tiêu đề cột có dấy " ' " tạo ra bởi hàm VTC.
+ Sửa: Xóa trạng thái group khi hàm BS_SQL không dùng thuộc tính group
+ Sửa: Nhập liệu nâng cao cho phép nhập giá trị trống. Phiên bản cũ bị bỏ qua.
+ Sửa: Lỗi thư viện BSNetwork khi gửi giá trị về thời gian.

v9.0.0.1: 23-12-2018 (Add-in A-Tools 2019)
+ Nâng cấp: Hàm VTC đa năng hơn:
1. Cho phép liệt kê nhiều cột tính toán ứng với một một giá trị tách làm cột.
2. Cho phép lồng hàm thống kê vào các cột tính toán.
3. Cho phép chỉ định danh sách của người dùng kết hợp hàm IN(), vì thế có thể lồng câu lệnh SQL lấy danh sách cho hàm IN().
4. Cho phép tính bù trừ với hàm SUBT(cột chứa điều kiện, 'Giá trị làm tăng', 'Giá trị làm giảm')
(Xem SoKetoanSQL.xls tại sheet "TH NXT" và file "Report with multi columns - Function VTC - Báo cáo tách cột.xls" để hiểu rõ hơn).

+ Sửa lỗi Excel 64 bit. Khi báo cáo liên kết điều kiện tới địa chỉ ô trên bảng tính, nếu thay đổi giá trị ở địa chỉ ô này sẽ bị báo lỗi,
người dùng phải đặt con trỏ vào khu vực báo cáo nhấn CTRL+SHIFT+A. Bản 9.0.0.1 fix lỗi này.

v9.0.0.0: 20-12-2018 (Add-in A-Tools 2019)
(*) Phiên bản Add-in A-Tools 2019 - v9.0 cấp lại license. Nếu bạn muốn nâng cấp từ phiên bản cũ thì liên hệ với Công ty CP Bluesofts: http://bluesofts.net

PHẦN 1: THÊM MỚI CÁCH TẠO BÁO CÁO VỚI HÀM BS_SQL
+ Thêm mới: Hàm BS_SQL cho phép tạo báo cáo phân nhóm giống như Pivot nhưng linh hoạt và cơ động theo cách của A-Tools
- Hàm BS_SQL bây giờ có tham số thứ 3 là Format
=BS_SQL SQL, [OPTIONS], [FORMAT]
Tham số FORMAT được dùng để chỉ vùng có mẫu định dạng cho các nhóm dữ liệu (FOOTER)
- Tham số OPTIONS có thêm 2 hàm
+ GROUP(danh sách vị trí cột cần nhóm)
+ FOOTER(danh sách các cột cần tổng hợp, biểu thức bô tả, tính toán mỗi nhóm dữ liệu)
Các biến hệ thống:
+ GROUPID: nhận giá trị từ 1,2... cho biết dòng footer thuộc cấp nhóm nào
+ NEWGROUP: nhận giá trị TRUE/FALSE cho biết dòng dữ liệu có thuộc dòng đầu tiên của nhóm không?
+ ROWTYPE: nhận giá trị:
0: body - dữ liệu trình bày chi tiết, cấp bé nhất
1: header - dòng tiêu đề của nhóm
2: footer - dòng tổng hợp của nhóm
3: grand total - dòng tổng hợp cuối báo cáo
+ LASTROW: cho biết dòng liền trước
+ LASTVALUE: cho biết giá trị liền trước của cột hiện thời
Trong FOOTER cho phép xây dựng công thức Excel và lồng hàm VBA trong ngoặc vuông. Tên các cột dữ liệu để trong <>
3=Số hóa đơn là: [COUNTA(<SO_CT>)]
(cột 3 sẽ hiển thị nội dung "Số hóa đơn là: 20", nếu hàm COUNTA() trả về 20)
+ SD: là thuộc tính cho phéo báo cáo nhóm hiển thị ở cấp group nào: nhận giá trị từ 1,2...
+ FM: là thuộc tính cho phép tự động định dạng hay không, nhận giá trị TRUE (ngầm định - tự động định dạng footer), FALSE là không định dạng.

- Người dùng cần xem tài liệu hướng dẫn tại tập tin "BS_SQL_Create report with grouping and footer.xls"

+ Thêm mới: Hàm BS_SQL thêm hàm bổ trợ trong từ khóa SELECT với hàm GROUP_CONCAT
- Hàm GROUP_CONCAT cho phép ghéo nối/liệt kê cá giá trị của một cột bất kỳ liên quan đến các cột thống kê.
A-Tools cho phép sử dụng nhiều hàm GROUP_CONCAT ở các cột trong từ khóa SELECT
- Hướng dẫn sử dụng tại tập tin "BS_SQL_function_GROUP_CONCAT.xls"

+ Nâng cấp: tốc độc chạy hàm BS_SQL tăng gấp 10 lần so với các phiên bản cũ

PHÂN 2: CẢI TIẾN VÀ SỬA LỖI
1. NHẬP LIỆU NÂNG CAO:
1.1. Nâng cấp: Tốc độ tìm kiếm tăng gấp 10 lần so với phiên bản trước đây - Đã nhanh nay còn nhanh hơn!
Tìm kiếm hàng triệu dòng dữ liệu nguồn tốc độ vẫn đảm bảo nhanh.
1.2. Cập nhật nguồn dữ liệu ngay khi có sự sửa đổi
1.3. Không giới hạn số cột hiển thị và nhập liệu.
1.4. Bàn phím nhập liệu nhạy hơn. Ví dụ CTRL+A bản cũ chập trờn, sau khi làm động tác gì đó có thể nhập liệu không tìm kiếm và mở lại form tìm kiếm.
1.5. Dữ liệu nhập không bị sai định dạng số, ngày tháng, các ký tự trống. Lỗi này tồn tại ở các phiên bản cũ vì bản cũ lấy giá trị theo định dạng của Excel. Bản mới lấy chính xác từ nguồn dữ liệu.
1.6. Lần đầu tạo nhập liệu nâng cao tự động căn chỉnh cột đúng theo định dạng. Những cột số tiền, số lượng tự động căn phải. Các cột format WrapText sẽ tự xuống dòng.
Nếu dữ liệu nguồn người dùng tự căn chỉnh thì A-Tools sẽ lấy định dạng của người dùng - Bỏ qua chế độ tự động.
1.7. Tìm kiếm ảnh cập nhật ảnh ngay khi tìm kiếm thành công. Bản cũ tìm kiếm xong phải nhấm chuột vào dòng trong list mới hiển thị ảnh.
1.8. Màn hình có ảnh bên phải, nhấp đúp chuột sẽ tách ra cửa sổ ảnh rộng và tùy ý căn chỉnh size, trong khi cửa sổ ảnh hiển thị không cần phải đóng vẫn chọn tiếp các mục trong danh sách.
1.9. Thêm nút "Clear All" trong màn hình thiết lập Nhập liệu nâng cao, cho phép xóa toàn bộ thiết lập trong sheet đang mở một cách sạch sẽ!
1.10. Sửa lỗi đóng danh sách tìm kiếm khi gõ chữ có dấu với Unikey bản cũ (Lỗi Unikey4.0)

2. CHIA SẺ MẠNG
2.1. Fix toàn bộ các lỗi thao tác trong quản trị máy chủ khi sử dụng Excel 2013, 2016.
2.2. Sửa thời gian khóa dữ liệu về đơn vị phút, bản cũ đơn vị là giây :)

3. HÀM và BÁO CAO
3.1. Các hàm tạo bảng chạy đúng khi dữ nguồn đưa vào chỉ 1 ô/1 giá trị.
3.2. Sửa lỗi bsfunction.Bs_SQL lỗi trong Excel 64 bit.
3.3. Hàm mảng tạo trong VBA và thư viện A-Tools chạy đúng với lệnh kiểm tra fa.GetResultInBackupList(...) vì vậy không bị treo máy khi có lệnh chèn, xóa dòng cột bên dữ liệu nguồn.
3.4. Hàm BS_PIC xem được ảnh từ địa chỉ/link (URL) trên web mà không cần phải bổ sung hai ký tự "//".
3.5. Hàm BS_PIC khi hiển thị ảnh trên mạng, bấm chuột vào ảnh màn hình lớn hiện ra vẫn xem được ảnh. Bản cũ lỗi trong trường hợp này.

4. MENU A-TOOLS VÀ BẢO MẬT
4.1. Sửa lỗi một số máy không hiển thị menu A-Tools. Đây là lỗi xung đột các bản Office cài đè lẫn lộn.
(Lỗi menu chỉ hiển thị vài nút bấm là khác và đã sửa ở phiên bản lần trước).
(*) Download
 
Xin gửi tới các thành viên phiên bản mới Add-in A-Tools v9.1.0.1: 18-03-2019 (Add-in A-Tools 2019)
(*) Các dòng phiên bản v9.x nâng cấp FREE!
+ Sửa: khắc phục lỗi "Không mở được vùng dữ liệu từ máy chủ" - "Can not open/copy file". Khách hàng nâng cấp máy chủ lên 9.1.0.1 là được.
+ Sửa: Báo cáo phân nhóm với tham số GROUP() khi các cột trong từ khóa SELECT không có giá trị số lượng/số tiền.
+ Sửa: Lỗi cập nhật dữ liệu nguồn trong Nhập liệu nâng cao trên máy chủ và máy khách khi chia sẻ mạng. Lỗi xảy ra ở phiên bản 9.1.0.0.

v9.1.0.0: 11-03-2019 (Add-in A-Tools 2019)
(*) Các dòng phiên bản v9.x nâng cấp FREE!
+ Thêm: Thêm tùy chọn "Tính toán lại công thức sau khi mở vùng" tại máy khách. Ngầm định được tắt để đảm bảo mở vùng Excel từ máy chủ có nhiều
+ Thêm: hàm BS_SQL nhanh hơn rất nhiều.
+ Thêm: Thêm mới hàm BS_Hlookup cho phép tìm kiếm theo chiều ngang (tìm theo cột), giá trị trả về là các cột mà các dòng thỏa mãn các điều kiện.
Cách dùng tương tự như hàm BS_Vlookup cũng tìm kiếm nhiều điều kiện VÀ, HOẶC nhưng ngược chiều nhau.
+ Nâng cấp: Các hàm trả về mảng động như BS_SQL, BS_VLOOKUP, BS_HLOOKUP,... co giãn hai chiều cùng với dòng và cột tổng cộng (Grand Total).
+ Nâng cấp: Hàm BS_JOIN hiển thị trạng thái % đang gộp từng file dưới thanh trạng thái.
+ Nâng cấp: Hàm BS_JOIN tốc độ gộp nhanh hơn phiên bản cũ.
+ Nâng cấp: Tốc độ máy khách mở file Excel từ máy chủ nhanh, với những file có hàm BS_SQL.
+ Nâng cấp: không cho phép chèn,xóa dòng, cột nếu phân quyền là "Chỉ đọc" nhưng vẫn cho Format nếu được cấp quyền.
Phiên bản cũ quyền xóa, chèn dòng hoặc cột dựa theo cấp quyền Format - "Định dạng".

+ Sửa: lỗi một số sheet khi cập nhật hàm MS_SQL trong cả file bởi CTRL+SHIFT+D hoặc từ menu.
+ Sửa: lỗi "Data type mistake..." của hàm BS_SQL trong một vài tình huống đặc biệt khi mở lần đầu.
+ Sửa: Nếu A-Tools đang chạy chức năng máy chủ ("Tạo máy chủ") thì hàm BS_VLOOKUP không chạy phía máy chủ.
+ Sửa: Lập trình VBA dùng hàm BS_VLOOKUP qua thư viện BSFunctions bị lỗi nếu tham số đưa vào hàm là mảng tạo bởi hàm VBA.Array().
+ Sửa: Khi tạo báo cáo phân nhóm - sử dụng GROUP(...) ở tùy chọn:
+ Lỗi không xóa format của khu vực dữ liệu chi tiết (nhóm con) khi co giãn vùng công thức.
+ Lỗi không thống kê ở cuối báo cáo -Grand Total nếu dùng công thức có hàm DATA() ở trùy chọn FOOTER(...).
+ Sửa: Lỗi chạy hàm BS_JOIN với một số file định dạng dữ liệu "đặc biệt".
+ Sửa: Trong menu "HELP ONLINE" có một số link lỗi.

v9.0.0.7: 19-02-2019 (Add-in A-Tools 2019)
+ Nâng cấp: hàm BS_SQL cho phép sử dụng thuộc tính SORT, TOP giống như trong hàm BS_VLOOKUP.
Khi dùng hàm BS_SQL sử dụng đến các hàm Excel, hàm tự tạo (UDF), hàm DATA thì cột có các hàm đó không dùng để ORDER BY được. Muốn làm được việc này phải dùng thuộc tính SORT=n (n là vị trí cột cần sắp xếp), TOP=n (chỉ lấy ra n là số dòng tiền).
+ Sửa: lỗi thuộc tính Insert trong class BSFormulaInfo.Insert (fi) với lập trình VBA

v9.0.0.6: 29-01-2019 (Add-in A-Tools 2019)
(*) Phiên bản v9.0.0.6 tập trung chủ yếu sửa lỗi hàm và các thư viện lập trình liên quan đến chạy mạng.
(*) Các dòng phiên bản v9.x nâng cấp FREE!
- Nâng cấp: cho phép bật, tắt trạng thái chọn vùng của các user đang hoạt động trên sheet/vùng.
- Nâng cấp: nếu sheet/vùng được thiết lập "Không cập nhật máy chủ" thì trạng thái chọn vùng của các user trong mạng lên sheet/vùng đó không hiển thị.
- Nâng cấp: bỏ chế độ cập nhật định dạng với loại số qua mạng .

- Sửa: lỗi chạy mạng với các hàm BS_SQL, BS_JOIN và các hàm trong thư viện lập trình BSNetwork.ExecSQL(), BSConnection.ExecSQL().
Lỗi xảy ra khi máy chủ và máy khách không cùng định dạng dấu chấm, dấu phảy trong định dạng Number của Control Panel.
Đây là lỗi chung trong các máy tính với các loại CSDL dùng đến ADO khi kết nối qua mạng, không chỉ riêng với A-Tools.
A-Tools v9.0.0.6 đã xử lý được hoàn toàn vấn đề này không cần người dùng phải đồng bộ kiểu định dạng số trong Control Panel của Windows.
(*) Nếu việc kết nối trong local - bản thân máy làm công thức thì không sao.)

- Sửa: lỗi tạo máy chủ nếu Excel chưa mở một workbook nào. Đây là trường hợp hãn hữu xảy ra với một số máy từ Excel 2013 trở lên.
- Sửa: lỗi không cho Insert/Delete nếu thực hiện lệnh tạo máy chủ. Lỗi này xảy ra từ phiên bản v9.0.0.5
(*) DOWNLOAD
 
Làm báo cáo bằng Add-in A-Tools



Trong Add-in A-Tools cho phép chúng ta lập trình VBA hay nói cách khác viết macro để chạy cùng hàm BS_SQL. Mục đích lập trình VBA cùng các sự kiện chạy BS_SQL để ta có thể thay đổi giá trị của phần tử mảng hoặc định dạng trước hoặc sau khi dữ liệu được đổ vào bảng tính.

Bạn mở file tại đường dẫn dưới đây để them cấu trúc các dạng thủ tục sự kiện
C:\A-Tools\HELP & DEMOS\A-Tools VBA Programming\BS_SQL OnEvents.txt

Đọc tại liệu "A-Tools_Query_Report_Help.pdf" trang 45. Cho phép chạy một macro trước khi cập nhật dữ liệu vào bảng tính.
Khai báo trong tham số OPTIONS của hàm BS_SQL: OnBeforeUpdate=DoBeforeUpdate
=BS_SQL(“chuỗi khai báo SQL”, “…;OnBeforeUpdate = DoBeforeUpdate)
Trong môi trường lập trình (VBE), viết thủ tục "DoBeforeUpdate" trong một module theo cấu trúc sau:

[GPECODE=vb]Sub DoBeforeUpdate(ByVal OldDataTable As Range, ByVal NewDataTable As Range, ByVal DataArray)
'Có thể đổi tên thủ tục
‘+ OldDataTable: là đối tượng quản lý vùng dữ liệu cũ (trước khi hàm BS_SQL chạy)
‘+ NewDataTable: là đối tượng quản lý vùng dữ liệu mới (sau khi hàm BS_SQL chạy)
'+ DataArray: la mảng 2 chiều. Các phần tử dòng và cột nhận giá trị từ 0
'Giá trị tại dòng 1 cột 2 của mảng là DataArray(1,2) , trên bảng tính Excel thì là giá trị của dòng 2 cột 3.
End Sub[/GPECODE]

Trong ví dụ của bạn tôi tạo một module sau đó làm các việc sau:
Dán đoạn khai báo hai hàm API của A-Tools, mục đích để thay đổi giá trị của phần tử mảng kết quả trả về.

[GPECODE=vb]Option Explicit

#If VBA7 Then
Declare PtrSafe Function GetFieldNames Lib "AddinATools.dll" (ByRef FieldNames) As Long
Declare PtrSafe Function SetDataValue Lib "AddinATools.dll" (ByVal Row As Long, ByVal Column As Long, ByVal Value As Variant) As Long
#Else
Declare Function GetFieldNames Lib "AddinATools.dll" (ByRef FieldNames) As Long
Declare Function SetDataValue Lib "AddinATools.dll" (ByVal Row As Long, ByVal Column As Long, ByVal Value As Variant) As Long
#End If[/GPECODE]

Viết macro "DoBeforeUpdate" dưới đây để thay đổi STT của bảng kết quả, STT chỉ tính khi giá trị cột "Chức vụ" khác trống.
[GPECODE=vb]Sub DoBeforeUpdate(ByVal OldDataTable As Range, ByVal NewDataTable As Range, ByVal DataArray)
'DataArray: la mang 2 chieu. Cac phan tu dong va cot nhat gia tri tu 0
'Gia tri tai dong 1 cot 2 = DataArray(1,2) , tren bang tinh thi la gia tri cua dong 2 cot 3

Const ColumnIndex = 0 'Cot STT (A)
Const ColumnCV = 6 'Cot Chuc Vu (G)
Dim Row, Index As Long

'MsgBox "OldDataTable:" & OldDataTable.Address & Chr(13) & "NewDataTable:" & NewDataTable.Address, , "OnBeforeUpdate"

For Row = LBound(DataArray, 1) To UBound(DataArray, 1)
If DataArray(Row, ColumnCV) <> "" Then
Index = Index + 1
SetDataValue Row, ColumnIndex, Index 'Ghi STT vao mang
Else
SetDataValue Row, ColumnIndex, ""
End If
Next Row

End Sub

[/GPECODE]

Công thức trong bảng tính Excel
Cũ là:
=bs_sql('In cong SP'!$A$10,"HR=NO; INSERT=YES")
Sửa thành:
=bs_sql('In cong SP'!$A$10,"HR=NO; INSERT=YES;OnBeforeUpdate=DoBeforeUpdate")

Với khả năng cho phép viết macro (VBA) chạy cùng thì Add-in A-Tools xử lý để làm báo cáo rất linh động. Đó là sự phối hợp sức mạng của 3 thứ: Add-in A-Tools + SQL + VBA.

Bạn tải file tôi làm và xem macro tôi viết sẽ hiểu ngay.

Chào anh Tuân!
Cho em hỏi, công thức đánh số thứ tự này chỉ đúng với tham số Option với HR = No, còn nếu để Yes thì công thức đánh STT bị sai, trường hợp này mình khác phục như thế nào ạ
 
Chào anh Tuân!
Cho em hỏi, công thức đánh số thứ tự này chỉ đúng với tham số Option với HR = No, còn nếu để Yes thì công thức đánh STT bị sai, trường hợp này mình khác phục như thế nào ạ

A-Tools có hàm đánh số thứ tự đúng cho các trường hợp HR=NO haowcj HR=YES. Em xem có nhầm ở chỗ nào không?
 
Cho em hỏi là, bản free nó có thể get được bao nhiêu dòng dữ liệu vậy add?

Bản Free get tối đa 200 dòng ra ngoài nhé, dữ liệu nguồn không giới hạn.
Bài đã được tự động gộp:


Vấn đề số thứ tự cảu em do em đặt tên bảng. EM phải đặt tên từ dòng tiêu đề.
 
Thầy ơi,
Thầy xem giúp công hàm của em sai ở chỗ nào mà ko chạy được với ạ. Em nghĩ là em sai ở phần điều kiện Where nhưng lại không biết sai thế nào. Mong thầy chỉ giúp. Em cảm ơn

="SELECT NGAY_PS, SO_CT, NGAY_CT, DIEN_GIAI,
IIF(TK_NO='"&C8&"',TK_CO,IIF(TK_CO=CELL(C8),TK_NO,'')) AS [TKDU],
IIF(TK_NO=CELL(C8),THANH_TIEN,0) AS [NO],
IIF(TK_CO=CELL(C8),THANH_TIEN,0) AS [CO]," &
"getMax(GetOnce(CELL(H14)-CELL(I14))+data(PrevRow,7)-data(PrevRow,8)+data(Row,5)-data(Row,6),0),
-getMin(GetOnce(CELL(H14)-CELL(I14))+data(PrevRow,7)-data(PrevRow,8)+data(Row,5)-data(Row,6),0) "&
"FROM DU_LIEU
WHERE (TK_NO=CELL(C8) OR TK_CO=CELL(C8)) AND (NGAY_PS>=CELL(NGAY_1)) AND NGAY_PS<=CELL(NGAY_2) "&IF(SCT_NKC_TEN_COT_II="","",IF(C9="",""," AND "&SCT_NKC_TEN_COT_II&"='"&C9&"'")) or IF(SCT_NKC_TEN_COT="","",IF(C9="",""," AND "&SCT_NKC_TEN_COT&"='"&C9&"'"))

Em làm dựa theo bài giảng A-Tool và file Sổ kế toán SQL của thầy ạ. Em cám ơn

217894
Bài đã được tự động gộp:

Thầy ơi,
Thầy xem giúp công hàm của em sai ở chỗ nào mà ko chạy được với ạ. Em nghĩ là em sai ở phần điều kiện Where nhưng lại không biết sai thế nào. Mong thầy chỉ giúp. Em cảm ơn

="SELECT NGAY_PS, SO_CT, NGAY_CT, DIEN_GIAI,
IIF(TK_NO='"&C8&"',TK_CO,IIF(TK_CO=CELL(C8),TK_NO,'')) AS [TKDU],
IIF(TK_NO=CELL(C8),THANH_TIEN,0) AS [NO],
IIF(TK_CO=CELL(C8),THANH_TIEN,0) AS [CO]," &
"getMax(GetOnce(CELL(H14)-CELL(I14))+data(PrevRow,7)-data(PrevRow,8)+data(Row,5)-data(Row,6),0),
-getMin(GetOnce(CELL(H14)-CELL(I14))+data(PrevRow,7)-data(PrevRow,8)+data(Row,5)-data(Row,6),0) "&
"FROM DU_LIEU
WHERE (TK_NO=CELL(C8) OR TK_CO=CELL(C8)) AND (NGAY_PS>=CELL(NGAY_1)) AND NGAY_PS<=CELL(NGAY_2) "&IF(SCT_NKC_TEN_COT_II="","",IF(C9="",""," AND "&SCT_NKC_TEN_COT_II&"='"&C9&"'")) or IF(SCT_NKC_TEN_COT="","",IF(C9="",""," AND "&SCT_NKC_TEN_COT&"='"&C9&"'"))

Em làm dựa theo bài giảng A-Tool và file Sổ kế toán SQL của thầy ạ. Em cám ơn

217894
Em gởi file đính kèm ạ.
 

File đính kèm

Lần chỉnh sửa cuối:
Xin kính chào Anh chị em và Bluesofts. Cảm ơn Bluesosfts rất nhiều vì add in atool thực sự tiện dụng và hiệu quả.
Có vấn đề ngày muốn nhờ BLS giúp ạ. Em có một bảng tổng hợp phân tích dữ liệu gồm nhiều sheet, dữ liệu ở các sheet có liên quan đến nhau bằng các hàm EX và hàm BS-SQL. ( so sánh, tìm kiếm, xuất dữ liệu). Khi em sử dụng chức năng kết nối qua mạng LAN để nhiều người cùng nhập dữ liệu thì add in atool không cho chia sẻ file này vì lý do file này " Chứa các công thức mảng được liên kết với các cửa sổ làm việc khác" ----theo google dịch a.
Em làm việc trong QĐ do vậy không tiện attach file đó lên, mong BLS chỉ cách khắc phục. Em cảm ơn ạ
 
Xin kính chào Anh chị em và Bluesofts. Cảm ơn Bluesosfts rất nhiều vì add in atool thực sự tiện dụng và hiệu quả.
Có vấn đề ngày muốn nhờ BLS giúp ạ. Em có một bảng tổng hợp phân tích dữ liệu gồm nhiều sheet, dữ liệu ở các sheet có liên quan đến nhau bằng các hàm EX và hàm BS-SQL. ( so sánh, tìm kiếm, xuất dữ liệu). Khi em sử dụng chức năng kết nối qua mạng LAN để nhiều người cùng nhập dữ liệu thì add in atool không cho chia sẻ file này vì lý do file này " Chứa các công thức mảng được liên kết với các cửa sổ làm việc khác" ----theo google dịch a.
Em làm việc trong QĐ do vậy không tiện attach file đó lên, mong BLS chỉ cách khắc phục. Em cảm ơn ạ

Em mở file này ra, vào menu “Data”-> Edit Link, kiểm tra các file lên kết, nếu không tồn tại thì giữ bỏ hoặc phải xác minh lại đường dẫn nhé. Atools khi chia sẻ file qua mạng nó kiểm tra liên kết phải thực sự tồn tại.
 
Em mở file này ra, vào menu “Data”-> Edit Link, kiểm tra các file lên kết, nếu không tồn tại thì giữ bỏ hoặc phải xác minh lại đường dẫn nhé. Atools khi chia sẻ file qua mạng nó kiểm tra liên kết phải thực sự tồn tại.
cảm ơn anh, em đã hiểu nguyên nhân, đã khắc phục được rồi ạ
 
Hi Mr Tuân
Anh cho mình hỏi mình muốn lấy các dòng ở Cột STT có Chữ và Số và không lấy dòng trắng thì Điều kiện khai báo như thế nào ?
STTMA_HHTEN_SAN_PHAMĐVTKHOI_LUONGDON_GIATHANH_TIEN
AH000ATIVI Acái
1​
1000​
1000​
1H0001TIVI 1cái
2​
2000​
4000​
2H0002TIVI 2cái
3​
3000​
9000​
H0002TIVI cái
3​
3000​
9000​
H0002TIVI cái
3​
3000​
9000​
H0002TIVI cái
3​
3000​
9000​
3H0003TIVI 3cái
4​
4000​
16000​
4H0004TIVI 4cái
5​
5000​
25000​
5H0005TIVI 5cái
6​
6000​
36000​
6H0006TIVI 6cái
7​
7000​
49000​
7H0007TIVI 7cái
8​
8000​
64000​
8H0008TIVI 8cái
9​
9000​
81000​
9H0009TIVI 9cái
10​
10000​
100000​
10H00010TIVI 10cái
11​
11000​
121000​
 
Hi Mr Tuân
Anh cho mình hỏi mình muốn lấy các dòng ở Cột STT có Chữ và Số và không lấy dòng trắng thì Điều kiện khai báo như thế nào ?
STTMA_HHTEN_SAN_PHAMĐVTKHOI_LUONGDON_GIATHANH_TIEN
AH000ATIVI Acái
1​
1000​
1000​
1H0001TIVI 1cái
2​
2000​
4000​
2H0002TIVI 2cái
3​
3000​
9000​
H0002TIVIcái
3​
3000​
9000​
H0002TIVIcái
3​
3000​
9000​
H0002TIVIcái
3​
3000​
9000​
3H0003TIVI 3cái
4​
4000​
16000​
4H0004TIVI 4cái
5​
5000​
25000​
5H0005TIVI 5cái
6​
6000​
36000​
6H0006TIVI 6cái
7​
7000​
49000​
7H0007TIVI 7cái
8​
8000​
64000​
8H0008TIVI 8cái
9​
9000​
81000​
9H0009TIVI 9cái
10​
10000​
100000​
10H00010TIVI 10cái
11​
11000​
121000​

Bạn làm như sau.
Giả thiết bảng đặt tên là data
=bs_sql(“SELECT * FROM data WHERE stt IS NOT NULL”)
 
Xin gửi tới các bạn phiên bản mới Add-in A-Tools v9.1.1.1 (ngày 01-07-2019)

atools9111.png

(Chi tiết lịch sử nâng nâng cấp các phiên bản tại đây)​

v9.1.1.1: 01-07-2019 (Add-in A-Tools 2019)
+ Nâng cấp (*): Máy chủ khi chia sẻ Excel qua mạng cho phép để chế độ SLEEP, các user trong mạng vẫn mở và đồng bộ dữ liệu cho nhau.
(Máy chủ để SLEEP nhưng phải được cắm điện - không chạy PIN). Việc này giúp máy chủ tiết kiện điện, các link kiện ngoại vi làm việc ít hơn.

+ Sửa: Máy khách khi mở vùng máy chủ không để lại màn mình trống. Tình huống này xảy ra với phiên bản cũ trên Excel 2013 trở đi,
do A-Tools tự đóng file trắng đang mở.

+ Sửa: nút "Đóng" vùng/sheet phía máy khách sẽ yêu cầu máy chủ sẽ tự động đóng file Excel có vùng đang chia sẻ đó. Nếu:
- Máy chủ đặt chế độ "Chỉ mở CSDL nếu mách khách yêu cầu"
- Không còn máy khách nào mở file Excel này nữa.

+ Sửa: việc đồng bộ dữ liệu và trạng thái vùng chọn của các user khi đang mở cùng một sheet tốt hơn với Office 2016, Office 365.
+ Sửa: chức năng Nhập liệu nâng cao chạy tốt hơn trên Excel 64-bit khi máy khách kết nối sheet excel ở máy chủ.
+ Sửa: lỗi Excel 64-bit thỉnh thoảng tự đóng khi mở file.
+ Sửa: máy khách bị ngắt kết nối nếu đang mở Validation List để chọn giá trị, có một user khác trong mạng Chat đến.

+ Sửa: Hàm BS_SQL với báo cáo phân nhóm. Giá trị của cột phân nhóm được giữ nguyên kiểu giá trị khi nó được ghi vào dòng cộng nhóm (Footer)
Việc này giúp bạn format hoặc dùng các hàm của Excel tính toán trên các cột phân nhóm linh động hơn.
Phiên bản cũ luôn đưa về dạng TEXT dù kiểu giá trị là số hoặc ngày tháng. Chỉ ghi ở dòng Footer còn dòng chi tiết vẫn đúng kiểu giá trị.

+ Thêm: Các thuộc tính DefaultValue(DEF), PicIsLink(LINK), RATIO, CellIsUnlocked được thêm vào các class thư viện lập trình VBA: BSFormulaInfo, BSUserRange.

v9.1.1.0: 20-06-2019 (Add-in A-Tools 2019)
+ Sửa: thuộc tính DEF=value không ổn định ở các phiên bản trước (lúc chạy lúc không).
+ Nâng cấp: Tập tin hướng dẫn sử dụng hàm VTC "Report with multi columns - Function VTC - Báo cáo tách cột.xls" chi tiết hơn.

v9.1.0.9: 12-06-2019 (Add-in A-Tools 2019)
+ Nâng cấp: Thiết lập vùng, sheet chia sẻ mạng từ máy chủ, cho phép tùy chọn khóa các ô trong sheet hay không (Locked).
Ngầm định: "Không khóa ô". Tức sheet được chia sẻ có protect nhưng vẫn cho nhập liệu.
Nếu bỏ chọn "Không khóa ô" thì sheet được protect và giữu những thiết lập "Locked", "Hidden" của người dùng.

+ Nâng cấp: Màn hình quản trị máy chủ, máy khách tự động hiển thị thông báo và link xem video hướng dẫn khi Excel mất Theme.
+ Sửa: Chức năng Nhập liệu nâng cao cập nhật dánh sách tìm kiếm tốt hơn khi mở nhiều file Excel có thiết lập tính năng này.

v9.1.0.8: 01-06-2019 (Add-in A-Tools 2019)
+ Nâng cấp: Tự khôi phục Theme. Khi người dùng nhận thấy giao diện cửa sổ của A-Tools không được bóng mượt có nghĩa là đã bị mất Theme.
Cách khắc phục: bạn chạy Excel dạng "Run Administrator" sau đó tắt Excel rồi mở lại là được.
+ Sửa: Trong Excel 2010, 2007 lỗi hiển thị màn hình tìm kiếm của :Nhập liệu nâng cao" khi mở file khác.

+ Sửa: Màn hình danh sách tìm kiếm trong "Nhập liệu nâng cao" tự hiển thị nếu người dùng vô tình thu nhỏ quá giới hạn không nhìn thấy.
+ Nâng cấp: Màn hình tạo DBKEY hiển thị hằng số (trị số) loại CSDL trong mục "DBType:". Hằng số này phục vụ cho khai báo thuộc tính loại CSDL.
+ Nâng cấp: Chức năng SQL Builder chạy tốt hơn các phiên bản cũ. Tạo công thức tạo có thêm thuộc tính DBTYPE=n (n: là hằng số loại CSDL).
Nếu CSDL là Excel thì khai báo DBTYPE được bỏ qua.
(*) Khi một file Excel chia sẻ qua mạng nếu bản thân nó kết nối tới một CSDL bên ngoài không phải loại Excel thì bắt buộc phải khai báo DBTYPE trong tham số Options của các hàm CSDL như BS_SQL.
Việc khai báo sẽ giúp máy khách nhận dạng dữ liệu ngày tháng trên sheet Excel chính xác hơn. Ví dụ:
=BS_SQL("SELECT ... FROM..." , "DBKEY=YourDbkey; DBTYPE=5;")
(5 ở đây là hằng số loại CSDL SQL Server)

+ Sửa: Thuộc tính DBTYPE không nhận đúng giá trị phía máy khách, nếu file Excel này được kết nối từ máy chủ. Phiên bản cũ nếu không nối mạng thì chạy đúng.

+ Sửa: Hàm BS_PIC được sửa như sau:
- Tự động xóa ảnh nếu đường dẫn file hoặc URL đưa vào tham số hàm là rỗng. Phiên bản ảnh vẫn bị giữ nguyên dù tham số rỗng.
- Kết quả trả về của hàm là giá trị rỗng nếu hàm chạy thành công. Phiên bản cũ luôn hiện giá trị #N/A.

DOWNLOAD
 
anh ơi cho em hỏi chút ah.
Em đang sử dụng Add-in a Tools bản mới nhất ngày 1.7. Dữ liệu của em phải xử lý đến hơn 100.000 dòng tuy nhiên khi em dùng BS_SQL("select * from [data$]") với dữ liệu < 65k dòng thì chạy ra data, lớn hơn 65K dòng thì báo VALUE, vậy có cách nào sửa lỗi này ko ah?
Các file của em xử lý thường rất lớn (từ trên 100k dòng trở lên) - em cảm ơn nhiều ah
 
anh ơi cho em hỏi chút ah.
Em đang sử dụng Add-in a Tools bản mới nhất ngày 1.7. Dữ liệu của em phải xử lý đến hơn 100.000 dòng tuy nhiên khi em dùng BS_SQL("select * from [data$]") với dữ liệu < 65k dòng thì chạy ra data, lớn hơn 65K dòng thì báo VALUE, vậy có cách nào sửa lỗi này ko ah?
Các file của em xử lý thường rất lớn (từ trên 100k dòng trở lên) - em cảm ơn nhiều ah

Em kiểm tra phiên bản chắc chắn là mới nhé (9.1.1.1 ngày 01/7/2019)
Việc thứ hai là sau FROM [TÊN SHEET$]
Nếu đã làm đúng như trên mà vẫn bị em gửi file lên anh xem nhé.
 
Công thức của mình đúng nhưng mà nó chỉ áp dụng được cho nhỏ hơn 65k dòng (đến 65536), mà file của mình toàn lớn hơn 100k dòng lận (có những file 700k dòng) - giúp mình với
 
Hì hì, thấy có mùi tràn biến Word hay UInt16 đây rầu (65536). Bug của bác Tuân ;)
 
Lần chỉnh sửa cuối:
dear a Tuân,

Em vừa đọc lại hết các hướng dẫn của Add-in A-tools từ các phiên bản trước, em thấy ở trang 22 có đề cập là với hàm BS_SQL thì chỉ giới hạn tối đa là 65.536 dòng

Ở phiên bản 8. anh có đề cập là Nhập liệu nâng cao, dữ liệu nguồn cho phép tối đa là 1.048.576 dòng

Vậy em hiểu là dữ liệu nguồn trong phần nhập liệu thì có thể lên tới 1 triệu dòng nhưng để lấy data ra báo cáo thì chỉ tối đa có 65k dòng đúng ko ah?

Vậy anh có cách nào để báo cáo của em vẫn lấy ra được phần nhập liệu cover hết tất cả dữ liệu đầu vào hay không ah? Em có nghĩ đến cách chia dữ liệu đầu vào thành các phần khác nhau để maximum 1 data là 65k dòng, mong anh cho em giải pháp toàn diện hơn

Em cảm ơn anh nhiều ah

Em Thủy
 
dear a Tuân,

Em vừa đọc lại hết các hướng dẫn của Add-in A-tools từ các phiên bản trước, em thấy ở trang 22 có đề cập là với hàm BS_SQL thì chỉ giới hạn tối đa là 65.536 dòng

Ở phiên bản 8. anh có đề cập là Nhập liệu nâng cao, dữ liệu nguồn cho phép tối đa là 1.048.576 dòng

Vậy em hiểu là dữ liệu nguồn trong phần nhập liệu thì có thể lên tới 1 triệu dòng nhưng để lấy data ra báo cáo thì chỉ tối đa có 65k dòng đúng ko ah?

Vậy anh có cách nào để báo cáo của em vẫn lấy ra được phần nhập liệu cover hết tất cả dữ liệu đầu vào hay không ah? Em có nghĩ đến cách chia dữ liệu đầu vào thành các phần khác nhau để maximum 1 data là 65k dòng, mong anh cho em giải pháp toàn diện hơn

Em cảm ơn anh nhiều ah

Em Thủy

Chào bạn. Đúng là có sự cố với dòng phiên bản 9.0 hiển thì bị giới hạn 65536 dòng với hàm BS_SQL (không phải lúc nào cũng bị....). Ngoài bạn ra cũng đã có nhiều người liên hệ nói về việc này. Cảm ơn bạn. Bên mình đã nâng cấp bant Add-in A-Tools 9.1.1.2 khắc phục lỗi này. Bạn đọc thông tin nâng cấp và vào trang chủ tải bản mới nhất về chạy và báo lại kết quả mình nhé.

Add-in A-Tools v9.1.1.2: 01-07-2019 (Add-in A-Tools 2019)
+ Sửa: lỗi hàm BS_SQL chỉ hiển thị số dòng <=65536. Lỗi thường do máy đang mở nhiều file trong đó có file định dạng Excel 2003 (*.xls)
+ Sửa: tập tin ví dụ về lấy thông tin máy chủ cập nhật cách gọi lệnh theo version mơi.
(C:\A-Tools\HELP & DEMOS\A-Tools VBA Programming\Network\BSNetworkInfo.xls)
+ Thêm: bổ sung các thuộc tính để biết thêm thông tin phía máy chủ trong qua class BSNetwork (dùng trong VBA)
BSNetwork.ServerAToolsName - Biết tên phần mềm A-Tools phía máy chủ (ví dụ "Add-in A-Tools")
BSNetwork.ServerVersionStr - Biết tên phiên bản A-Tools phía máy chủ (ví dụ "v9.1.1.1")
BSNetwork.ServerVersionNum - Biết số hiệu version A-Tools phía máy chủ (ví dụ 6503)
BSNetwork.ServerExcelVersion - Biết tên version (number) của Excel đang chạy phía máy chủ
+ 10: Excel XP
+ 11: Excel 2003
+ 12: Excel 2007
+ 14: Excel 2010
+ 15: Excel 2013
+ 16: Excel 2016, 2019, 365

DOWNLOAD
Bài đã được tự động gộp:

Công thức của bạn đúng rồi, mình mới Test thử

Có thể môi trường Excel của em đang "hoàn hảo" :P
Bài đã được tự động gộp:

Hì hì, thấy có mùi tràn biến Word hay UInt16 đây rầu (65536). Bug của bác Tuân ;)

Vâng. Có sự cố khi detect môi trường hỗn hợp các file định với dạng khác nhau bác à. :)
 
E cảm ơn anh. E sẽ test và báo lại anh nhé.

Em còn 1 vài vấn đề nữa muốn nhờ anh nhé:

1- Em có nhiều sheet giống nhau, em làm theo các công thức combine sheet hoặc combine file (BS_Join) thì công thức là liệt kê các phần của các sheet vào liên tiếp với nhau; em không combine với hàm Group by giống như BS_SQL được: anh xem có cách nào em vừa gom data từ các sheet giống hệt nhau nhưng được group lại theo 1 nhóm nào đó hay không (file BS_Join) (vì anh thấy cái file nãy của em rất nặng, em còn các file data khác mà mỗi file 1 tháng cỡ 700k dòng), nếu nhóm lại với nhau chắc ko tải được ah

2- Với phần nhiều người cùng nhập liệu vào 1 file data: do việc có nhiều người nhập liệu, không tránh được sẽ có nhiều người làm sai, em dự định thiết kế nhiều file có form giống nhau, mỗi file có 1 người điền, người đó điền vào rồi thì sẽ được 1 người quản lý cấp trên xem và ấn nút phê duyệt, sau khi quản lý cấp trên xem xong thì file đó mới đến em, em xem xong thì em nhấn nút duyệt thì file đó sẽ được chạy vào file data tổng của em, em sẽ nhìn thấy được ô người lập, người duyệt đều có người sign off rồi thì em mới nhận file để đưa vào làm báo cáo -> anh coi có cách nào làm được điều đó trên excel không nhé (phân tầng cấp phê duyệt)

E cảm ơn anh nhiều
 

File đính kèm

E cảm ơn anh. E sẽ test và báo lại anh nhé.

Em còn 1 vài vấn đề nữa muốn nhờ anh nhé:

1- Em có nhiều sheet giống nhau, em làm theo các công thức combine sheet hoặc combine file (BS_Join) thì công thức là liệt kê các phần của các sheet vào liên tiếp với nhau; em không combine với hàm Group by giống như BS_SQL được: anh xem có cách nào em vừa gom data từ các sheet giống hệt nhau nhưng được group lại theo 1 nhóm nào đó hay không (file BS_Join) (vì anh thấy cái file nãy của em rất nặng, em còn các file data khác mà mỗi file 1 tháng cỡ 700k dòng), nếu nhóm lại với nhau chắc ko tải được ah
E cảm ơn anh nhiều

Phần này, bạn thử làm theo cách sao
1. Ở hàm BS_Join, bạn đặt name là DT_TONGHOP
2. Sau đó ở hàm BS_SQL bạn mới bắt đầu sử dụng thuộc tính GROUP BY

Mã:
SELECT DT_TONGHOP.MA_NB, DT_TONGHOP.KHO, DT_TONGHOP.MA_VLSPHH, DT_TONGHOP.SLG,
  DT_TONGHOP.THANH_TIEN
FROM DT_TONGHOP
GROUP BY DT_TONGHOP.MA_NB, DT_TONGHOP.KHO, DT_TONGHOP.MA_VLSPHH, DT_TONGHOP.SLG,
  DT_TONGHOP.THANH_TIEN

Tuy nhiên trong dữ liệu của bạn, mình thấy thiếu thông tin người bán vậy

220497

220498
 
Ý anh là đầu tiên vẫn gom hết về 1 file của BS join, sau đó mới dùng hàm khác để lấy thông tin = BS_SQL và GROUP BY đúng không ah?

Nhưng mà như này thì khối lượng dữ liệu của sheet DT_TONGHOP quá lớn (như em có nói mỗi sheet của em hơn 700k dòng -> nếu vậy em sẽ dùng BS_SQL và GROUP BY để lấy được thông tin trước, sau đó mới dùng BS_JOIN thì có lẽ khối lượng sẽ đỡ hơn nhiều

thank bác nhiều, em sẽ test thử đã nhé
 
Em còn 1 vài vấn đề nữa muốn nhờ anh nhé:

Trước khi trả lới các câu hỏi của bạn mình muốn biết bạn đã test lại vấn đền số dòng lấy ra > 65536 chưa? Cần nâng cấp 9.1.1.2 trước khi làm.

Các câu hỏi của bạn mình trả lời như sau:
1- Em có nhiều sheet giống nhau, em làm theo các công thức combine sheet hoặc combine file (BS_Join) thì công thức là liệt kê các phần của các sheet vào liên tiếp với nhau; em không combine với hàm Group by giống như BS_SQL được: anh xem có cách nào em vừa gom data từ các sheet giống hệt nhau nhưng được group lại theo 1 nhóm nào đó hay không (file BS_Join) (vì anh thấy cái file nãy của em rất nặng, em còn các file data khác mà mỗi file 1 tháng cỡ 700k dòng), nếu nhóm lại với nhau chắc ko tải được ah

Khi bạn dùng từ khóa GROUP BY để gộp thì phải có các nguyên tắc cần:
+ Dùng hàmthống kê như SUM, COUNT, AVG, MIN, MAX, VAR,... bao các cột cần tổng hợp
+ Các cột không nằm trong các hàm thống kê haowcj cần phân tách tiêu chí gộp thì cần đặt sau từ khóa GROUP BY
Ví dụ:
Của của bạn là
SELECT MA_NB, KHO, MA_VLSPHH, SLG, THANH_TIEN AS TT FROM DATA1 GROUP BY MA_VLSPHH
Công thức trên sai 2 lỗi: không có cột nào tổng hợp, không chỉ định đủ các cột sau từ khóa GROUP BY
Công thức đúng là:
SELECT MA_NB, KHO, MA_VLSPHH, SUM(SLG) AS SLG, SUM(THANH_TIEN) AS TT FROM DATA1 GROUP BY MA_NB, KHO, MA_VLSPHH
(Bạn xem file đính kèm)
220509

2- Với phần nhiều người cùng nhập liệu vào 1 file data: do việc có nhiều người nhập liệu, không tránh được sẽ có nhiều người làm sai, em dự định thiết kế nhiều file có form giống nhau, mỗi file có 1 người điền, người đó điền vào rồi thì sẽ được 1 người quản lý cấp trên xem và ấn nút phê duyệt, sau khi quản lý cấp trên xem xong thì file đó mới đến em, em xem xong thì em nhấn nút duyệt thì file đó sẽ được chạy vào file data tổng của em, em sẽ nhìn thấy được ô người lập, người duyệt đều có người sign off rồi thì em mới nhận file để đưa vào làm báo cáo -> anh coi có cách nào làm được điều đó trên excel không nhé (phân tầng cấp phê duyệt)

Phê duyệt dữ liệu trước khi gộp là bài toán hay. Có ít nhất 2 cách để làm.
1. Cách 1: Tự tạo hai cột phụ để phê duyệt 2 lớp (cấp). Cách làm này không cần tính nang phê duyệt của A-Tools.
- Từ sheet nguồn, bạn tạo 2 cột phụ "Kiểm tra", "Phê duyệt". Khi bạn phân quyền người dùng thì chỉ định vùng nhập liệu mà nó không bao hai cột phụ kia, khi đó user không thể tự ý vào được.
- Tạo vùng ảo trên sheet đó. Chọn sheet cần tạo vùng ảo, bạn bấm "Tạo vùng và địa chỉ...", dùng chuột chọn vùng được phép nhập liệu.
- Sang màn hình phân quyền cho nhóm. Hãy chỉ định nhóm nào được mở vùng ảo này.
Như vậy một sheet bạn tạo được nhiều vùng ảo với các thuộc tính hiển thị và nhập liệu khác nhau, bạn phân quyền cho nhóm nào được mở vùng ảo này.

Trình tự làm:
1. Vào quản trị máy chủ: tạo vùng ảo từ menu
220515

(Tạo vùng ảo từ menu)​

2. Chọn vùng để nhập liệu. Những vùng không chọn sẽ không được nhập liệu.
Vùng ảo cho phép đặt các thuộc tính ẩn cột, dòng, lưu trạng thái phê duyệt,... không làm thay đổi sheet nguồn về cấu trúc. Dữ liệu được đồng bộ với sheet nguồn.

220516
(Chọn vùng cho phép nhập liệu cho vùng ảo)

220517

(Sau khi tạo được vùng ảo)
3. Phần quyền cho nhóm user được mở vùng ảo mà không mở sheet gốc, khi đó user sẽ chị sự thiết lập của vùng ảo như chỉ nhìn thấy một số dòng, cột, khu vực không được nhập liệu, các quyền thiết lập từ máy chủ....

220518
2. Cách 2: Dùng tính năng phê duyệt của máy chủ
Về cơ bản quy trình thiết lập giống "Cách 1" nhưng cần chỉ định vùng lưu user & time, vùng phê duyệt cho vùng ảo.

220521

220522

220523

220524

220525

Gộp dữ liệu với file đã phê duyệt
Khi vùng dữ liệu đã ghi nhận trạng thái ở vùng "Kiểm tra", "Phê duyệt" thì nó chính là trường dữ liệu để làm điều kiện WHERE
SELECT * FROM DATA WHERE [Phê Duyệt]=1
Bài đã được tự động gộp:

Khi vùng ảo được mở phía máy khách. User sẽ nhìn thấy nó như thế này.
220528

Vùng phê duyệt nhấp chuột phải để phê duyệt.
 

File đính kèm

  • vung_ao1.jpg
    vung_ao1.jpg
    206.6 KB · Đọc: 4
Dạ e cảm ơn anh

Phần phân cấp với group nhóm thì em sẽ xem chiều nay

Còn phần test dữ liệu < 65536 thì em vẫn đang không làm được với excel 2007, em đang thử dùng sang máy khác với excel 2013 xem có được ko, có gì em sẽ fb tiếp ah
 
Dear a Tuân,

Em đã test với excel 2013 và 2016 thì phải từ version 2016 trở đi mới áp dụng được việc chạy dữ liệu trên 65536 dòng nhé.

Lưu ý: khi dùng với các công thức của Add-in A-Tools thì thay tên trường dữ liệu bằng tên sheet

Ví dụ: bình thường mọi người sẽ đặt name cho vùng dữ liệu trong file là Data=data$A$1:$G$5000 đối với tên sheet là Data -> công thức sẽ là
BS_SQL("SELECT * FROM DATA")

Nếu chạy cho dữ liệu lớn hơn 65536 thì việc đặt tên vùng dữ liệu sẽ không áp dụng được, lúc này sẽ phải change công thức thành
BS_SQL("SELECT * FROM [DATA$]")

Áp dụng tương tự cho tất cả các công thức khác của Add-in A-tools.

E cảm ơn anh nhiều nhé
 
Chào Anh Nguyễn Duy Tuân!
Em mới cài Add-In A-tools và tự học cách sử dụng qua các bài học kèm theo phần mềm và có một vướng mắc như sau ạ!
Em lập dữ liệu và chạy thử hàm BS_SQL khi công thức hoạt động e tiến hành định dạng và thêm hàng tổng ở dưới cùng, tuy nhiên khi em thay đổi điều kiện thì bảng biểu không tự động co dãn theo sự thay đổi của hàm! Dữ liệu lấy về đè mất cả hàng Tổng chứ không phải chèn thêm hàng vào anh ạ!
Em đã thử lập file excel mới, đã thử sử dụng hàm đơn giản hơn để thử nhưng vẫn bị vướng như trên, em sử dụng Excel 2016 bản 32 bit
Em có up file đính kèm mong anh giúp đỡ ạ!
 

File đính kèm

Chào Anh Nguyễn Duy Tuân!
Em mới cài Add-In A-tools và tự học cách sử dụng qua các bài học kèm theo phần mềm và có một vướng mắc như sau ạ!
Em lập dữ liệu và chạy thử hàm BS_SQL khi công thức hoạt động e tiến hành định dạng và thêm hàng tổng ở dưới cùng, tuy nhiên khi em thay đổi điều kiện thì bảng biểu không tự động co dãn theo sự thay đổi của hàm! Dữ liệu lấy về đè mất cả hàng Tổng chứ không phải chèn thêm hàng vào anh ạ!
Em đã thử lập file excel mới, đã thử sử dụng hàm đơn giản hơn để thử nhưng vẫn bị vướng như trên, em sử dụng Excel 2016 bản 32 bit
Em có up file đính kèm mong anh giúp đỡ ạ!

Công thức của bạn bị sai tham số. Cũ của bạn là:
=bs_Sql(A5 , LEFT(B3&B2&D2,0),A6)
Lỗi bạn dùng hàm LEFT thành tham số thứ 2 (tham số thứ hai phải là Options: INSERT=YES)
Công thức chỉ cần sửa lại là:
=bs_Sql(A5 & LEFT(B3&B2&D2,0),A6)
 
Lần chỉnh sửa cuối:
Em chào anh Tuân! Cảm ơn anh đã trả lời câu hỏi lần trước của em về việc sử dụng hàm LEFT
Anh cho e hỏi thêm chút ạ! Khi em lồng hàm tạo sự kiện [ONDBLCLICK=GOTO] vào hàm BS_SQL có sử dụng DBKEY hoặc hàm BS_JOIN thì hàm GOTO không đưa mình đến nguồn dữ liệu được ạ anh!
Em đã thử truy xuất dữ liệu như sau:
Truy xuất từ hàm BS_SQL trên cùng một work book: hoạt động tốt
Truy xuất từ hàm BS_JOIN trên cùng một work book: không hoạt động
Truy xuất từ hàm BS_SQL có sử dụng DBKEY: không hoạt động
Liệu có cách nào để truy xuất được dữ liệu từ một work book khác hoặc từ hàm BS_JOIN không anh!

Và việc Update dữ liệu nữa ạ! Em có 3 file excel liên kết với nhau theo tứ tự File1 -> File2 -> File3
Ở File3 em muốn lấy dữ liệu của File2 thì e phải vào File2 để cập nhật công thức A-tools để File2 lấy dữ liệu của File1
Có cách nào để Update File2 từ File3 mà không cần phải mở File2 lên không ạ

Mong anh giải đáp giúp e! Em cảm ơn anh ạ!
 
Lần chỉnh sửa cuối:
Em chào anh Tuân! Cảm ơn anh đã trả lời câu hỏi lần trước của em về việc sử dụng hàm LEFT
Anh cho e hỏi thêm chút ạ! Khi em lồng hàm tạo sự kiện [ONDBLCLICK=GOTO] vào hàm BS_SQL có sử dụng DBKEY hoặc hàm BS_JOIN thì hàm GOTO không đưa mình đến nguồn dữ liệu được ạ anh!
Em đã thử truy xuất dữ liệu như sau:
Truy xuất từ hàm BS_SQL trên cùng một work book: hoạt động tốt
Truy xuất từ hàm BS_JOIN trên cùng một work book: không hoạt động
Truy xuất từ hàm BS_SQL có sử dụng DBKEY: không hoạt động
Liệu có cách nào để truy xuất được dữ liệu từ một work book khác hoặc từ hàm BS_JOIN không anh!

Mong anh giải đáp giúp e! Em cảm ơn anh ạ!

Về ứng dụng sự iện On* trên các hàm mảng như em nói anh sẽ kiểm tra lại nhé.

Và việc Update dữ liệu nữa ạ! Em có 3 file excel liên kết với nhau theo tứ tự File1 -> File2 -> File3
Ở File3 em muốn lấy dữ liệu của File2 thì e phải vào File2 để cập nhật công thức A-tools để File2 lấy dữ liệu của File1
Có cách nào để Update File2 từ File3 mà không cần phải mở File2 lên không ạ

Việc này bắt buộc phải tuần tự em a. Vì file nguồn em làm công thức lấy data từ file khác. Cách khắc phục em có thể viết VBA để bấm nút tự mở và cập nhật.
 
Em chào anh Tuân! Cảm ơn anh đã trả lời câu hỏi lần trước của em về việc sử dụng hàm LEFT
Anh cho e hỏi thêm chút ạ! Khi em lồng hàm tạo sự kiện [ONDBLCLICK=GOTO] vào hàm BS_SQL có sử dụng DBKEY hoặc hàm BS_JOIN thì hàm GOTO không đưa mình đến nguồn dữ liệu được ạ anh!
Em đã thử truy xuất dữ liệu như sau:
Truy xuất từ hàm BS_SQL trên cùng một work book: hoạt động tốt
Truy xuất từ hàm BS_JOIN trên cùng một work book: không hoạt động
Truy xuất từ hàm BS_SQL có sử dụng DBKEY: không hoạt động
Liệu có cách nào để truy xuất được dữ liệu từ một work book khác hoặc từ hàm BS_JOIN không anh!

Mong anh giải đáp giúp e! Em cảm ơn anh ạ!

Các câu hỏi của bạn mình đã kiểm tra lại và phát hiện các lý do có thể bạn gặp lỗi. Bạn c;hú ý các vấn đề quy định của A-Tools khi sử dụng sự kiện ON*

Tất cả các sự kiện chạy cùng các hàm mảng của A-Tools (kể cả các hàm người dùng tự tạo bằng thư viện BSFormulaArray) đều cho phép chạy các sự kiện:
1. OnBeforeUpdate
2. OnAfterUpdate
3. OnBeforeExec
4. OnGetValue
5. OnDblClick (phải khai báo trực tiếp trong hàm)
6. OnSelectionChange (phải khai báo trực tiếp trong hàm)

(Các sự kiện từ 1->4 có thể khai báo trực tiếp trong hàm hoặc khai báo trên ô tham chiếu).

- Khi khai báo sự kiện hoặc thuộc tính cho các hàm A-Tools thì luôn có dấu ";" nằm cuối mỗi một thuộc tính. Ví dụ
=BS_SQL("SELECT...", "INSERT=YES; ONDBLCLICK=MyClick")

Khai báo trên bị sai vì thiếu dấu ";". Khai báo đúng như sau:
=BS_SQL("SELECT...", "INSERT=YES; ONDBLCLICK=MyClick;")

- Khi khai báo các sự kiện như "ONDBLCLICK=MyClick;" thì bắt buộc phải khai báo bên trong hàm chứ không được để trong ô bên ngoài rồi tham chiếu.

Cách làm như sau là sai:
Ô A4 chưa khai báo "INSERT=YES; ONDBLCLICK=MyClick;"
=BS_SQL("SELECT...", A4)

Khai báo trên có thuộc tính INSERT vẫn chạy nhưng các sự kiện ONDBLCLICK, ONSELECTIONCHANGE không chạy (quy định của A-Tools phải khai báo trực tiếp 2 sự kiện này)

Sửa lại như sau:
A4 bạn vẫn được phép khai báo các thuộc tính, ngoại trừ tên các sự kiện ONDBLCLICK, ONSELECTIONCHANGE
A4 khai báo: INSERT=YES;"
=BS_SQL("SELECT...", A4 & "ONDBLCLICK=MyClick;")

Hoặc:
=BS_SQL("SELECT...", "INSERT=YES; ONDBLCLICK=MyClick;")

Lưu ý là tất cả các hàm mảng của A-Tools đều quy định như trên.

- Phiên bản A-Tools tải trên web trước 17h45 ngày 25/7/2019 hàm GOTO(...) được dùng kết hợp với các sự kiện gọi bị lỗi khi cột tìm kiếm là kiểu số (Number). Vậy bạn hãy tải phiên bản cập nhật Add-in A-Tools v9.1.1.3 ngày 25/7/2019 trên website http://bluesofts.net
 
Lần chỉnh sửa cuối:
@Nguyễn Duy Tuân A ơi cho e hỏi là e mua key pro có được mãi mãi ko? với lại khi máy e bị lỗi cài lại win có mất bản quyền pro của A_tools ko? E định mua 01 key dùng cho công việc nhưng đang băn khoăn 2 vấn đề trên @@
 
Lần chỉnh sửa cuối:
Chào anh Tuân! Anh ơi! Sao khi em đặt name cho 30 bảng dữ liệu! Và em tạo ra 30 sheet để lấy dữ liệu từ 30 name vừa đặt thì đến cái thứ 14 là em bị lỗi anh ạ! Em đã thử sử dụng các hàm excel thường kiểm tra thì name này vẫn hoạt động bình thường! Nhưng hàm BS_SQL thì vẫn báo lỗi! Em gửi anh ảnh báo lỗi của chương trình anh giải đáp giúp em anh nhé! Em cảm ơn ạ!
 

File đính kèm

  • thiet-ke-khuon-ep-nhua5-23.png
    thiet-ke-khuon-ep-nhua5-23.png
    11.6 KB · Đọc: 20
Chào anh Tuân! Anh ơi! Sao khi em đặt name cho 30 bảng dữ liệu! Và em tạo ra 30 sheet để lấy dữ liệu từ 30 name vừa đặt thì đến cái thứ 14 là em bị lỗi anh ạ! Em đã thử sử dụng các hàm excel thường kiểm tra thì name này vẫn hoạt động bình thường! Nhưng hàm BS_SQL thì vẫn báo lỗi! Em gửi anh ảnh báo lỗi của chương trình anh giải đáp giúp em anh nhé! Em cảm ơn ạ!

Trong thông báo nó chỉ tên bảng sai “day_xxx”
Em chạy riêng bản này xem có chạy không? Rất có thể em phải đổi tên sheet dài trên 5 ký tự abc , lưu , đóng file rồi mở lại.
 
Trong thông báo nó chỉ tên bảng sai “day_xxx”
Em chạy riêng bản này xem có chạy không? Rất có thể em phải đổi tên sheet dài trên 5 ký tự abc , lưu , đóng file rồi mở lại.
Dạ em đã tách riêng bảng đó ra và vẫn để tên như vậy thì vẫn hoạt động bình thường anh ạ! Tên bảng em đặt từ ngày 01 đến ngày 31 thì chạy đến ngày 14 nó báo lỗi như thế anh ạ! Nếu em xóa các bảng trước ngày này đi thì bảng lại chạy được anh ạ!
 
Dạ em đã tách riêng bảng đó ra và vẫn để tên như vậy thì vẫn hoạt động bình thường anh ạ! Tên bảng em đặt từ ngày 01 đến ngày 31 thì chạy đến ngày 14 nó báo lỗi như thế anh ạ! Nếu em xóa các bảng trước ngày này đi thì bảng lại chạy được anh ạ!

Nếu em gộp dữ liệu nên dùng hàm BS_JOIN rất mạnh.
 
Hi anh Tuân
Dùng A-Tool để Insert dữ liệu vào trong bảng SQL thông qua Excel, làm thế nào để không hiện thông báo lỗi "CommandText does not return a result set"
Cảm ơn anh
 
Xem Video

poster-atools-700.jpg

Add-In A-Tools là một công cụ (add-in) chạy trong môi trường Microsoft Excel. A-Tools có các chức năng chính sau:

Soạn thảo và quản trị dữ liệu qua mạng: Để chia sẻ tệp dữ liệu Excel cho nhiều người dùng trong mạng, nếu không có công cụ thì chỉ có một phương pháp là share full thư mục chứa file Excel đó (cách của Excel). Theo cách này, các máy trong mạng đều có thể truy cập vào copy và thậm chí xoá hẳn tệp dữ liệu này. Người chủ của tệp Excel này chỉ có thể gửi trọn cả tệp mà rất khó che dấu những sheets hay vùng dữ liệu riêng của mình. Còn các vấn đề khác như cho người dùng truy cập vào vùng dữ liệu nhưng có các quyền: chỉ đọc, soạn thảo, giới hạn bao nhiêu người được kết nối,....không thể làm được.

Với Add-In A-Tools cho phép soạn thảo và quản trị dữ liệu Excel qua mạng. Công cụ này cho phép người dùng quản trị dữ liệu Excel qua mạng một cách mạnh mẽ, có thể kết nối các bảng tính, vùng dữ liệu qua TCP/IP (không phải share full thư mục), quản trị các kết nối tới vùng dữ liệu, phân quyền cho từng nhóm người dùng, khi dữ liệu tại một máy thay đổi thì các máy khác trong mạng được cập nhật ngay lập tức (sau khoảng ~ 1 mili giây).

Truy vấn dữ liệu động trong bảng tính: Tạo bảng dữ liệu động bởi việc sử dụng các hàm với ngôn ngữ truy vấn cơ sở dữ liệu (CSDL) T-SQL. Cho phép kết nối với các CSDL bên trong và bên ngoài như Excel, Access, Foxpro, MS SQL, MySQL, Firebird,… vào bảng tính Excel. Với công cụ SQL Builder sẽ giúp người dùng tạo công thức truy vấn dữ liệu một cách dễ dàng và hiệu quả. Người dùng có thể tạo ra những báo cáo trong bảng tính Excel có độ phức tạp cao, được lọc theo nhiều điều kiện, liên kết với các nguồn dữ liệu khác nhau, đảm bảo độ chính xác, ổn định và tốc độ xử lý nhanh.

Các chức năng khác:

* Tạo công thức thống kê kết hợp với nhiều điều kiện.
* Chuyển đổi mã văn bản, số thành chữ, ….

Hỗ trợ lập trình: Ngoài giao diện người dùng, A-Tools còn hỗ trợ các hàm API và các đối tượng COM như BSNetwork để những người phát triển ứng dụng lập trình kết hợp cùng A-Tools nhằm khai thác tối đa năng lực của A-Tools, tăng sức mạnh cho ứng dụng của mình.

Giao diện menu chức năng trong Excel 2007, 2010
Menu2007.jpg

Minh họa về truy vấn dữ liệu động

BS_SQL_Demo.gif

Tạo báo cáo động bằng SQL Builder
Demo_Report.gif


A-Tools_and_Chart.gif

Minh họa về tạo công thức nhanh

Congthu_Demo.gif

Mở các file Excel (cơ sở dữ liệu), tạo các vùng dữ liệu chia sẻ trong mạng
Các máy khách được cấp quyền sẽ mở những vùng dữ liệu này để soạn thảo.
SharedRanges.jpg

Xây dựng danh sách các nhóm, người dùng được kết nối tới máy chủ
Chỉ người nào có user và password mới kết nối được vào máy chủ.
Groups_Users.jpg

Thiết lập các quyền cho nhóm người dùng
Mỗi nhóm tuỳ vào chức trách riêng sẽ được cấp phát những quyền can thiệp công việc ở các mức độ khác nhau.
Rights.jpg

Quản trị danh sách người dùng kết nối
Từ danh sách này, máy chủ có thể không hoặc cho phép người đang kết nối tiếp tục can thiệp vào máy chủ. Cho phép những người dùng chat với nhau.
ConnectedUsers.jpg

II) Chức năng của máy khách (Excel Clients)

Kết nối tới máy chủ

Người dùng kết nối bằng tên và mật khẩu mà người quản lý máy chủ cấp phát.
Connect.jpg

Kết nối vào vùng dữ liệu trong mạng
Sau khi kết nối tới máy chủ thành công, người dùng sẽ mở được danh sách các vùng dữ liệu mà mình được phép kết nối. Việc có thể sửa, xoá, định dạng trong vùng tuỳ thuộc vào quyền được cấp.
UserRanges.jpg

Khi các máy tính kết nối vào mạng thì có thể soạn thảo chung vào một vùng dữ liệu trong máy chủ
ExcelCaro.gif

Các bạn download về chạy thử và cho ý kiến nhé!
DOWNLOAD A-Tools v7.4.0.7 Cập nhật ngày 03/05/2018
Bài đã được tự động gộp:

Anh ơi cho em hỏi chút ạ. Em dùng Bs-SQl lọc dữ liệu từ sheet 1 qua sheet 2 thường bị thiếu dữ liệu. Cụ thể: trong cột có cả dữ liệu số, dữ liệu chữ, và hỗn hợp cả số và chữ. khi lọc qua sheet khác chỉ hiển thị dữ liệu số, không hiển thị dữ liệu chữ, em đã thống nhất về định dạng giữ 2 sheet rồi ạ. giúp em. Cảm ơn bác
 
Bài đã được tự động gộp:

Anh ơi cho em hỏi chút ạ. Em dùng Bs-SQl lọc dữ liệu từ sheet 1 qua sheet 2 thường bị thiếu dữ liệu. Cụ thể: trong cột có cả dữ liệu số, dữ liệu chữ, và hỗn hợp cả số và chữ. khi lọc qua sheet khác chỉ hiển thị dữ liệu số, không hiển thị dữ liệu chữ, em đã thống nhất về định dạng giữ 2 sheet rồi ạ. giúp em. Cảm ơn bác

Dữ liệu nguồn bạn phải đồng nhất kiểu dữ liệu trên mỗi cột. Format Cell chỉ là hình thức, kiểu dữ liệu Excel nhận khi nó được nhập vào ô. Cột là số hoặc ngày tháng thì chỉ được là số, những ô trống phải để số 0.
 
Dữ liệu nguồn bạn phải đồng nhất kiểu dữ liệu trên mỗi cột. Format Cell chỉ là hình thức, kiểu dữ liệu Excel nhận khi nó được nhập vào ô. Cột là số hoặc ngày tháng thì chỉ được là số, những ô trống phải để số 0.
em chào anh Tuấn
anh ơi em cài a tools bản free, em thiết lập vùng dữ liệu 1000 dòng, nhưng nó chỉ lấy có 200 dòng, đem qua máy khác mở thì dữ liệu lấy đủ 1000, mà cứ ở máy em là chỉ có 200 dòng, vậy máy em bị gì ạ, anh giúp giùm em với.
Em cảm ơn anh.
 
em chào anh Tuấn
anh ơi em cài a tools bản free, em thiết lập vùng dữ liệu 1000 dòng, nhưng nó chỉ lấy có 200 dòng, đem qua máy khác mở thì dữ liệu lấy đủ 1000, mà cứ ở máy em là chỉ có 200 dòng, vậy máy em bị gì ạ, anh giúp giùm em với.
Em cảm ơn anh.

Bản Pro không giới hạn số dòng bạn nhé.
 
Anh ơi cho em hỏi,

Hiện em đang dùng bản free, em dùng SQL_builder theo hướng dẫn của anh để lọc dữ liệu từ Sheet Quản lý hàng xuất -> Sheet in phiếu xuất. Em làm theo video này ạ: https://youtube/NlPP4jzkWOY?list=PLZi2tdQERHM09nzkoiavJO4pHcED1NmOQ

Nhưng khi bấm thực hiện thì nó đơ máy luôn ạ. Lần nào cũng vậy ạ!
Anh có thể hướng dẫn em được không ạ! Em xin cảm ơn trước ạ!
 
Anh ơi cho em hỏi,

Hiện em đang dùng bản free, em dùng SQL_builder theo hướng dẫn của anh để lọc dữ liệu từ Sheet Quản lý hàng xuất -> Sheet in phiếu xuất. Em làm theo video này ạ: https://youtube/NlPP4jzkWOY?list=PLZi2tdQERHM09nzkoiavJO4pHcED1NmOQ

Nhưng khi bấm thực hiện thì nó đơ máy luôn ạ. Lần nào cũng vậy ạ!
Anh có thể hướng dẫn em được không ạ! Em xin cảm ơn trước ạ!

Bạn kiểm tra lại link video mình không mở được. Bạn cài A-Tools version nào?
 
E có file công nợ cần lấy dữ liệu ở 2 sheet số dư và đã trả cũng theo điều kiện lọc của khách hàng. Mọi người chỉ giúp e với
E cảm ơn nhé
 

File đính kèm

Bài viết mới nhất

Back
Top Bottom