2016-11-15 61 views
1

我想从表格/查询中将名称从特定单元格中存取。我有一个在其他单元格中有大量数据的检查表,顶部有人名。我想要一个可点击的按钮,打开THAT文件并通过VBA插入所需的名称。我知道如何使用VBA对带有书签的word文档执行此操作,但现在确定如何在Excel中为单元格定义“书签”。从excel中导出一个字段从访问到特定单元格

这是我到目前为止。

Private Sub Cmdopentarget1_Click() 
Dim xl As Excel.Application 
Dim wbTarget1 As Workbook 
Dim qdfquerytest As QueryDef 
Dim rsquerytest As Recordset 
Set qdfquerytest = CurrentDb.QueryDefs("query1") 
Set qdfsecondquery = CurrentDb.QueryDefs("query2") 
Set rsquerytest = qdfquerytest.OpenRecordset() 
Set rssecondquery = qdfsecondquery.OpenRecordset() 
Set xl = CreateObject("Excel.application") 
xl.Visible = True 
Set wbTarget1 = xl.Workbooks.Open("C:\Users\Owner\Dropbox\Target1.xlsx") 
'Set wbTarget1 = xl.Workbooks.Open("C:\Users\Dennis\Dropbox\Target1.xlsx") 
'wbTarget1.Worksheets("Sheet1").Cells(8, 1).CopyFromRecordset rsquerytest 
wbTarget1.Worksheets("Sheet1").Range("A1").CopyFromRecordset rsquerytest 
wbTarget1.Worksheets("Sheet1").Range("C5").CopyFromRecordset rssecondquery 

它的工作原理,但查询我返回两个领域,全名和位置,我只需要在Excel单元格的全名。

回答

0

您可以使用

[variable or object] = rsquerytest(0).Value 

从创纪录的拉动值。记录集从位置0开始。如果您想要第二列,则可以使用rsquerytest(1).Value

source

+0

我不知道该把它放在哪里。那是在范围线吗?我需要的数据将在0值中,1值是位置字段,不需要。 – Dennis

+0

'... Worksheet(“Sheet1”)。Range(“A1”)。Value = rsquerytest(0).Value'应该将单元格A1'设置为返回的'Fullname'。 – Fritz

+0

这工作,但隔了一段时间,我得到一个空白Excel表调试错误。我相信这是我的错误处理或整体语法。我见过这么多不同的方法。 – Dennis

相关问题