2

我正在尝试将数据从 excel 复制到 SPSS。我有 80 个 excel 文件,需要将每个工作簿中的相同单元格复制并粘贴到我的主 SPSS 数据库中。除了手动复制和粘贴每个单独的值之外,我还有什么方法可以做到这一点?

4

2 回答 2

1

如果您至少有 SPSS Statistics 17,另一种方法是使用 SPSS 社区网站 (www.ibm.com/developerworks/spssdevcentral) 上提供的 SPSSINC PROCESS FILES 扩展命令。这可以遍历一组文件并对每个文件应用 SPSS 语法,包括 GET DATA 来读取文件。因此它可以读取您想要的 Excel 文件,在 SPSS Statistics 中打开它们,然后选择数据集的任何适当部分。

这需要您的 Statistics 版本的 Python Essentials/插件,也可以从社区网站获得,但除了 SPSS 语法之外不需要其他技能。

HTH,乔恩·派克

于 2011-06-21T13:48:20.333 回答
0

我在工作中使用 SPSS,我们每天都从 excel 中导入数据。我们使用另存为制表符分隔的文本格式,并使用 SPSSSyntax脚本导入文本文件。由于您有这么多的 excel 文件,您可以使用一些 vba 自动执行整个“另存为”过程,如果这会使事情变得更容易的话。

更新

这是一小段代码,用于遍历目录中的(Excel)文件,打开每个文件,然后另存为制表符分隔的文本文件。如果.xls您的文件是 . xlsx或者.xlsm,您还需要将文件夹路径更改为有意义的内容...

Sub TestMe()
Dim wb As Workbook
Dim INfldr As String
Dim OUTfldr as String

OUTfldr = "C:\WhereIPutStuff\"
INfldr = "C:\WhereIKeepStuff\"
strFNAME = Dir(INfldr & "*.xls")

i = 1

Do
Set wb = Application.Workbooks.Open(INfldr & strFNAME)
wb.SaveAs Filename:=OUTfldr & "OutputFile(" & i & ").txt", _
          FileFormat:=xlText, _
          CreateBackup:=False

wb.Close False

i = i + 1  
strFNAME = Dir
Loop Until strFNAME = ""

End Sub
于 2011-06-05T20:05:34.437 回答