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

Liên hệ QC
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é

Gởi bạn xem thử có đúng ý không!
Có 1 số điều bạn cần điều chỉnh lại như sau.
  1. Nếu đã sử dụng Atools rồi thì nên sử dụng tính năng nhập liệu Nâng cao.
  2. Các Bảng dữ liệu thừa số dòng trông quá nhiều, => làm ảnh hưởng đến tốc độ tính toán
  3. Việc đặt tên Bảng của bạn chưa hợp lý (hiện tại bạn chỉ đặt tên cho từng cột dữ liệu
..............
 

File đính kèm

  • File theo doi cong no (4) - Copy.xlsx
    31.8 KB · Đọc: 11
Gởi bạn xem thử có đúng ý không!
Có 1 số điều bạn cần điều chỉnh lại như sau.
  1. Nếu đã sử dụng Atools rồi thì nên sử dụng tính năng nhập liệu Nâng cao.
  2. Các Bảng dữ liệu thừa số dòng trông quá nhiều, => làm ảnh hưởng đến tốc độ tính toán
  3. Việc đặt tên Bảng của bạn chưa hợp lý (hiện tại bạn chỉ đặt tên cho từng cột dữ liệu
..............
Tính năng nhập liệu nâng cao ko biết có phức tạp ko, mình sẽ tìm hiểu để thực hiện
Còn số dư là tại ngày đối chiếu, ví dụ đối chiếu mỗi nhà khác nhau, nhà này đối chiếu 01/02 thì trong phần công nợ chi tiết cần chọn ngày sau đó để có những gd nhập tiếp theo từ 02/02 và thanh toán cũng vậy
 

File đính kèm

  • File theo doi cong no (4) - CC.xlsx
    61.3 KB · Đọc: 8
Mọi người chỉ giúp e với nhé
 
hình như có cách để hàm SQL thể hiện cell vượt 255 ký tự đó anh @Nguyễn Duy Tuân. Em test thử trên hàm của em rồi
255 kytu.pngExcel 2010.png
 
Lần chỉnh sửa cuối:
A Tuân ơi cho em hỏi khi cài A-Tools free 64 bit đến chỗ chọn excel version thì nó bị ẩn không chọn được, giờ làm sao để cài đây ạ
Capture2.PNG
 
A Tuân ơi cho em hỏi khi cài A-Tools free 64 bit đến chỗ chọn excel version thì nó bị ẩn không chọn được, giờ làm sao để cài đây ạ
View attachment 233462

Có thể Excel của em đang là 32-bit nên em cần tải và cài Add-in A-Tools 32-bit nhé.
Bài đã được tự động gộp:

hình như có cách để hàm SQL thể hiện cell vượt 255 ký tự đó anh @Nguyễn Duy Tuân. Em test thử trên hàm của em rồi

Từ bản Office 2016, 2019 update mới và Office 365 là nhận >255 với hàm thông thường rồi em. A-Tools 2020 sẽ full ký tự trên tất cả các phiên bản Excel (từ Excel 2003 về trước vẫn giới hạn tối đa 255 ký tự).
 
Lần chỉnh sửa cuối:
Có thể Excel của em đang là 32-bit nên em cần tải và cài Add-in A-Tools 32-bit nhé.
Bài đã được tự động gộp:



Từ bản Office 2016, 2019 update mới và Office 365 là nhận >255 với hàm thông thường rồi em. A-Tools 2020 sẽ full ký tự trên tất cả các phiên bản Excel (từ Excel 2003 về trước vẫn giới hạn tối đa 255 ký tự).
Tự em test ban free trên Ex 2010 vẫn giới hạn 255 ký tự. A chắc em download bản cũ
 
Tự em test ban free trên Ex 2010 vẫn giới hạn 255 ký tự. A chắc em download bản cũ

Ah. Bản 2020 anh chưa phát hành em à.
Em để ý cách hiển thị gợi ý của bản 2020 này:
(Hàm BS_SQL lấy dữ liệu Excel từ máy tính khác trong mạng (máy chủ) )
 
Thầy Tuân cho em hỏi sao khi cài A-Tools vào thì mấy phím tắt em cài bằng VBA không hoạt động được, ví dụ như em tạo code cho phím tắt fillup (ngược với FillDown là ctrl+D) là ctrl+shift+D thì xài ko được ạ, còn một số phím tắt linh tinh tự tạo nữa. Sau khi em gỡ A-tools ra lại sử dụng bình thường
 
Thầy Tuân cho em hỏi sao khi cài A-Tools vào thì mấy phím tắt em cài bằng VBA không hoạt động được, ví dụ như em tạo code cho phím tắt fillup (ngược với FillDown là ctrl+D) là ctrl+shift+D thì xài ko được ạ, còn một số phím tắt linh tinh tự tạo nữa. Sau khi em gỡ A-tools ra lại sử dụng bình thường

Bộ phím tắt A-Tools sử dụng để cập nhật công thức là:
CTRL+SH+A
CTRL+SH+S
CTRL+SH+D
CTRL+SH+F

Nếu các ứng dụng VBA không liên quan đó nhóm phím tắt trên thì không liên quan nhé.
 
Anh ơi, cho em hỏi làm sao để lấy những dòng không rỗng tại câu điều kiện WHERE?
 
Bluesofts xin thông báo phiên bản mới Add-in A-Tools v9.4.0.0.: 15-08-2020
v9.4.0.0: 15-08-2020 (Add-in A-Tools 2019)

I. BÁO CÁO ĐỘNG: BS_SQL, BS_VLOOKUP, ... HÀM MẢNG
+ Sửa: cho phép các báo cáo đặt liền kề (gần sát) nhau. Phiên bản cũ phải cách 2 cột.
+ Sửa: lỗi không chạy sự kiện OnDblClick, OnSelectionChange khi cái báo ở một ô bên ngoài hàm. Phiên bản 9.3.0.3 về trước phải khai báo trực tiếp bên trong hàm.
+ Nâng câp: tính năng co giãn theo cột chạy tốt hơn.
+ Thêm: thuộc tính TTC (TotalColumn). Áp dụng với báo cáo co giãn cột, nếu là YES (TTC=YES;) báo cáo có cột tổng cộng bằng công thức Excel tách bên phải ngoài mảng kết quả trả về. Ngầm định là NO.
+ Thêm: Thư viện lập trình thêm các hàm và thủ tục trong class BSFormulcaArray:
- BSFormulaArray.DoSheetBeforeDoubleClick(...) - gọi lệnh nhấp đúp chuột
- BSFormulaArray.DoSheetSelectionChange(...) - gọi lệnh chọn ô
- BSFormulaArray.HasEvent(...) - Hàm kiểm tra trong ô công thức có tên sự kiện không. Các sự kiện: ONDBLCLICK, ONSELECTIONCHANGE,...
+ Thêm: Phím tắt CTRL+ENTER tương đương với nhấp đúp chuột. Dùng khi báo cáo có sự kiện ONDBLCLICK.

II. NHẬP LIỆU NÂNG CAO
+ Sửa: lỗi không hiển thị hộp thoại tìm kiếm nếu workbook (tập tin Excel) đặt thuộc tính 'New Window".
+ Sửa: khi không chọn giá trị trong danh sách tra cưu, hiển thị hai lần thông báo nếu ô nhập liệu có thuộc tính Validation List.
+ Sửa: không hiện thông báo "Hãy chọn giá trị trong danh sách" nếu thiết lập "Nếu lỗi" là "Bỏ qua". Thực hiện trong "Nhập liệu nâng cao"->"Mở rộng".
+ Sửa: không tạo được Validation List trong Nhập liệu liệu nâng cao nếu Excel coi dấu phảy "," là ký tự thập phân.

III. CHIA SẺ EXCEL QUA MẠNG
+ Sửa: lỗi không chia sẻ được tập tin Excel đặt thuộc tính 'New Window".
+ Nâng cấp: thủ tục BSUser.Disconnect([Prompt] cho phép tùy biến câu thông báo cho máy khách khi ngắt kết nối bằng việc truyền chuỗi vào tham số Prompt. Tham số này có thể bỏ qua. Thủ tục này chạy tốt hơn phiên bản trước đây.
+ Thêm: thư viện lập trình thêm thủ tục sự kiện OnCanOpenRange() trong class BSNetwork.
OnCanOpenRange (Byval User As IBSUser, Byval WbName As String, Byval SheetOrRangeName As String; Cancel As Boolean)
Sự kiện này chạy phía máy chủ báo cho người lập trình biết user phía máy đang yêu cầu mở tập tin và tên vùng/sheet nào.
Nếu Cancel = True thì user không được mở sheet nữa.
Sự kiện này được dùng để tùy biến quyền user được mở vùng. Ví dụ chỉ cho mở trong một khoảng thời gian nào đó.
+ Thêm: các hàm liên quan đến MsgBox khi làm gửi và nhận thông điệp MsgBox.
- GetXmlMsgBox: hàm nhận về chuỗi mô tả cấu trúc XML các tham số hàm MsgBox.
- MsgBoxXml: hàm hiển thị MsgBox unicode từ chuỗi có cấu trúc XML.
+ Thêm: các hằng số hỗ trợ lập trình mạng.

v9.3.0.3: 22-07-2020 (Add-in A-Tools 2019)
+ Sửa: lỗi hàm GETONCE() làm mất phần số lẻ nếu Control Panel để định dạng dấu "," là ký tự ngăn phần thập phân.
+ Sửa: hàm BS_SQL chạy không ổn định với thuộc tính tạo nhóm GROUP, FOOTER trên Excel 64-bit
+ Sửa: thông báo sai lỗi nhật liệu nâng cao "Intersec..." nếu chạy code VBA mà con trỏ đặt trong vùng thiết lập nhập liệu nâng cao.
+ Nâng cấp: Thư viện lập trình hàm mảng BSFormulaArray cho phép đưa mảng một chiều với các kiểu dữ liệu. Phiên bản cũ phải là mảng kiểu VARIANT.

v9.3.0.2: 07-07-2020 (Add-in A-Tools 2019)
+ Nâng cấp: Hàm BSNetwork.Connect() không có tham số cho phép kết nối theo thông tin user đang kết nối bới người dùng. Nếu A-Tools chưa chạy thì sẽ hiển thị hộp thoại kết nối.
+ Thêm: BSNetwork.Host lưu tên máy chủ mà máy khách đang kết nối đến.

v9.3.0.1: 03-06-2020 (Add-in A-Tools 2019)
+ Sửa: lỗi hàm GetOnce khi giá trị lấy về có số lẻ, Control Panel định dạng dấu phẩy (,) làm ký tự thập phân.
+ Nâng cấp: vùng, bảng tính Excel chia sẻ qua mạng loại "Multiple User"/Nhiều người nhập chung một sheet tốt hơn.

v9.3.0.0: 30-04-2020 (Add-in A-Tools 2019)
PHIÊN BẢN HỖ TRỢ TỐ NHẤT CHO CHIA SẺ MẠNG, LẬP TRÌNH VỚI THƯ VIỆN ADDINATOOLS.DLL
(Thư viện đã được kiểm tra kỹ với các ngôn ngữ lập trình: VBA, VB6, Delphi, C#, VB.NET)

+ Nâng cấp: chức năng "Xem thay đổi" cho phép hiển thị những thay đổi người nhập liệu trong mạng, màn hình hiển thị đúng tại ô vừa thay đổi.
(Chỉ hiển thị đúng vị trí từ Excel 2007 trở lên).

+ Nâng cấp: Chương trình "EnableAddins" lên version 2.3 khôi phục menu A-Tools tốt hơn.
+ Nâng cấp: Cho phép chạy nhiều ứng dụng có dùng sự kiện của thư viện Add-in A-Tools trong một chương trình Excel.
+ Nâng cáp: Các hàm và sự kiện lập trình trong thư viện A-Tools chạy tốt hơn.
+ Nâng cấp: Thư viện BSAC.ocx lên 2.2, sửa lỗi chạy trong Excel 2007.

+ Thêm: sự kiện BSNetwork.OnCreatedAccount() cho phép lập trình phía máy chủ, biết user mới được tạo.
+ Thêm: sự kiện BSNetwork.OnProgress() cho phép lập trình biết được tiến trình tải dữ liệu phía máy chủ. Cho phép thay thế giao diện progress của A-Tools bằng giao diện người lập trình.
Event OnProgress(State As BSProgressState, PositionValue, MaxValue, Cancel As Boolean, DefaultForm As Boolean)
+ State trả về 5 trạng thái:
psPrepare : giai đoạn chuẩn bị tải dữ liệu, người lập trình hiển thị giao diện progress (ProgressBar.Visible = True). Tham số DefaultForm gán FALSE nếu bạn muốn dùng progress riêng, A-Tools sẽ không dùng giao diện ngầm định.
psBegin : giai đoạn bắt đầu tải dữ liệu, tham số MaxValue trả về tổng số byte cần tải, người lập trình thiết lập miền lớn nhất cho progress (ProgressBar.Maximum = MaxValue)
psRunning : giai đoạn đang trong quá trình tải dữ liệu, tham số PositionValue cho biết đã tải được bao nhiêu byte, người lập trình thiết lập giá trị cho progress (ProgressBar.Value = PositionValue). Tham số Cancel nếu là TRUE việc tải dữ liệu sẽ dừng lại.
psEnd : giai đoạn tải xong số byte (PositionValue = MaxValue)
psFinished : giai đoạn hoàn tất tải dữ liệu, người lập trình ẩn giao diện progress (ProgressBar.Visible = False)


+ Sửa: Vùng kiểm duyệt tên user, thời gian nhập, phê duyệt kiểm soát sửa xóa dữ liệu, chèn, xóa dòng, cột kiểm soát tốt hơn.
+ Sửa: lỗi hàm BS_ARRAY2D
+ Sửa: Một số lỗi nhỏ khác của phiên bản cũ cũng được sửa.

v9.2.0.0: 12-04-2020 (Add-in A-Tools 2019)
+ Sửa: lỗi hàm BS_SQL với tham số SVR=YES lấy dữ liệu từ máy chủ nếu có ít nhất một ô trong các cột tạo ra bởi hàm VTC là NULL.
+ Sửa: lỗi hàm BS_SQL với tham số SVR=YES lấy dữ liệu từ máy chủ nếu bảng lấy ra có cột chứa sổ lẻ mà định dạng Regional Options->Number máy chủ mà máy khác khác nhau.
(*) Nguyên tắc chia sẻ đúng - > Máy chủ luôn đặt theo "English (United States)", có dấu chấm (.) làm ký tự thập phân.
+ Thêm: Kỹ thuật lập trình hàm mảng cho nhà phát triển, thêm khai báo BSFormulaInfo.lpfnOnGetResult,
cho phép trỏ vào địa chỉ của một hàm callback, hàm này có chức năng tạo mảng hoặc điều khiển tùy ý sau khi công thức hoàn thành.
Fucnction Prototype:
(*) VBA
Function CallbackResult(ByVal fi As AddinATools.IBSFormulaInfo, _
ByVal FmlRange As Range, _
ByVal FmlState As AddinATools.BSFmlState, _
AResult As Variant) As Boolean

'MsgBox fi.FmlRange.Address
If fi.FmlState = fsOnCalc Then
AResult = create array
CallbackResult = True
ElseIf fi.FmlState = fsAfterCalc Then
'Do somthing
End If
End Function

(*) DELPHI
function CallbackResultfunction(fi: IBSFormulaInfo; fmlRange: IDispatch; fmlState: Longint; var AResult: OleVariant): Boolean;
begin
end;

v9.2.0.0: 08-04-2020 (Add-in A-Tools 2019)
+ Nâng cấp: Công cụ EnableAddins lên version 2.2 khôi phục menu A-Tools hoàn thiện hơn. Khi Excel mất menu A-Tools nó sẽ mwor tự động
chương trình này để người dùng thực hiện lệnh.

v9.2.0.0: 04-03-2020 (Add-in A-Tools 2019)
+ Sửa: lỗi kết nối mạng trong phiên bản 64-bit của phiên bản 9.2 ngày 28-08-2019

v9.2.0.0: 28-08-2019 (Add-in A-Tools 2019)
(*) Phiên bản này tập trung vào nâng cấp tốc độ sắp xếp của các hàm mảng

This is version 9.2 BETA3.
Đã có rất nhiều cải tiến về tốc độ và sức mạnh của các hàm mảng của Add-in A-Tools.
Phiên bản chính thức Bluesofts sẽ phát hành đầu tháng 9-2019

v9.1.1.3: 25-07-2019 (Add-in A-Tools 2019)
(*) Phiên bản này tập trung vào nâng cấp tốc độ sắp xếp của các hàm mảng
Các phiên bản 9.* nâng cấp miễn phí !

+ Nâng cấp: Tốc độ sắp xếp dữ liệu của các hàm mảng tăng nhanh gấp trăm lần phiên bản cũ.
Sắp xếp 60.000 dòng chỉ mất ~1.5 giây, bản cũ mất khoảng ~400 giây.

Các hàm sau đây có tính năng cũng như thuộc tính sắp xếp:
- Hàm BS_SORTARRAY
- Các hàm mảng khai báo trong tham số OPTIONS: "SORT=vị_trí_cột_sắp_xếp;" gồm các hàm
BS_SQL, BS_TABLE, BS_VLOOKUP, BS_HLOOKUP, BS_UNIQUE, BS_FILLARRAY,
BS_JOIN, BS_FILES, BS_GETTABLENAMES,...
Ví dụ hàm BS_Vlookup có sắp xếp:
=BS_Vlookup("4="Hà Nội", A1:E60000,,,"SORT=6")
(Lấy ra danh sách dòng có cột số 4 chứa từ "Hà Nội", sắp xếp theo cột số 6
theo dữ liệu nguồn A1:E60000 ).

+ Sửa: Chức năng Nhập liệu nâng cao sửa các lỗi như sau:
- Copy dữ liệu trong vùng đã nhập trùng mã nhưng các cột còn lại khác nhau. Lỗi các giá trị giống nhau trên các dòng khi dán.
- Dòng tiêu đề của vùng dữ liệu nguồn mà không phải TEXT sẽ bị lỗi.

+ Nâng cấp: Chương trình "EnableAddins" để khôi phục menu "A-Tools" thành công 100%.
+ Nâng cấp: Khi mất menu A-Tools, lúc khởi động Excel A-Tools sẽ tự động thông báo người dùng biết và gọi ý chạy "EnableAddins"
+ Sửa: Lỗi chương trình tạo tùy chọn đọc số thành chữ AcchelperOptions lỗi trong Windows 64-bit.

+ Sửa: Tính thời gian thực thi của các hàm mảng chính xác hơn.
+ Thêm ví dụ hàm BS_VLOOKUP() trong thư mục "C:\A-Tools\Help & Demos\"

+ Sửa: Lỗi sự kiện OnDblClick, OnSelectionChange không chạy với hàm mảng tự tạo của người dùng với thư viện BSFormulaArray.
+ Sửa: Lỗi hàm GOTO khi được gọi bởi các sự kiện OnDblClick nếu cột tìm kiếm là giá trị số (number).

+ Nâng cấp: Lập trình VBA với các hàm lập trình mạng trong class BSNetwork: Connect(), StartServer() sẽ raise error cho môi trường lập trình khi có lỗi.
+ Nâng cấp: Hàm SORTARRAY2D trong VBA thêm các tham số đầy đủ hơn.
+ Thêm: Trong VBA, thư biện DLL của A-Tools cung cấp thêm các hàm để biết thông tin về A-Tools:
- GetAToolsVersion(): trả về version A-Tools
- GetAToolsVersionDate(): trả về ngày nâng cấp version A-Tools
- GetAToolsVersionName(): trả về tên phiên bản A-Tools
- GetAToolsVersionType(): trả về loại phần mềm A-Tools PRO, FREE, CLIENT)

+ Nâng cấp: Bộ controls lập trình BSAC lên 2.0.0.9

DOWNLOAD
 
Mình sử dụng atools để trích xuất dữ liệu nhưng không hiểu sao một số giá trị trong bản trích xuất bị cộng thêm 1 so với bảng dữ liệu gốc :D (Đều là giá trị số nguyên).
 
Mình sử dụng atools để trích xuất dữ liệu nhưng không hiểu sao một số giá trị trong bản trích xuất bị cộng thêm 1 so với bảng dữ liệu gốc :D (Đều là giá trị số nguyên).

Bạn đưa công thức lên đây nhé.
 
Bạn đưa công thức lên đây nhé.
Mình dùng sql builder ý
Bài đã được tự động gộp:

Mình dùng file khác thì ko sao, thử trên máy tính khác thì vẫn bị. Có cột bị cộng thêm 1, có cột thì ko bị
Bài đã được tự động gộp:

Bạn đưa công thức lên đây nhé.
Giờ mình ko ngồi máy tính đk, mai mình up file lên, bạn xem giúp mình nhé
 
Cho em hỏi chút, em định làm report bằng add-in nhưng khi em dùng build sql thì ko hiện các colum bằng tên mà toàn hiện thứ tự F1,F2....F20. Em phải fix sao ạ. Các colum e sử dụng ko dấu có dùng dấu "_", lúc đầu thì có hiện tên colum nhưng về sau lại chuyển hết thành F1,....
53453535.png
 
Cho em hỏi chút, em định làm report bằng add-in nhưng khi em dùng build sql thì ko hiện các colum bằng tên mà toàn hiện thứ tự F1,F2....F20. Em phải fix sao ạ. Các colum e sử dụng ko dấu có dùng dấu "_", lúc đầu thì có hiện tên colum nhưng về sau lại chuyển hết thành F1,....
View attachment 245765
Em lpjair thiết lập một trong hai cách sau.
1. Dùng tên sheet$ làm nguồn, khi đó dòng số 1 phải là tiêu đề cột.
2. Đặt NAME bao bảo dữ liệu nguồn, từ dòng tiêu đề.
Lần đầu tiên bạn làm như trên phải lưu và đóng file mới thành công.
 
Web KT
Back
Top Bottom