phần 1|Excel cơ bản
Công việc tính toán kết cấu chiếm phần quan trọng và nhiều thời gian của kỹ sư thiết kế. Lập bảng tính Excel để tự động hoá là công lao động mang tính gieo mầm: khổ một lần dùng cả đời. Vì quá trình thiết kế cũng như nặn tượng vậy, phải gọt giũa tính toán lại nhiều lần mới thu được kết quả cân đối, vừa ý. Có bảng tính sẽ rút ngắn rất nhiều thời gian đến kết quả tròn trịa.Kinh nghiệm cho thấy chỉ cần dùng các chức năng, hàm có sẵn trong Excel là đủ dùng cho hầu hết nhu cầu nghề nghiệp rồi. Nếu kỹ năng Excel của bạn chưa tốt lắm thì cũng không sao cả, cứ bắt tay vào làm, vướng đến đâu thì Google đến đó. Chứ khó mà thuộc hết các thao tác cần dùng khi mới bắt đầu được.
Trình bày
Khâu trình bày bảng tính cũng quan trọng, vì sản phẩm được in ra và kẹp vào quyển thuyết minh tính toán của hồ sơ thiết kế xây dựng.
Đầu tiên là set khổ giấy, thông thường là A4. Chọn View>Page Break Preview để hiện biên khổ giấy chiều rộng chiếm bao nhiêu cột trong bảng tính. Tiếp đó điều chỉnh chiều rộng các ô để đủ khoảng cách hiển thị con số, chữ chú giải.
Thông thường đánh dấu riêng các ô để nhập dữ liệu từ bàn phím, phân biệt với các ô kết quả tính toán. Có thể đánh dấu bằng cách chọn màu khác đi cho text hoặc màu nền của ô đó.
Có khá nhiều thông số đầu vào: kích thước, mác vật liệu, tải trọng hay nội lực của cấu kiện, … Kết quả đầu ra thường từ các tính toán về cốt thép, ứng suất, độ võng, độ lún, … Rất nhiều ô tính toán không muốn đưa vào bản in ra thì cho ra ngoài vùng in Page Break.
Các hàm thường dùng
Excel cung cấp rất nhiều hàm có sẵn cho các mục đích tính toán. Chúng rất mạnh, có thể đáp ứng hầu hết nhu cầu của người kỹ sư. Thậm chí còn có thể làm công việc tính lặp.
Ví dụ phần tính lặp khó nhằn của bài toán tính lún móng nông. Quy trình tính lún theo phương pháp cộng lớp quen thuộc như sau
1. Chia nền đất dưới đáy móng thành các lớp phân tố, chiều dày tối đa là b/5. (b là chiều rộng móng)
2. Tại chiều sâu z (tính từ đáy móng) của mỗi lớp phân tố, tính
Ứng suất do trọng lượng bản thân đất $\sigma_z^{bt}=\sigma_{z=0}^{bt}+\sum{\gamma_ih_i}$
với $\sigma_{z=0}^{bt}$ là ứng suất do trọng lượng bản thân đất tại cao độ đáy móng (z=0)
Ứng suất gây lún: $\sigma_z^{gl}=K_o\sigma_{z=0}^{gl}$
với $\sigma_{z=0}^{gl}=p-\sigma_{z=0}^{bt}$ là ứng suất gây lún tại cao độ đáy móng (z=0)
p là áp lực dưới đáy móng do tải trọng gây ra
Ko là hệ số tính đến sự thay đổi theo độ sâu của ứng suất gây lún, phụ thuộc chiều sâu z và kích thước móng l, b. Có thể tra bảng C.1 của TCVN 9362:2012. Nhưng để lập bảng tính thì dùng công thức gốc tính Ko thuận tiện hơn (theo lý thuyết Cơ học đất)
$$K_o=\frac{2}{\pi}\left[\arctan\frac{lb}{4z\sqrt{l^2/4+b^2/4+z^2}} + l\frac b4 z\frac {l^2/4+b^2/4+2z^2} { (l^2/4+z^2)(b^2/4+z^2)\sqrt{l^2/4+b^2/4+z^2}}\right]$$
Tính lún của lớp phân tố tính theo công thức
$$S_i=\frac{\beta}{E_o}\sigma_z^{gl}h_i$$
3.Tăng chiều sâu z đến lớp phân tố tiếp theo. Lặp lại bước 2
Đến khi $\sigma_z^{bt}>5\sigma_z^{gl}$ thì dừng vòng lặp (nếu đất yếu thay 5 bằng 10). Đây chính là điều kiện tắt lún.
Cách thực hiện vòng lặp ở đây theo từng dòng. Mỗi lần copy xuống là bước tiếp theo của vòng lặp, ứng với giá trị tăng lên của z.
Bắt đầu từ dòng 80 trong file xls đính kèm.
Bước 1 gồm 3 cột:
Cột B: chính là giá trị của z
Cột C: chiều dày lớp phân tố hi
Cột D: độ sâu thực, tính đến mặt đất. Công thức: độ sâu đáy móng (có dấu 💲 vì giá trị này không đổi khi copy xuống dòng) cộng z (cột B).
Dòng đầu tiên (80) ứng với cao độ đáy móng (z=0): ô B80 cho bằng 0. Từ dòng tiếp theo chỉ việc cộng thêm chiều dày lớp phân tố hiện tại vào cột B. Do đó cột B thể hiện bước nhảy của vòng lặp, ứng với mỗi lớp phân tố.
Để tính ra cột C ta đối mặt với 1 vấn đề khó là chọn chiều dày lớp phân tố dừng lại ở đúng độ sâu phân chia 2 lớp đất. Nếu không giải quyết được, ta phải nhập tay chiều dày mỗi lớp. Như vậy sẽ khá khó chịu vì chưa được tự động hoá hoàn toàn. Ví dụ ở đây, đáy móng nằm ở độ sâu 2m, trong lớp đất số 2. Đến chiều sâu 4m (ô M20) là đáy lớp số 2, bắt đầu vào lớp số 3. Nếu chiều dày lớp phân tố này là max=b/5=1,6m; ta còn 0,4m nữa là đến đáy lớp đất 2. Đó chính là chiều dày cần chọn cho lớp phân tố tiếp theo (ô C81)
Làm sao cho Excel làm theo quá trình mô tả trên, cần thêm vài bước tính trung gian (các cột K,L,M ở ngoài vùng in).
Cột K: lấy số thứ tự (index) của lớp đất hiện tại ứng với chiều sâu z. Sử dụng hàm tìm kiếm quan trọng MATCH. Từ đây xác định giá trị cho cột L và E.
Cột L: chiều sâu đến đáy lớp đất hiện tại ứng với độ sâu z. Dùng hàm INDEX từ cột K. Mục đích để xác định cột M
Cột M: chiều dày còn lại đến đáy lớp đất hiện tại từ độ sâu z. Đơn giản bằng cột L trừ đi cột D.
đến đây có thể xác định được chiều dày lớp phân tố cho cột C. Chỉ cần lấy giá trị nhỏ hơn của b/5 và cột M. Bẫy thêm một trường hợp gặp đáy lớp đất khi cột M bằng 0 bằng hàm IF. Xong một bước khó nhằn 🍺
Cột E: tên lớp đất ứng với độ sâu K. Cột này mang ý nghĩa tiện theo dõi trong bảng tính in ra. Tương tự như cột L Cũng dùng hàm INDEX từ cột K lấy với cột tên lớp đất (B20 đến B27) từ bảng dữ liệu đầu vào trụ địa chất.
Sang bước 2:
Cột F: giá trị của Ko. Dòng đầu tiên bằng 1. Các dòng tiếp theo dùng công thức đã nói với các hàm ATAN, SQRT ngoài cộng trừ nhân chia. Cách làm quá đơn giản so với bước xác định hi dù công thức nhìn ghê ghê. Lưu ý sử dụng đủ các dấu ngoặc, có ( thì phải có ). Và dùng 💲 cho các giá trị không đổi khi copy xuống thực hiện vòng lặp.
Cột H: giá trị của $\sigma_z^{gl}$, đơn giản xác định theo Ko
Cột G: giá trị của $\sigma_z^{bt}$. Ta lại cần dùng thêm các cột trung gian N, O. Mỗi bước vòng lặp giá trị cột G mang tính cộng dồn, thể hiện sự tăng lên của ứng suất do trọng lượng bản thân đất theo chiều sâu.
Cột N: Lấy giá trị dung trọng tự nhiên $\gamma_i$ của đất ứng với chiều sâu z từ bảng dữ liệu trụ địa chất. Cách làm dùng hàm INDEX quen thuộc và lợi hại từ cột K.
Cột O: $\gamma_ih_i$, chuyển từ dung trọng thành ứng suất. Giá trị của O được dùng để cộng dồn vào $\sigma_z^{bt}$ mỗi bước vòng lặp.
Đến thao tác tính lún:
Cột I: giá trị của module biến dạng Eo từ trụ địa chất, cũng dùng hàm INDEX quen thuộc.
Cột J: độ lún của lớp phân tố Si theo công thức
Bước 3: thực hiện vòng lặp bằng cách copy từ dòng 81, thao tác là chọn cả dòng (từ cột A đến cột P, gồm cả các ô tính trung gian ngoài vùng biên). đưa chuột về góc dưới phải ô P81. Chuột hiện dầu + là kéo xuống. Các ô tính toán sẽ nhảy số tự động
Kéo đến đâu thì dừng? Ta thêm cột P thể hiện điều kiện dừng như sau. Dùng hàm IF với điều kiện dừng là cột G lớn hơn 5 lần cột H. Khi đó giá trị cột P bằng 0, không thì bằng 1. Thực chất cột P chỉ có 2 giá trị 0 hoặc 1. Mục đích là để tính độ lún cuối cùng (ô E95) bằng cột J nhân cột P. Dòng nào có giá trị cột P bằng 0 thì độ lún Si của phân tố đó không được kể vào độ lún S cộng dồn cuối cùng. Thao tác này cho phép ta kéo chuột xuống thoải mái thay vì phải rón rén xem dòng mới đã thỏa mãn $\sigma_z^{bt}>5\sigma_z^{gl}$ hay chưa.
Lưu ý kết thúc gõ công thức nhân 2 cột ở ô E95 cần bấm tổ hợp phím Control+Shift+Enter thay vì Enter như thông thường.
Rồi, vậy là ta đã có bảng tính lún theo phương pháp cộng lớp một cách tự động hoàn toàn. Trong thiết kế nền móng, đây là bài toán khá khó nhằn và mất nhiều thời gian. Có bảng năng suất sẽ tăng lên đáng kể. Như vậy anh em kỹ sư chỉ cần mò dần chiều sâu, kích thước móng để thu được điều kiện lún trong phạm vi cho phép.
🎁 file Excel đính kèm minh hoạ ví dụ trên
Như vậy ta thấy ngoài các hàm cơ bản, để thực hiện vòng lặp, trong bảng tính này sử dụng các hàm thuộc họ tìm kiếm: MATCH, INDEX.
Nếu không hiểu 1 hàm gì, ta có thể google. Ví dụ gõ “microsoft excel hàm match” sẽ ra kết quả ngay đầu là trang tiếng Việt của Microsoft. Trong đó giải thích rõ ràng cách dùng, cú pháp và ví dụ minh hoạ cho hàm này.
Nếu các web tiếng Việt chưa đủ thông tin bạn cần tìm hiểu, hãy google tiếng Anh. Số kết quả nhiều hơn và nhanh tìm được cách xử lý. Khả năng tìm được những cách làm hay là rất cao.. Đơn giản vì số người dùng là toàn cầu nếu so sánh với số người dùng tiếng Việt. Nếu tiếng Anh bạn chưa tốt lắm có thể dùng Google Translate.
Ví dụ muốn tìm hiểu về cách làm vòng lặp, dùng từ khoá “excel tạo vòng lặp không cần lập trình” cho vào dịch, rồi paste tiếng Anh sang Google tìm kiếm. Kết quả ra một trong những diễn đàn tin học nổi tiếng là StackOverFlow có rất nhiều chia sẻ sáng tạo.
Trên đây đã minh hoạ trên ví dụ thực tế về cách Excel có thể tự động hoá tuyệt vời như thế nào. Nếu có chỗ nào tui lướt qua nhanh quá chưa hiểu, bạn comment đóng góp giúp nha.
Phần tiếp theo sẽ nói về cách lập trình VBA đơn giản trong Excel để lập bảng tính trong trường hợp vòng lặp phức tạp không thể dùng được các hàm có sẵn.
Không có nhận xét nào:
Đăng nhận xét