{Giúp đỡ} Tạo userform để nhập liệu (1 người xem)

  • Thread starter Thread starter romkut3
  • Ngày gửi Ngày gửi
Liên hệ QC

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

romkut3

Thành viên hoạt động
Tham gia
9/4/13
Bài viết
109
Được thích
3
dạ tình hình nhờ anh chị giúp đỡ em thử cái form này mục đích là để mail merge sang word thôi, em cố gắng nhưng vẫn mắc 1 số lỗi như sau:
1. Vấn đề của em là: khj mình nhập cái j vào thì nó sẻ hiện cột tên công trình vào listbox1, khj mình kích vào 1 công trình nào đó thì nó sẻ hiện các dữ liệu đã nhập trong các tab userform tương ứng.
2. Em muốn form nó lưu lại những gì đã nhập ở lần cuối cùng.
3. Vì có nhiều phụ lục nên mỗi 1 tab em sẻ làm 1kiểu khác nhau cho đỡ nhầm ạ. Do còn rất nhiều dữ liệu điền và em đang thiết kế từ từ lại ạ.
4. Các dữ liệu của em nhập vào dạng text, có mutiline, và có dạng số, cái này em cũng đọc trên diễn đàn.
5. 3 nút comand: xóa để nhập mới: xóa trắng các ô để nhập mới 1 công trình. Nút sửa là để khj mình pick zô công trình nào sai thì mình sẻ sửa lại và tự động lưu lại chứ k thêm mới. Nút nhập vào là để khj xóa xong thì mình sẻ nhập vào 1 dòng mới.
6. Cái này màn hình em full hết, k bị mất các nút comand... mọi người down về mà k full có thể chỉnh lại hộ em đc k?
7. Và cuối cùng là thú thật là em k biết j về lập trình cả, chỉ kiếm các mẫu form đã lập trình sẵn... tự thiết đặt lại và dán code lại theo ý của mình vào thôi ạ... em chỉ hiểu sơ sơ. Có j trong code a note khj chú lại công thức lệnh để làm j em sẻ tự hiểu và tự mày mò thêm.
Em cũng xjn lỗi do dữ liệu nó chưa rõ ràng nên ae k hiểu đc ý của em. Cám ơn anh đã quan tâm ạ.
* Dữ liệu mang tính chất minh họa và đa số là dạng text, nếu dạng số trong code các bạn có thể chỉ mình định dạng nó đc k?
*** Mình mới up lại file, các bạn, ace xem lại dùm ạ
 

File đính kèm

Lần chỉnh sửa cuối:
Sau khi góp í file vẫn vậy; đành tạm biệt bạn thôi!
 
Upvote 0
Rằng form không nên to đùng, chiếm cả màn hình làm vậy;
Chưa cần thiết vẻ hết các Control lên như vậy; chỉ 4 hay 5 Control đặt trưng thôi (kiểu Text, kiểu số ( có chứa thập fân càng tốt), kiểu ComboBox để lựa chọn,. . . .
Các nút lệnh thì nên có đủ, có Code càng tốt,. . . .
 
Upvote 0
Rằng form không nên to đùng, chiếm cả màn hình làm vậy;
Chưa cần thiết vẻ hết các Control lên như vậy; chỉ 4 hay 5 Control đặt trưng thôi (kiểu Text, kiểu số ( có chứa thập fân càng tốt), kiểu ComboBox để lựa chọn,. . . .
Các nút lệnh thì nên có đủ, có Code càng tốt,. . . .
À... sory bạn mình tưởng trong topic kia bạn đang nói chuyện vs người khác,,,, mục đích chính của mình là nhập các cpntrol vào các cột tương ứng ơ sheet 1,,,, các nút lệnh thì mình chỉ cần thế thôi, do mình mới tập tò góp nhặt nên mình chưa hiểu cách bạn trao đổi lắm... bạn có thể xem qua dùm mình đ ck?



còn csai form to tràn ra ngoài bạn test hộ thử màn hình mình nó thể hiện bình thường mà,,,
 
Lần chỉnh sửa cuối:
Upvote 0
À... SORY BẠN MÌNH TƯỞNG TRONG TOPIC KIA BẠN ĐANG NÓI CHUYỆN VS NGƯỜI KHÁC,,,, MỤC ĐÍCH CHÍNH CỦA MÌNH LÀ NHẬP CÁC CPNTROL VÀO CÁC CỘT TƯƠNG ỨNG Ơ SHEET 1,,,, CÁC NÚT LỆNH THÌ MÌNH CHỈ CẦN THẾ THÔI, DO MÌNH MỚI TẬP TÒ GÓP NHẶT NÊN MÌNH CHƯA HIỂU CÁCH BẠN TRAO ĐỔI LẮM... BẠN CÓ THỂ XEM QUA DÙM MÌNH Đ CK?
CÒN CSAI FORM TO TRÀN RA NGOÀI BẠN TEST HỘ THỬ MÀN HÌNH MÌNH NÓ THỂ HIỆN BÌNH THƯỜNG MÀ,,,
Bạn vi phạm nội quy tại khoản 3, mục II. Hình thức của bài viết (không được viết Hoa), xem nội quy ở Link sau:
http://www.giaiphapexcel.com/diendan/threads/nội-quy-diễn-đàn-cập-nhật.76052/
 
Upvote 0
Xin góp với bạn vài í từ nhỏ tới lớn:
(*) Không nên đè ra tô màu cả 1 dòng 5 như vậy; Chỉ những ô nào có dữ liệu mà thôi; Nhưng cần tô màu khác với những trường quan trọng;
Như nó là chỉ mục, không có nó dòng dữ liệu không tồn tại,. . . .
Nhìn vô trang dữ liệu của bạn chưa rõ cột nào sẽ quyết định sự tồn tại của dòng dữ liệu tồn vong (?!)
Bạn nhập dữ liệu giả lập chưa chưa chuẩn; VD cột 'Quyết đinh' nên là 325/UBH, . . . để người khác có nhã í giúp bạn còn hiểu là độ dài của ô này hay Control cho ô cỡ nào, rộng bao nhiêu là tối ưu,. . . .

Dữ liệu giả lập của bạn chưa rõ đưa vô cột nào để xác định dòng cuối; Có xác định dòng cuối chứa dữ liệu mới mong xác định dữ liệu vừa nhập của bạn.

(*) Bạn nên khai báo 1 biến dùng chung trong form, như
Dim ID As Long
Sau đó trong macro ListBox1_Click bạn thử thêm 2 dòng lệnh thành vầy
PHP:
Private Sub ListBox1_Click()
      txtTCT = ListBox1.Column(0)
      txtPA = ListBox1.Column(1)    
      ID = 1 + Me!ListBox1.ListIndex   'Thêm  Dòng 1  '
        MsgBox ID                            'Dòng Thêm 2   '
End Sub
& sau đó bấm chuột lên ListBox cho vui nha!
. . . .
 
Upvote 0
Xin góp với bạn vài í từ nhỏ tới lớn:
(*) Không nên đè ra tô màu cả 1 dòng 5 như vậy; Chỉ những ô nào có dữ liệu mà thôi; Nhưng cần tô màu khác với những trường quan trọng;
Như nó là chỉ mục, không có nó dòng dữ liệu không tồn tại,. . . .
Nhìn vô trang dữ liệu của bạn chưa rõ cột nào sẽ quyết định sự tồn tại của dòng dữ liệu tồn vong (?!)
Bạn nhập dữ liệu giả lập chưa chưa chuẩn; VD cột 'Quyết đinh' nên là 325/UBH, . . . để người khác có nhã í giúp bạn còn hiểu là độ dài của ô này hay Control cho ô cỡ nào, rộng bao nhiêu là tối ưu,. . . .

Dữ liệu giả lập của bạn chưa rõ đưa vô cột nào để xác định dòng cuối; Có xác định dòng cuối chứa dữ liệu mới mong xác định dữ liệu vừa nhập của bạn.

(*) Bạn nên khai báo 1 biến dùng chung trong form, như
Dim ID As Long
Sau đó trong macro ListBox1_Click bạn thử thêm 2 dòng lệnh thành vầy
PHP:
Private Sub ListBox1_Click()
      txtTCT = ListBox1.Column(0)
      txtPA = ListBox1.Column(1)   
      ID = 1 + Me!ListBox1.ListIndex   'Thêm  Dòng 1  '
        MsgBox ID                            'Dòng Thêm 2   '
End Sub
& sau đó bấm chuột lên ListBox cho vui nha!
. . . .
ok thansk bạn góp ý, vì đây là form mình mới dựng, còn dữ liệu sẻ còn rất là nhiều.... mình đưa lên 1 số cột làm ví dụ thôi... 02 ý mình nêu trên mình nghĩ là dữ liệu đã đủ.....
toàn bộ dòng 5 mình bôi đen vì sau khj làm đc 02 ý hỏi trên thì dòng 5 sẻ là dòng quyết định>>> vì bản thân cột này mình dùng để mailmerger sang word...
toàn bộ dữ liệu của mình sẻ là dạng text để chuyển sang sang word...
có 1 điều là mình chưa hiểu, ở tab tìmcontrinh khj ta click zô 1 tencongtrình... thì sang tab chung.. nó sẻ hiện ra đc các dòng...mà sang tab pl06 nó k hiện ra nhỉ...
 
Upvote 0
ok thansk bạn góp ý, vì đây là form mình mới dựng, còn dữ liệu sẻ còn rất là nhiều.... mình đưa lên 1 số cột làm ví dụ thôi... 02 ý mình nêu trên mình nghĩ là dữ liệu đã đủ.....
toàn bộ dòng 5 mình bôi đen vì sau khj làm đc 02 ý hỏi trên thì dòng 5 sẻ là dòng quyết định>>> vì bản thân cột này mình dùng để mailmerger sang word...
toàn bộ dữ liệu của mình sẻ là dạng text để chuyển sang sang word...
có 1 điều là mình chưa hiểu, ở tab tìmcontrinh khj ta click zô 1 tencongtrình... thì sang tab chung.. nó sẻ hiện ra đc các dòng...mà sang tab pl06 nó k hiện ra nhỉ...
Bạn làm phòng Kế Hoạch, Sở TNMT tỉnh Kon Tum à.

Góp ý cho bạn:
1/ Muốn làm cái gì đó thì nêu rõ vấn đề cần.
2/ Sheet Data nên thiết kế lại để chọn huyện nào thì ra số xã của huyện đó.
3/ Sheet1 nên có tiêu đề đầy đủ tôi mới hiểu được bạn theo dõi thế nào là đáp ứng được thực tế, nếu nêu rõ vấn đề tôi nghĩ chả cần đến 94 cột như bạn làm đâu (tôi nghi ngờ là có một số cột lặp lại nội dung có thể là theo dõi nhiều đợt kiểm tra).
4/ Chỉ cần làm 1 Form là có thể đáp ứng yêu cầu, chứ không làm đến 4 MultiPage làm gì?
5/ Thiết kế 1 cái biên bản hay cái gì đó trên 1 sheet mà chả cần dùng đến mailmerger.
 
Upvote 0
Bạn làm phòng Kế Hoạch, Sở TNMT tỉnh Kon Tum à.

Góp ý cho bạn:
1/ Muốn làm cái gì đó thì nêu rõ vấn đề cần.
2/ Sheet Data nên thiết kế lại để chọn huyện nào thì ra số xã của huyện đó.
3/ Sheet1 nên có tiêu đề đầy đủ tôi mới hiểu được bạn theo dõi thế nào là đáp ứng được thực tế, nếu nêu rõ vấn đề tôi nghĩ chả cần đến 94 cột như bạn làm đâu (tôi nghi ngờ là có một số cột lặp lại nội dung có thể là theo dõi nhiều đợt kiểm tra).
4/ Chỉ cần làm 1 Form là có thể đáp ứng yêu cầu, chứ không làm đến 4 MultiPage làm gì?
5/ Thiết kế 1 cái biên bản hay cái gì đó trên 1 sheet mà chả cần dùng đến mailmerger.
Dạ k anh. em làm đơn vị tư vấn thôi. Chả là rỗi ngồi lập 1 form nhập zô để mail sang word làm hồ sơ nghiệm thu thôi ạ.
1. Vấn đề của em là: khj mình nhập cái j vào thì nó sẻ hiện cột tên công trình vào listbox1, khj mình kích vào 1 công trình nào đó thì nó sẻ hiện các dữ liệu đã nhập trong các tab userform tương ứng.
2. Em muốn form nó lưu lại những gì đã nhập ở lần cuối cùng.
3. Vì có nhiều phụ lục nên mỗi 1 tab em sẻ làm 1kiểu khác nhau cho đỡ nhầm ạ. DO còn rất nhiều dữ liệu điền và em đang thiết kế từ từ lại ạ.
4. Các dữ liệu của em nhập vào dạng text, có mutiline, và có dạng số, cái này em cũng đọc trên diễn đàn và đã làm được.
5. 3 nút comand: xóa để nhập mới: xóa trắng các ô để nhập mới 1 công trình. Nút sửa là để khj mình pick zô công trình nào sai thì mình sẻ sửa lại và tự động lưu lại chứ k thêm mới. Nút nhập vào là để khj xóa xong thì mình sẻ nhập vào 1 dòng mới.
Và cuối cùng là thú thật là em k biết j về lập trình cả, chỉ kiếm các mẫu form đã lập trình sẵn,,, tự thiết đặt lại và dán code lại theo ý của mình vào thôi ạ... em chỉ hiểu sơ sơ. Có j trong code a note khj chú lại công thức lệnh để làm j em sẻ tự hiểu và tự mày mò thêm. Em cũng xjn lỗi do dữ liệu nó chưa rõ ràng nên ae k hiểu đc ý của em. Cám ơn anh đã quan tâm ạ.
 
Upvote 0
Theo mình bạn cần chú trọng thiết kế lại trang CSDL;
Sao lại có thể là "Phòng Tài nguyên MT. . . " trong trường/cột có nội dung iêu cầu về [Thời gian thi công]
Bạn không thể nhập bừa fứa các kí tự trong nội dung các trường; Như vậy sao biết được hay án chừng được độ dài tối đa của 1 trường nào đó để thiết kế trang tính hay độ rọng Control nào đó trên Form?
Bạn giả lập nhưng xác đúng thực tế thì đỡ tốn thời gian của bạn & những thành viên có nhã í giúp bạn.

[Không cói kiểu dữ liệu nhập vào tự do 1 cách quá trớn như vậy!]

Như mình nhấn nút mở Form thì chả thể thấy 3 nút lệnh fía dưới hiện lên trên màn hình.
Sao bạn có thể nói là nó hiện trên màn hình của bạn là bạn hết trách nhiệm ư? Còn có hiện trên màn hình người khác hay không bạn không cần quan tâm?

. . . . . .

Tạm biệt!
 
Upvote 0
Theo mình bạn cần chú trọng thiết kế lại trang CSDL;
Sao lại có thể là "Phòng Tài nguyên MT. . . " trong trường/cột có nội dung iêu cầu về [Thời gian thi công]
Bạn không thể nhập bừa fứa các kí tự trong nội dung các trường; Như vậy sao biết được hay án chừng được độ dài tối đa của 1 trường nào đó để thiết kế trang tính hay độ rọng Control nào đó trên Form?
Bạn giả lập nhưng xác đúng thực tế thì đỡ tốn thời gian của bạn & những thành viên có nhã í giúp bạn.

[Không cói kiểu dữ liệu nhập vào tự do 1 cách quá trớn như vậy!]

Như mình nhấn nút mở Form thì chả thể thấy 3 nút lệnh fía dưới hiện lên trên màn hình.
Sao bạn có thể nói là nó hiện trên màn hình của bạn là bạn hết trách nhiệm ư? Còn có hiện trên màn hình người khác hay không bạn không cần quan tâm?

. . . . . .

Tạm biệt!
cám ơn bạn đã ghé qua, ở #13 mình cũng đã trình bày rõ ràng. MÌnh k k biết j nhiều ở lập trình, mình cóp nhặt ở những mẫu form khác rồi mới chế biến lại qua form của mình... Nếu mình biết đc tại sao 3 nút kia thể hiện ở mình mà k thể hiện máy người khác mình đã sửa lỗi này.... máy mình thật sự là nó hiển thị hết mà ... còn thể loại mà nhập tùm lum là do mình chưa biết cách bố trí sắp xếp lại ở trong vba nên nó nhảy loạn xạ... chứ mình k cố ý làm khó ai cả...
 
Upvote 0
Bạn nên chịu khó tạo lại trang tính 'CSDL' của bạn để mang đầy đủ nghĩa lả trang tính giả lập; (Có nghĩa là [Địa điểm] không thể là 'áda' hay 'đấ'; Mà nên là địa chỉ nào đó 'Đồng Mơ' hay 'Đồng Tâm',. . . . )

Ông bà có câu: "Đầu xuôi đuôi lọt" đó bạn.
 
Upvote 0
Bạn nên chịu khó tạo lại trang tính 'CSDL' của bạn để mang đầy đủ nghĩa lả trang tính giả lập; (Có nghĩa là [Địa điểm] không thể là 'áda' hay 'đấ'; Mà nên là địa chỉ nào đó 'Đồng Mơ' hay 'Đồng Tâm',. . . . )

Ông bà có câu: "Đầu xuôi đuôi lọt" đó bạn.
mình mới up lại file rồi... cám ơn bạn nhé
 
Upvote 0
mình mới up lại file rồi... cám ơn bạn nhé
Bài 12, tôi nêu tại mục 5/ Thiết kế 1 cái biên bản hay cái gì đó trên 1 sheet mà chả cần dùng đến mailmerger.
1/ Là ý tôi muốn nêu mục đích của bạn cần làm cái gì? (Chứ dùng UserForm để nhập liệu thì tôi biết rồi).

2/ Khi nhìn cái UserForm thì chỉ mới hiểu là bạn cần nhập liệu, còn cái mục đích tiếp theo khi nhập liệu xong thì bạn làm cái gì tiếp theo với dữ liệu này. Ví dụ: Lấy dữ liệu vào biên bản kiểm tra, nghiệm thu hay cần làm cái gì thì nên nêu rõ mục đích. Có biết được mục đích thì mới đề ra phương án làm, kể cả cái UserForm cũng phải thiết kế lại cho phù hợp.

Tôi làm ngành TNMT mà qua một số bài viết bạn diễn giải ở trên tôi còn không hiểu nổi, thì lấy đâu các thành viên khác hiểu được để mà giúp.

Góp ý cho bạn:
Tốt nhất là bạn nêu cụ thể cái cần, cái Form chỉ là để nhập liệu theo dõi, chứ tôi biết cái chính bạn cần là chỗ này (dùng Mail Merge) tự động lấy dữ liệu đã nhập vào các biên bản kiểm tra, nghiệm thu, cái này chả cần dùng Mail Merge gì cả (Excel chơi tuốc luốc). Quan trọng là hiểu được vấn đề hay không?
 
Upvote 0
Bài 12, tôi nêu tại mục 5/ Thiết kế 1 cái biên bản hay cái gì đó trên 1 sheet mà chả cần dùng đến mailmerger.
1/ Là ý tôi muốn nêu mục đích của bạn cần làm cái gì? (Chứ dùng UserForm để nhập liệu thì tôi biết rồi).

2/ Khi nhìn cái UserForm thì chỉ mới hiểu là bạn cần nhập liệu, còn cái mục đích tiếp theo khi nhập liệu xong thì bạn làm cái gì tiếp theo với dữ liệu này. Ví dụ: Lấy dữ liệu vào biên bản kiểm tra, nghiệm thu hay cần làm cái gì thì nên nêu rõ mục đích. Có biết được mục đích thì mới đề ra phương án làm, kể cả cái UserForm cũng phải thiết kế lại cho phù hợp.

Tôi làm ngành TNMT mà qua một số bài viết bạn diễn giải ở trên tôi còn không hiểu nổi, thì lấy đâu các thành viên khác hiểu được để mà giúp.

Góp ý cho bạn:
Tốt nhất là bạn nêu cụ thể cái cần, cái Form chỉ là để nhập liệu theo dõi, chứ tôi biết cái chính bạn cần là chỗ này (dùng Mail Merge) tự động lấy dữ liệu đã nhập vào các biên bản kiểm tra, nghiệm thu, cái này chả cần dùng Mail Merge gì cả (Excel chơi tuốc luốc). Quan trọng là hiểu được vấn đề hay không?
oh thì ra a cũng là người trong ngành, dạ mục đích chính khj nhập form này xong thì em sẻ xuất ra riêng 1 file exel gồm dòng 5 (là tiêu để) dưới là dữ liệu của 1 công trình, xong chuyển sang word để làm hồ sơ ktnt theo tt49 ấy anh, em nghĩ là nên chuyển sang word để chuyển cho chủ đầu tư quản lý nên mới làm cái này.
Trong hsktnt nó có nhiều bảng chẳng hạn như ở sheet mau05, em sẻ thiết kế riêng ra 1 bảng rồi hyperlink vào trong word... và còn nhiều mẫu khác nữa ( phụ lục 06,07,08.... theo tt49) nên em mới dùng nhiều tab trong userform.
Còn vụ mà làm hẳn trên exel chắc em k làm đc... vì k đủ trình với lại mục đích của em chỉ đơn giản như trên thôi ạh... CÒn vụ desing lại user form thì để xong 2 khoảng kia đã.. em bố trí cái tab tìm công trình và chung là vì cái tab chung nó sẻ có ở tất cả các phục lục... còn những dữ liệu khác sẻ nằm từng tab tươn ứng vs 1 phụ lục anh ạ
 
Upvote 0
oh thì ra a cũng là người trong ngành, dạ mục đích chính khj nhập form này xong thì em sẻ xuất ra riêng 1 file exel gồm dòng 5 (là tiêu để) dưới là dữ liệu của 1 công trình, xong chuyển sang word để làm hồ sơ ktnt theo tt49 ấy anh, em nghĩ là nên chuyển sang word để chuyển cho chủ đầu tư quản lý nên mới làm cái này.
Trong hsktnt nó có nhiều bảng chẳng hạn như ở sheet mau05, em sẻ thiết kế riêng ra 1 bảng rồi hyperlink vào trong word... và còn nhiều mẫu khác nữa ( phụ lục 06,07,08.... theo tt49) nên em mới dùng nhiều tab trong userform.
Còn vụ mà làm hẳn trên exel chắc em k làm đc... vì k đủ trình với lại mục đích của em chỉ đơn giản như trên thôi ạh... CÒn vụ desing lại user form thì để xong 2 khoảng kia đã.. em bố trí cái tab tìm công trình và chung là vì cái tab chung nó sẻ có ở tất cả các phục lục... còn những dữ liệu khác sẻ nằm từng tab tươn ứng vs 1 phụ lục anh ạ
Nhìn qua bài 1 là tôi biết chỉ đáp ứng được 1 công việc là nhập liệu, còn lại 1 đống đi sau nhưng bạn không đề cập.
Nói chung, Excel có thể làm được nhiều thứ kể cả xuất cái sheet mẫu Biên bản thiết kế trong Excel ra File Word. Vì vậy, tôi mới nêu đâu cần sử dụng Mail Merge.
 
Upvote 0
Theo mình thì nên lôi cái ListBox1 ra vùng có 3 nút lệnh của bạn & bỏ cái Page4 đi
 
Upvote 0
Nhìn qua bài 1 là tôi biết chỉ đáp ứng được 1 công việc là nhập liệu, còn lại 1 đống đi sau nhưng bạn không đề cập.
Nói chung, Excel có thể làm được nhiều thứ kể cả xuất cái sheet mẫu Biên bản thiết kế trong Excel ra File Word. Vì vậy, tôi mới nêu đâu cần sử dụng Mail Merge.
dạ do em làm từng bước, vướn chỗ nào mới hỏi chứ làm ra nguyên 1 loạt thì khó cho các bác quá ạ... e nghĩ vậy nên vướn đến đâu hỏi đến đó thôi ạ
 
Upvote 0
Theo mình thì nên lôi cái ListBox1 ra vùng có 3 nút lệnh của bạn & bỏ cái Page4 đi
à, tên dự án nó dài lắm bạn ơi nên mình để riêng ra 1 page va 1 listbox riêng vậy cho dễ quản lý.... nếu đc bạn thêm code vào listbox1 khj ta kích chọn vào 1 tên công trình thì nó tự đọng nhảy sang tab chung.. k thì mình tự chọn cũng đc
 
Upvote 0
dạ do em làm từng bước, vướn chỗ nào mới hỏi chứ làm ra nguyên 1 loạt thì khó cho các bác quá ạ... e nghĩ vậy nên vướn đến đâu hỏi đến đó thôi ạ
Bạn nên nêu lên hết các vấn đề với ý định cần làm, và nêu cái trước mắt cần làm để các thành viên hiểu mà góp ý cho bạn định hướng đi đúng, sau đó mới giải quyết từng vấn đề.
- Bạn chỉ hỏi cái Form, làm xong cái Form mới hỏi tiếp cái khác thì coi như cái Form làm giúp sẽ bị phá sản.
- Không nên để Listbox riêng làm gì, tất cả dữ liệu ở sheet theo dõi nó sẽ hiện lên Form khi chọn 1 dòng trong Listbox, Tên xã, huyện, tên dự án nên nằm trong ComboBox để chọn hay tìm cho dễ.
 
Upvote 0
Bạn nên nêu lên hết các vấn đề với ý định cần làm, và nêu cái trước mắt cần làm để các thành viên hiểu mà góp ý cho bạn định hướng đi đúng, sau đó mới giải quyết từng vấn đề.
- Bạn chỉ hỏi cái Form, làm xong cái Form mới hỏi tiếp cái khác thì coi như cái Form làm giúp sẽ bị phá sản.
- Không nên để Listbox riêng làm gì, tất cả dữ liệu ở sheet theo dõi nó sẽ hiện lên Form khi chọn 1 dòng trong Listbox, Tên xã, huyện, tên dự án nên nằm trong ComboBox để chọn hay tìm cho dễ.
dạ do nhu cầu em khj nhập xong dữ liệu zô đúng vị trí, thì mail sang word chứ k có tổng hợp gì cả... Mỗi 1 hàng dữ liệu là 1 công trình... qua mail bên word thì chọn cái công trình đó. Còn hay hơn nữa thì xuất ra 1 sheet mới chỉ chứa dòng 5 và nội dung của ctrinh mình chọn ( cái này em đang tìm hiểu trên diễn đàn)
- Do đặc thù cái này nó nằm theo tên dự án chứ k liên quan đến xã, huyện... mà cái tên dự án nó dài lắm anh nên em nghĩ nên đặt riêng ra 1 listbox ạ.. có bạn Hoang2013 tham gia góp ý kiến e post file bạn ấy sửa... a xem cho ý kiến ạ
 

File đính kèm

Upvote 0
Bạn nên nêu lên hết các vấn đề với ý định cần làm, và nêu cái trước mắt cần làm để các thành viên hiểu mà góp ý cho bạn định hướng đi đúng, sau đó mới giải quyết từng vấn đề.
- Bạn chỉ hỏi cái Form, làm xong cái Form mới hỏi tiếp cái khác thì coi như cái Form làm giúp sẽ bị phá sản.
- Không nên để Listbox riêng làm gì, tất cả dữ liệu ở sheet theo dõi nó sẽ hiện lên Form khi chọn 1 dòng trong Listbox, Tên xã, huyện, tên dự án nên nằm trong ComboBox để chọn hay tìm cho dễ.
nếu có thể, a cho em xjn nick facebook mình trao đổi rõ luôn đ ck anh
 
Upvote 0
Bạn vận hành & thử bổ sung tiếp xem sao
(Mình sẽ tháo file bài trên sau 120 fút)
 

File đính kèm

Upvote 0
1, khi tich vào sửa, nó tự nhiên mất mấy cột như địa điểm, quyết định số vạy bạn?
2, nó báo không chọn dòng tiêu đề ý sao mình k hiểu,,, và bị debug
3, bị sao mà nó nhảy lung không như mình sắp đặt lúc nhập liệu bạn nhỉ?
4, bạn có thể node 1 số chỗ bạn làm thêm mục đích để làm j đc k? mình đọc code k hiểu lắm
Tựu chung bạn chả nêu vấn đề nào trong 4 vấn đề trên 1 cách cụ thể cả.
Bạn tích vô đâu? Các TextBox ư; chúng nào có cột nào mà mất?
Bạn chọn dòng tiêu đề của CSDL để làm gì? Có mà khùng mới sửa nội dung các tiêu đề của CSDL
Bạn sắp sao nó vẫn vậy; Coi lại các TabStop xem sao?
Chỉ diễn dịch những cái bạn chưa hiểu 1 cách thực sự thôi; Code của bạn còn fức tạp gấp mấy lần mình ấy chứ;
Mình vẫn khuyên những người như bạn là viết Code nên tường minh;
Mình cốp nhặt của ai về làm vốn cũng sửa theo đúng thói quen dùng Code của mình.
Với mình thì f ải viết hay sửa sao cho ra như thế này:
PHP:
Private Sub UserForm_Initialize()
  Dim SourceRange As Range
  With Sheet3
     Set SourceRange = .Range(.[A2], .[K2].End(xlToLeft))
  End With
  ComboCreateList Me.txtDVKT, SourceRange
  Application.WindowState = xlMaximized
    Me.Top = 1:                     Me.Left = 1
    Me.Width = Application.Width - 73
    Me.Height = Application.Height - 73
    MyControls = Array(txtTCT, txtPA, txtcdt, txtdccdt, txtDiaDiem, txtDVKT, txtSHD, txtKKPA, _
        txtKKPA, txtKKTC, txtKLPA, txtKLTC, txtNTC, txtQDS, txtSLBD, txtTG, txtNgay, txtTLSD, txtDD1KT)
    Dim iRow As Long
    With Sheets("sheet1")
        iRow = .Range("A65536").End(xlUp).Row
        .Range("A5:CP" & iRow).Name = "ListBoxTongcongtrinh"
        ListBox1.RowSource = "ListBoxTongcongtrinh"
        'Chon dong cuoi cua ListBox '
        ListBox1.ListIndex = ListBox1.ListCount - 1
        Me!txtDiaDiem.Text = .Cells(iRow, "C").Value
        Me!txtQDS.Text = .Cells(iRow, "D").Value
        Me!txtSHD.Text = .Cells(iRow, "E").Value
        Me!txtNgay = DateToTxt(.Cells(iRow, "F").Value)
        Me!txtTLSD.Text = .Cells(iRow, "G").Value
        Me!txtTLBD.Text = .Cells(iRow, "h").Value
        Me!txtSLBD.Value = .Cells(iRow, "i").Value
    End With
End Sub
Mình cho là như thế mới dễ đọc code dù vài hay chục năm sau nữa có gặp lại hắn.
 
Lần chỉnh sửa cuối:
Upvote 0
Tựu chung bạn chả nêu vấn đề nào trong 4 vấn đề trên 1 cách cụ thể cả.
Bạn tích vô đâu? Các TextBox ư; chúng nào có cột nào mà mất?
Bạn chọn dòng tiêu đề của CSDL để làm gì? Có mà khùng mới sửa nội dung các tiêu đề của CSDL
Bạn sắp sao nó vẫn vậy; Coi lại các TabStop xem sao?
Chỉ diễn dịch những cái bạn chưa hiểu 1 cách thực sự thôi; Code của bạn còn fức tạp gấp mấy lần mình ấy chứ;
Mình vẫn khuyên những người như bạn là viết Code nên tường minh;
Mình cốp nhặt của ai về làm vốn cũng sửa theo đúng thói quen dùng Code của mình.
Với mình thì f ải viết hay sửa sao cho ra như thế này:
Mình cho là như thế mới dễ đọc code dù vài hay chục năm sau nữa có gặp lại hắn.
mình gửi lại bạn file này mình làm cũng gần gần đc
 

File đính kèm

Upvote 0
Tiếc là mình không thể mở được Form trong file để xem!
 
Upvote 0

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

Back
Top Bottom