Tag: csv

如何使用VBA Excel 2010 msoFileDialogOpen将CSV Excel数据导入到单元格中

我正尝试在VBA中使用msoFileDialogOpen(使用Excel 2010)从文件导入数据。 macros应该用逗号分隔并用逗号分隔。 这是macros: Public Sub Function4_FileExplorer() Dim file As String ' Start File Explorer to select file containing data (simple GUI, much easier than coding vFileName) On Error GoTo ErrorHandler With Application.FileDialog(msoFileDialogOpen) .AllowMultiSelect = False If .Show Then file = .SelectedItems(1) Workbooks.Open file ' there used to be Path.Open here but that doesn't work […]

保存时不能访问C#excel SaveAs文件

尝试以编程方式将Excel工作表保存为循环中的唯一文件名。 private static DateTime csvtime = DateTime.Now; private static string time = csvtime.ToString("HH:mm:ss"); private static string Path = @"C:\users\User\desktop\MonetaryEntry_"+time+".csv"; mySheet = (Excel.Worksheet)myBook.Worksheets[1]; mySheet.SaveAs(Path, Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV); 这会失败,并出现以下错误 在MonetaryEntryFormatting.exe中发生未处理的“System.Runtime.InteropServices.COMException”typesexception 其他信息:文件无法访问。 尝试以下方法之一: •确保指定的文件夹存在。 确保包含该文件的文件夹不是只读的。 •确保文件名不包含以下任何字符:<>? []:| 要么 * 确保文件/path名称不超过218个字符。 但是当我更改pathstring private static string path = "@C:\users\user\desktop\MonetaryEntry_.csv"; 它解决。 目标是通过一个循环来保存每一次循环作为一个唯一的* .csv文件。 每次都会生成未确定数量的.csv文件。 几个笔记; 写在桌面上的用户帐户,我目前正在做所有的工作。如果相关,我复制一个文件在桌面上,并作为一个不同的名称粘贴并从那里工作。 我觉得我可能会错过相当简单的事情,因为这种问题通常是..

用AngularJS和EPPlus生成CSV的问题

我发送一个对象数组回到服务器(WebApi),使用EEPlus做一个ExcelPackage.GetAsByteArray(); 然后将其发送回AngularJS前端。 我将信息存储在DataTable中。 DataTable table = new DataTable(); table.Columns.Add("WOS Name", typeof(string)); table.Columns.Add("Consultant Name", typeof(string)); table.Columns.Add("Client", typeof(string)); table.Columns.Add("Cohort", typeof(string)); table.Columns.Add("Not Started", typeof(int)); table.Columns.Add("Awaiting Wos Release", typeof(int)); table.Columns.Add("Released To Consultant", typeof(int)); table.Columns.Add("Released To Wos", typeof(int)); table.Columns.Add("Awaiting Wos Signoff", typeof(int)); table.Columns.Add("Current", typeof(int)); table.Columns.Add("WOS Overdues", typeof(int)); table.Columns.Add("Consultant Overdues", typeof(int)); foreach (var stat in statistics) { table.Rows.Add( stat.WosName, stat.ConsultantName, stat.Client, […]

工作表CSV与自定义分隔符?

我需要使用工作簿中的自定义分隔符创build一个CSVstring。 我写了这个函数,但是问题在于循环行太慢了: Public Function CSVStringFromWB(wb As Workbook, FieldTerminator As String) As String Dim Line As String Dim r As Long Dim ColsCount As Long Dim RowsCount As Long ColsCount = wb.Sheets(1).UsedRange.Columns.Count RowsCount = wb.Sheets(1).UsedRange.Rows.Count With wb.Sheets(1) For r = 1 To RowsCount Line = Join(Application.Transpose(Application.Transpose(.Range(.Cells(r, 1), .Cells(r, ColsCount)).Value)), FieldTerminator) CSVStringFromWB = CSVStringFromWB + Line + […]

导出到Excel:以编程方式创build新的Excel工作表

我需要将一些数据导出到Excel中,并且正在“手动”构build文档:包含\ t的string用于新单元格,\ r \ n用于新行。 我的问题是如何在同一个文件中以类似的方式插入新的表单?

为什么Python的csvreader开始好,然后生成空字节?

好,所以我正在阅读一个Excel工作簿。 我读了一段时间的文件,它开始了.csv后debugging,并做了其他事情下面的代码我告诉你,它改变了一个xlsx我开始得到IOError没有这样的文件或目录。 我想出了为什么,并将FFA.csv更改为FFA.xlsx,它没有任何错误。 然后我开始做其他事情和debugging。 今天早上起床,现在我得到以下错误:行包含NULL字节。 奇怪,因为代码开始很好。 现在它无法阅读。 我把打印repr()进行debugging,它现在打印NULL字节。 那么,我如何解决这个问题,并在将来防止它呢? 这里是第一个200字节: PK\x03\x04\x14\x00\x06\x00\x08\x00\x00\x00!\x00b\xee\x9dh^\x01\x00\x00\x90\x04\x00\x00\x13\x00\x08\x02[Content_Types].xml \xa2\x04\x02(\xa0\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 import csv def readFile(): count = 0 print repr(open("FFA.xlsx", "rb").read(200)) #dump 1st 200 bytes with open("FFA.xlsx","rb") as csvfile: FFAreader = csv.reader(csvfile, delimiter=",") for row in FFAreader: idd = row[0] name = row[1] pos = row[2] team = row[3] pts = row[4] oecr = […]

VBA复制到csv的运行时错误

我得到一个复制方法的运行时错误。 “运行时错误”-2147417848(80010108)':对象'范围'的方法'复制'失败“ Sub SaveCSV() Worksheets("export").Copy Application.DisplayAlerts = False ActiveWorkbook.SaveAs Filename:="C:\export.csv", FileFormat:=xlCSV ActiveWorkbook.Close Windows("exportData.xlsm").Activate Application.DisplayAlerts = True Application.OnTime Now + TimeValue("00:00:60"), "SaveCSV" End Sub 但是当我debugging它显示工作表(“导出”)。复制

.csv文件似乎有一个隐藏的分隔符 – 由Excel识别,但不记事本(和其他程序)

我收到了一个.csv文件。 当我用记事本打开这个文件时,所有的信息都显示在一行中: Email;Cityjohnsmith@live.com;New York 但是,当我用MS Excel打开文件时,它正确显示信息。 我怎样才能识别分隔符? 因为应该读取此文件的第三个程序无法识别分隔符。

从Excellogging中获取总数

我有一个问题与CSV例如,我有多个行date和价格与更多相同的date和时间为例 01-01-2015 10:00, 10.00 01-01-2015 11:00, 12.00 01-01-2015 12:00, 9.00 02-01-2015 11:00, 4.00 02-01-2015 13:00, 6.50 有这样的行数以千计,我试图用excel来完成是从所有的日子得到总数,所以与示例数据,我想要以下结果: 01-01-2015, 31.00 02-01-2015, 10.50 有没有人知道一个简单的方法来完成这一点(请记住,该文件涉及数千logging) 我也希望我用这个问题的正确的论坛,我无法find本网站上的Excel或办公室的具体论坛

如何用另一个值replace列表值c#

我从列表中写入一些数据到csv文件,但一些列表索引有空string,但另一个索引有价值在这些情况下,数据与另一个列表比较写在同一个csv文件 这是我使用Excel表打开的csv文件 在第三列中存在第二列单元的ID,所以在接下来的行中,我想根据以前的行检测ID的名称 就像第3行的ID是19,名字是I / O,所以在第7行的ID是19,现在要填满第二个单元 info:这个ID是上面已经知道的,并且之前的任何下一个ID将会被以前的代码存在。 bool isInList = ms.IndexOf(ShapeMaster) != -1; if (isInList) { savinglabelnamefortextbox = t.InnerText; string replacement = Regex.Replace(savinglabelnamefortextbox, @"\t|\n|,|\r", ""); xl.Add(""); dl.Add(replacement); ms.Add(ShapeMaster); } 并使用下面的代码写入到csv文件 using (StreamWriter sw = File.CreateText(csvfilename)) { for (int i = 0; i < dl.Count; i++) { var line = String.Format("{0},{1},{2}", dl[i], xl[i],ms[i]); sw.WriteLine(line); } }