我在Access 2010表单中使用VBA来填充包含来自表格数据的Word模板。
到目前为止我无法实现的是在文本中插入超链接。
为了方便我,我将所有数据插入模板中的表格,如下所示:
Private Sub button_Click()
On Error GoTo myError
Dim objWRD As Object 'Word.Application
Dim objDoc As Object 'Word.Document
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim strRecords As String
'open a query and prepare the data'
Set db = CurrentDb()
Set qfd = db.QueryDefs("my_query")
Set rs = qfd.OpenRecordset()
'open a Word template'
Set objWRD = CreateObject("Word.Application")
objWRD.Visible = True
Set objDoc = objWRD.Documents.Add("path_to_my_document_template", , , True)
objWRD.ScreenUpdating = False
'insert records into template'
Dim i As Integer
i = 1
While Not rs.EOF
objDoc.Tables(i).Cell(2, 1).Range.Text = "" & rs("hyperlink")
objDoc.Tables(i).Cell(2, 2).Range.Text = "" & rs("description")
rs.MoveNext
i = i + 1
Wend
rs.Close
Set rs = Nothing
leave:
Exit Sub
myError:
MsgBox Error$
Resume Next
End Sub
任何人都可以帮我将模板的工作超链接插入rs("hyperlink")
地方吗?
答案 0 :(得分:0)
如果您引用表格单元格以保存超链接,请尝试以下操作:
$.get('data/data.xml', {}, function (file) {
xml = file;
}).then(function(){
console.log('Loaded');
});
并在同一单元格中添加其他文字(在这种情况下,我要插入"要插入的文字"在超链接之前。
objDoc.Hyperlinks.add Anchor:=objDoc.tables(i).Cell(2, 1).Range, _
Address:=rs("hyperlink")
所以你的While循环看起来像这样:
With objDoc.Tables(i).Cell(2, 1).Range
.Collapse Direction:=wdCollapseStart
.Text = "Text to Insert" & Chr(11)
End With