Office中国论坛/Access中国论坛
标题: 合并excel中有规律的sheet名表 [打印本页]
作者: canghua 时间: 2007-7-10 22:23
标题: 合并excel中有规律的sheet名表
<>有什么办法可以把 sheet名字有规律的 工作表导入到一张表里面?</P>
<>就如例子中的LYBSC9这个Sheet以及LYBSC10这个Sheet。另外可能还会有LYBSC1/LYBSC2/LYBSC3...这些sheet。</P>
<>请问该如何合并?</P>
<P>[attach]25297[/attach]<br></P>
<P>DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, "BSC_Table", FileName, True, "导入的sheet表名该如何写?"</P>
[此贴子已经被作者于2007-7-10 14:24:57编辑过]
作者: canghua 时间: 2007-7-10 23:50
<>高手帮忙回答哦:)</P>
<>谢谢啦。</P>
作者: canghua 时间: 2007-7-11 00:11
<>DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, "BSC_Table", FileName, True, "导入的sheet表名该如何写?"</P>
"导入的sheet表名该如何写?"
<>一般导入的都是固定的sheet名称,但是现在是变化的,该如何定义????</P>
作者: andymark 时间: 2007-7-11 00:48
<DIV class=quote><B>以下是引用<I>canghua</I>在2007-7-10 14:23:00的发言:</B><BR>
<>有什么办法可以把 sheet名字有规律的 工作表导入到一张表里面?</P>
<>就如例子中的LYBSC9这个Sheet以及LYBSC10这个Sheet。另外可能还会有LYBSC1/LYBSC2/LYBSC3...这些sheet。</P>
<>请问该如何合并?</P></DIV>
<P> 合并到access,还是excel</P>
作者: canghua 时间: 2007-7-11 00:51
合并到access...
作者: andymark 时间: 2007-7-11 01:24
<>DoCmd.RunCommand acCmdImport</P>
<>通过向导选择SHEET表导入</P>
作者: canghua 时间: 2007-7-11 01:29
<>总算等到斑竹了,有办法写程序吗?</P>
<>而不用向导。</P>
作者: sgrshh29 时间: 2007-7-12 05:11
<DIV class=quote><B>以下是引用<I>canghua</I>在2007-7-10 16:11:00的发言:</B><BR>
<>DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, "BSC_Table", FileName, True, "导入的sheet表名该如何写?"</P><BR>"导入的sheet表名该如何写?"<BR>
<>一般导入的都是固定的sheet名称,但是现在是变化的,该如何定义????</P><BR></DIV>
<>1、不知你的book的名称与sheet的名称是否都是你上传的文件中的规律?
<P>2、每个book中是否只有一个有数据的sheet?
<P>3、不知你是要sheet的名称放到access表中,还是要把sheet中的数据导入到access表中?</P>
作者: canghua 时间: 2007-7-13 08:53
<>LS的朋友,回复你的疑问:
<>1、不知你的book的名称与sheet的名称是否都是你上传的文件中的规律?<BR>是的,都是。
<>2、每个book中是否只有一个有数据的sheet?</P>
<P>不止,还有其它的sheet,但没有规律可循。<BR></P>
<P>3、不知你是要sheet的名称放到access表中,还是要把sheet中的数据导入到access表中?</P>
<P>把sheet中的数据导入到access中。。</P>
<P>汗阿,一个简单问题我说了半天都没清楚,可怜。</P>
作者: sgrshh29 时间: 2007-7-13 19:14
<DIV class=quote><B>以下是引用<I>canghua</I>在2007-7-13 0:53:00的发言:</B><br>
<>LS的朋友,回复你的疑问:<br>
<>1、是的,都是。<br>
<>2、不止,还有其它的sheet,但没有规律可循。<br></P>
<P>3、把sheet中的数据导入到access中。。</P>
<P>汗阿,一个简单问题我说了半天都没清楚,可怜。</P></DIV>
<P>将同一个文件夹中的多个excel(每个excel中可以有数量不等的若干个sheet,所有book中的所有的sheet的第一行(也就是列名)必须全部相同(如果没有数据的就为空)。)中的所有sheet中的数据导入到access的"tbl"表中。
<P>Public Sub drxl()<br>Dim I As Integer<br>Dim strDir As String<br>Dim xlFileName As String<br>Dim xlSheetName As String<br>Dim xlApp As Object<br>Dim xlBook As Object<br>Dim xlSheet As Object<br>strDir = Dir(CurrentProject.Path & "\*.xls")<br>Set xlApp = CreateObject("Excel.Application")<br>Do While Len(strDir)<br> xlFileName = CurrentProject.Path & "\" & strDir<br> Set xlBook = xlApp.Workbooks.Open(xlFileName)<br> Set xlSheet = xlBook.sheets()<br> For Each xlSheet In xlBook.Worksheets<br> If xlSheet.range("a1") <> "" Then<br> Call IntoTable(xlFileName, xlSheet.Name)<br> End If<br> Next<br> xlBook.Close<br> strDir = Dir<br>Loop<br>xlApp.Quit<br>Set xlApp = Nothing<br>Set xlBook = Nothing<br>Set xlSheet = Nothing<br>End Sub<br>
<P>Public Sub IntoTable(FullFileName As String, SheetName As String)<br> DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "tbl", FullFileName, True, SheetName & "$"<br>End Sub<br></P>
[此贴子已经被作者于2007-7-13 11:15:07编辑过]
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) |
Powered by Discuz! X3.3 |