我正在创建一个Access数据库,非常感谢VBA的一些帮助 .
帮助是我需要做的,
我有一个Excel工作表,其中包含需要添加到Access中现有表的数据 . 在VBA中有一种方法可以逐行添加excel中的数据吗?
对于Excel中的每一行,我需要:
1st :检查Access表中是否已存在sample_number,然后执行某些操作(如果存在) .
2nd :如果sample_number尚不存在,则将此行从excel复制并粘贴到Access表 .
现在我被困在如何逐行处理excel电子表格而不是一次导入整个表格 .
非常感谢帮助!谢谢
2 回答
访问远比excel更有条理,因此更容易实现搜索和数据验证 . 要在验证每条记录的同时使用vba从excel导入,我找到的最佳方法是对临时访问表进行全面导入,然后循环访问临时表,验证数据并根据需要将其添加到目标表,而不是尝试在仍然在excel电子表格中查询数据 . 希望这可以帮助
您可以将
transferspreadsheet
用于新表,然后使用SQL通过内部联接和左联接派生所需的数据子集在此处使用SQL,内置函数将是我的建议 . 甚至在SQL中跳过导入和使用Excel文件 .像这样的东西,新表是导入,db命令是现有表 . 这处理插入 . 将连接更改为INNER JOIN并删除WHERE子句将为您提供一个子集,以便对现有记录应用逻辑 .
我需要用一些虚拟数据完全检查SQL,但这是一个好的开始 .
使用DB执行这些类型的作业 .
INSERT INTO [tbl_DB_ORDERS] ([ORDER_NO]) SELECT NT.[ORDER_NO] FROM [NEW_TABLE] as NT LEFT JOIN [tbl_DB_ORDERS] AS ORD ON NT.[ORDER_NO]=ORD.[ORDER_NO] WHERE ORD.[ORDER_NO] IS NULL