Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Gán dữ liệu cho tất cả các field
#1
Mình có một Table gồm có nhiều Field tên là: Name1, Name2, Name3, ..., Name30
Mình muốn gán dữ liệu cho các Field đó bằng vòng For
 
Ví  dụ:
 
Dim rs as Recordset
Dim i as Integer
Set rs = CurrentDb.OpenRecordset (“TableName”, dbOpenTable)
For i = 1 to 30
                rs!Name & i = 1 ‘ Lỗi ở dòng này
Next i
 
Nếu gán dữ liệu cho một trường thì rất dễ, nhưng ở đây mình muốn gán dữ liệu cho Field thứ nhất đến Field cuối cùng trong một Table.
Rất mong mọi người giúp mình với. Xin chân thành cảm ơn!
Reply
Những người đã cảm ơn
#2
Bạn sai cú pháp
rs!Name
Cú pháp chính xác là
rst![Name] (Name là tên field nằm trong cặp [ ])
Có thể sử dụng số thứ tự field
rs.Fields(0), rs.Fields(1), rs.Fields(2) để xử lý
Chúc bạn thành công.
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn maidinhdan , jason
#3
(01-02-16, 10:33 AM)tranthanhan1962 Đã viết: Bạn sai cú pháp
rs!Name
Cú pháp chính xác là
rst![Name] (Name là tên field nằm trong cặp [ ])
Có thể sử dụng số thứ tự field
rs.Fields(0), rs.Fields(1), rs.Fields(2) để xử lý
Chúc bạn thành công.

Bổ sung thêm cùng bác Ân ta có thể dùng tham chiếu thế này:
rs.Fields("Tentruong")=....
Theo kinh nghiệm thực hành với Access, tôi khá hạn chế cách thao tác với RecordSet mà dùng Truy vấn dạng
Update [Tên bảng] Set [Tên trường]=[Gia trị], [Tên trường 2]=[Gia trị] WHERE [Tên trường]=[Giá trị]
Hoặc dùng Query INSERT
(Cách đó tiện hơn, và đặc biệt là không phải thực hiện các chuỗi kết nối dạng Opendatabase ....rs.Open) nhưng đó chỉ là một cách tiếp cận bổ sung thôi nhé - đừng ném đá em các bác ợ.

Xin cảm ơn và chúc các cụ tết nhất vui vẻ, mạnh khỏe, vạn điều vui!
Chữ ký của paulsteigel ====================
Quốc gia hưng vong
Thất phu hữu trách
====================
Reply
Những người đã cảm ơn maidinhdan , jason
#4
(31-01-16, 11:46 PM)trav2t Đã viết: Mình có một Table gồm có nhiều Field tên là: Name1, Name2, Name3, ..., Name30
Mình muốn gán dữ liệu cho các Field đó bằng vòng For
 
Ví  dụ:
 
Dim rs as Recordset
Dim i as Integer
Set rs = CurrentDb.OpenRecordset (“TableName”, dbOpenTable)
For i = 1 to 30
                rs!Name & i = 1 ‘ Lỗi ở dòng này
Next i
 
Nếu gán dữ liệu cho một trường thì rất dễ, nhưng ở đây mình muốn gán dữ liệu cho Field thứ nhất đến Field cuối cùng trong một Table.
Rất mong mọi người giúp mình với. Xin chân thành cảm ơn!

Chào Bạn,
Bạn chỉ cần sửa lại rs!Name & i thành rs(Name & i) là được thôi.
Chữ ký của lehongduc Lê Hồng Đức
Số ĐT: 0913.941.144
Email: lhongduc@gmail.com, lehongduc@quantribanhang.vn
Website: http://quantribanhang.vn
Reply
Những người đã cảm ơn Minh Tiên , maidinhdan , jason


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Lập chỉ mục (Index) trong Table - Tăng tốc tìm kiếm và sắp xếp dữ liệu ongke0711 5 206 02-04-18, 11:56 PM
Bài mới nhất: tranthanhan1962
Lightbulb [Hỏi] Tạo màu , hình , link cho dữ liệu form toidjtjmtoi 5 340 06-03-18, 10:46 AM
Bài mới nhất: toidjtjmtoi
  Hướng Dẫn Cập nhật dữ liệu để sao lưu qua file access khác mrtoanbin 7 365 10-01-18, 08:46 AM
Bài mới nhất: cpucloi
  Nên chuyển đổi dùng Field dạng Yes/No sang dạng Number ongke0711 0 153 14-11-17, 12:24 AM
Bài mới nhất: ongke0711
Question [Hỏi] Chèn thêm dữ liệu từ excel vào access hoangktxd 2 566 20-05-17, 11:48 PM
Bài mới nhất: maidinhdan

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line