【问题标题】:How to export specific values from TXT into Excel?如何将特定值从 TEXT 导出到 Excel?
【发布时间】:2017-01-23 13:54:21
【问题描述】:
我使用的软件可以将其测量结果生成为 TXT 文件。
每次我测量某些东西时,它都会将结果保存到一个唯一命名的 TXT 中。
Example.TXT
Date: 2017.01.23.
Sample ID: ASD-123-YXZ
Maximum Runs: 7
Flow Purge: 10.0 min
我有一个 Excel 表,我必须在其中手动复制结果。它包含所有测量值。例如:我进行了 10 次不同的测量,得到了 10 种不同的 TXT。从这些文件中,我将需要的值复制/粘贴到 ONE excel 中。就像 A1 列包含所有 txt 的日期等。
我的目标是自动化这项任务。您对如何实现这一点有什么建议吗?
ps:对不起我的英语
【问题讨论】:
标签:
excel
text
automation
【解决方案1】:
这是一个简短的 C# 程序,它从一个文件夹中导入每个 TXT 文件并将它们全部导出到 Excel 文件中。它使用EasyXLS Excel 库来导出 Excel 文件:
ExcelDocument excel = new ExcelDocument();
//This is a folder where all TXT files are stored
System.IO.DirectoryInfo folder = new System.IO.DirectoryInfo(folderTXTfiles);
//Import each TXT file and create a sheet from each one
foreach (System.IO.FileInfo file in folder.GetFiles())
{
try
{
ExcelDocument txtExcel = new ExcelDocument();
txtExcel.easy_LoadCSVFile(file.FullName);//or easy_LoadTXTFile
String sheetName = file.Name.Substring(0, file.Name.IndexOf(".txt"));
if (sheetName.Length > 31)
{
sheetName = sheetName.Substring(0, 31);
}
ExcelWorksheet sheet = (ExcelWorksheet)txtExcel.easy_getSheetAt(0);
sheet.setSheetName(sheetName);
excel.easy_addWorksheet(sheet);
}
catch (Exception ex)
{
Console.WriteLine(ex.StackTrace);
}
}
//Export Excel file
excel.easy_WriteXLSXFile(folder.FullName + "\\" + "Excel.xlsx");