Link:INB Home|INB English| INB русский язык|INB العربية|INB Türkiye|INB فارسی|INB Español|INB Français|INB Português|INB Deutsch|INB 國語|INB 中文|INB 日本语|INB 한국어|INB ภาษาไทย|INB tiếng Việt||[web Tài nguyên] Chuyển form dữ liệu từ Word sang Excel
INB tiếng Việt Forum
hoan nghênh(Công nghiệp & Boffin Native) Thời đại công nghiệp ở đây là đầy đủ tinh thần chiến đấu, bạn và tôi đều thông qua không gian mạng này với Native tinh thần Boffin sinh học đến các phòng thí nghiệm điên. nhà INBforum.com, vn-inbforum.forums2u.com
INB tiếng Việt Forum

hoan nghênh(Công nghiệp & Boffin Native) Thời đại công nghiệp ở đây là đầy đủ tinh thần chiến đấu, bạn và tôi đều thông qua không gian mạng này với Native tinh thần Boffin sinh học đến các phòng thí nghiệm điên. nhà INBforum.com, vn-inbforum.forums2u.com


You are not connected. Please login or register

《《《《《《《上一页INBforum   Go down

上一页INBforum》》》》》》》Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down  Thông điệp [Trang 1 trong tổng số 1 trang]

1 [web Tài nguyên] Chuyển form dữ liệu từ Word sang Excel on Wed Apr 17, 2013 10:19 am

Admin


Admin
Microsoft
Excel là một ứng dụng quản lý cơ sở dữ liệu trên bảng tính rất mạnh mẽ.
Nếu đang sử dụng ứng dụng Word để thu thập dữ liệu người dùng thì việc
chuyển toàn bộ dữ liệu này sang bảng tính Excel để quản lý là rất cần
thiết. Bên cạnh đó, chuyển đổi dữ liệu là một công việc với nhiều bản
ghi (Record) và trường (Field) dữ liệu.


Nhưng đôi khi, bạn chỉ cần chuyển một
bản ghi tại một thời điểm nào đó. Ví dụ, bạn cần chuyển một form dữ
liệu đơn hàng vào một cơ sở dữ liệu mua hàng lớn hơn. Bài viết này sẽ
hướng dẫn cách chuyển dữ liệu từ Word sang Excel.

Bước đầu tiên trong quá trình chuyển
đổi là phải xác định bốn thành phần: các dữ liệu cần chuyển, tập tin
nguồn chứa dữ liệu, tập tin đích mà bạn muốn chuyển giao dữ liệu, công
cụ thực hiện chuyển đổi (mã VBA). Đối với dữ liệu, bạn có thể sử dụng
một form dạng Word để thu thập dữ liệu (dữ liệu đầu vào) hoặc có thể là
form dạng Web, một số định dạng khác.

Khi công việc chuẩn bị hoàn tất, bạn
xác định các yếu tố động trong định dạng đích. Trong bài viết này sử
dụng hai yếu tố, tên và số điện thoại của một công ty, hồ sơ được ghi
vào bảng ghi, bạn có thể xem một ví dụ đơn giản trong hình sau:


Khi đã
xác định định dạng dữ liệu đích đến thì bạn cần loại dữ liệu của tập
tin nguồn, có thể đổi kiểu dữ liệu trước khi chuyển giao dữ liệu. Cả
hai trường trong sheet dữ liệu này đều là text sử dụng định dạng General.
Tiếp theo, bạn cần lưu ý về đường dẫn đến tập tin đích. Trong ví dụ
này, cả hai tập tin được lưu trên một ổ đĩa nhưng trong hai thư mục
khác nhau.

Kế đến, bạn cần tạo ra form nguồn để
thu thập dữ liệu. Form Word là một tài liệu chứa các ô trống được gọi
là trường để bạn có thể nhập dữ liệu. Trường là một ô được xác định
trước có chức năng lưu trữ và chấp nhận dữ liệu nhập vào. Ví dụ này sử
dụng biểu mẫu đơn giản gồm có hai trường Shipping Company và Phone. Để
tạo ra form trong Word, bạn chèn hai trường văn bản vào trong tài liệu
Word như sau: bấm vào thẻ Developer rồi chọn trường ab trong menu Legacy Forms xổ xuống (trong nhóm Controls). Trong Word 2003, bạn chọn Toolbar từ menu View và chọn Forms, xuất hiện thanh công cụ chứa công cụ Text Form Field. Sau đó, bạn bấm vào Properties trong nhóm Controls hoặc bấm đôi chuột vào trường đang hiển thị để mở thuộc tính của nó. Trong hộp thoại Text Form Field Options, bạn nhập txtCompanyName vào ô thuộc tính Bookmark, bấm OK. Bạn thực hiện tương tự đối với txtPhone, rồi lưu biểu mẫu.


Để thêm vào mã chuyển đổi một bản ghi từ các trường vào bảng tính, bạn mở biểu mẫu Word rồi bấm tổ hợp phím Alt + F11 để khởi động Visual Basic Editor (VBE). Từ menu Insert, bạn chọn Module rồi nhập vào đoạn mã sau, rồi lưu lại và trở về biểu mẫu Word.

- Sub TransferToExcel()

- 'Transfer a single record from the form fields to an Excel workbook.

- Dim doc As Document

- Dim strCompanyName As String

- Dim strPhone As String

- Dim strSQL As String

- Dim cnn As ADODB.Connection

- 'Get data.

- Set doc = ThisDocument

- On Error GoTo ErrHandler

- strCompanyName = Chr(39) & doc.FormFields("txtCompanyName").Result & Chr(39)

- strPhone = Chr(39) & doc.FormFields("txtPhone").Result & Chr(39)

- 'Define sql string used to insert each record in the destination workbook.

- 'Don't omit the $ in the sheet identifier.

- strSQL = "INSERT INTO [PhoneList$]" _

- & " (CompanyName, Phone)" _

- & " VALUES (" _

- & strCompanyName & ", " _

- & strPhone _

- & ")"

- Debug.Print strSQL

- Define connection string and open connection to destination workbook file.

- Set cnn = New ADODB.Connection

- With cnn

- .Provider = "Microsoft.ACE.OLEDB.12.0"

- .ConnectionString = "Data Source=E:\Examples\Sales.xlsx;" & _

- "Extended Properties=Excel 8.0;"

- .Open

- Transfer data.

- Execute strSQL

- End With

- Set doc = Nothing

- Set cnn = Nothing

- Exit Sub

- ErrHandler:

- MsgBox Err.Number & ": " & Err.Description, _

- vbOKOnly, "Error"

- On Error GoTo 0

- On Error Resume Next

- cnn.Close

- Set doc = Nothing

- Set cnn = Nothing

- End Sub

Bạn có thể thêm một nút macro vào thanh Ribbon hoặc
một nút lệnh nào đó vào tài liệu. Tuy nhiên, bằng cách sử dụng trường
trong biểu mẫu, bạn có thể bỏ qua các công cụ trên giao diện và thực
thi các trường trong macro như sau: bấm đôi chuột vào trường Phone (txtPhone) để mở trang thuộc tính của sheet. Từ danh sách xổ xuống của mục Exit, bạn chọn macro chuyển đổi từ đoạn mã trên (TransferToExcel), bấm OK. Bạn bấm phím Tab thì trường Phone sẽ được thực thi, nó sẽ sao chép văn bản từ trường Company name Phone đến tập tin Sales.xlsx. Lưu ý, khi áp dụng đoạn mã trên vào công việc thực tế của bạn thì bạn hãy cập nhật đường dẫn một cách thích hợp.

Trước khi sử dụng biểu mẫu Word, bạn nên hạn chế việc thay đổi các trường trong biểu mẫu, bằng cách vào thẻ Developer rồi bấm vào Restrict Editing trong nhóm Protect. Trong Word 2003, bạn bấm vào Protect trên thanh công cụ Form. Ở bảng tác vụ hiện ra, bạn đánh dấu chọn vào Allow only this type of editing in this document, chọn Filling In Forms trong danh sách xổ xuống, bấm Yes, Start Enforcing Protection rồi nhập vào hai lần mật khẩu và bấm OK.






$(document).ready(function() {
$('.slideTable a,.SlideTable a').each(
function(){
var href=$(this).attr('href').toLowerCase();
if(href.indexOf('.jpg')>0||href.indexOf('.png')>0||href.indexOf('.gif')>0)
$(this).addClass('_lightBox');
}
);
$('a._lightBox').lightBox({fixedNavigation:true}).removeAttr("onclick").attr( "title", "Ảnh lớn" );
});








Theo XHTT
]

Xem lý lịch thành viên http://vn-inbforum.forums2u.com

上一页INBforum   Go down

上一页INBforumXem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang  Thông điệp [Trang 1 trong tổng số 1 trang]

Permissions in this forum:
Bạn không có quyền trả lời bài viết

Copyright ©2009-2010 LTD Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

IT:SINGLESERVGoogle谷歌翻译TranslateFORUMSOFTLAYERGoogle谷歌广告联盟AdSenseAsia

 

Free forum | © PunBB | Free forum support | Liên hệ | Report an abuse | Sosblogs.com