从Excel工作簿导入时遇到一些问题。
Excel工作簿具有以下需要导入Access的列:
| ID2 | Hours | Total |
+-----+-------+-------+
| | | |
除了Excel中的表格外,工作簿还有一个文本框(可以是"形状"或者ActiveX - 我只需要能够添加自由文本作为描述(超过255个字符)。
文本框应复制到Access数据库中的Description
列,如下所示:
| ID | ID2 | Description | Hours | Total |
+------+-----+-------------+-------+-------+
| (Ny) | 0 | | 0 | 0 |
使用以下代码从Wxcel导入表时没有问题:
DoCmd.TransferSpreadsheet acImport, _
acSpreadsheetTypeExcel12Xml, strTables(intWorksheets), _
strPathFile, blnHasFieldNames, _
strWorksheets(intWorksheets) & "$"
但是这段代码只能导入表及其内容。
您对如何将文本框导入Access表中的同一帖子有任何建议吗?
VBA需要从Access运行,因为它是导入数百个Excel工作簿的脚本的一部分。
答案 0 :(得分:0)
如果可能,最好使用Excel VBA为每个工作簿将Description文本复制到Excel表的(可能是隐藏的)列,并将其与其他列一起导入Access。
但如果它是一个“单一”文本框,它怎么能填满整个描述栏?除非您打算在每一行中重复说明。 (这很奇怪。)
如果以上情况不可能,那么您可以使用Excel Automation
打开每个文件并以编程方式找到“说明”文本,并更新“访问”表以包含此信息。
然而,
它是导入数百个Excel工作簿的脚本的一部分。
要使这个过程成功使用数百个工作簿,他们每个人都必须遵循相同的格式。也就是说,在工作表上只有一个文本框,或者文本框始终具有相同的可识别名称。