Tag: csv

Excel单元格格式特殊情况

我有一个有趣的困境,想知道如果有人可能知道这是可能的。 我使用java创build一个.csv文件,每行的一个逗号分隔的条目是一个url。 例: item1,item2,item3, http: //myurl.com 最初,当我在Excel中加载.csv文件时,它只加载了url的文本,并没有使其可点击。 我能够通过在创build文件时用这个string包围条目来解决这个问题: = HYPERLINK(“ http://myurl.com ”) 当Excel加载时,链接是可点击的,鼠标指针变为手形图标。 唯一的问题是,当你只是看着它,而不是徘徊在单元格,它看起来像在白色背景上的黑色文字。 通常当你看到一个链接,它是蓝色的下划线标志着它是可点击的。 我想这个视觉队列,但我不知道是否有一种方法,只是通过修改我的function上面的某种单元格格式函数什么的。 是的,我知道条件格式是什么,以及如何将其应用于Excel中的单元格。 但是,这不适合我,因为我只是需要它加载文件时工作。 当用户下载文件时,文件始终是新build的,因为内容总是在变化。 任何想法将不胜感激。

如何使用PowerShell将多个xls文件转换为csv?

我试图使用以下PowerShell脚本将多个Excel文件(xls)转换为csv: $excel = new-object -ComObject "Excel.Application" $excel.DisplayAlerts=$True $excel.Visible =$false foreach ($file in get-childitem $src_dir) { $wb = $excel.Workbooks.Open($file.FullName) $wb.SaveAs($dst_dir + $file.Name + ".csv", 6)# 6 -> csv $wb.Close($True) } $excel.Quit() [void][System.Runtime.Interopservices.Marshal]::ReleaseComObject($excel) 原则上这工作,例如我得到CSV文件。 但是,对于一些文件(每次运行不同),我会得到一个exception: Exception calling "SaveAs" with "2" argument(s): "Microsoft Office Excel cannot access the file 'C:\Users\…\AppData\Local\Temp'. … 此外,我收到一个消息框,询问是否要将更改保存到源xls。 一旦我调用SaveAs,$ wb引用新文件。 那么如何保存或放弃对源文件的更改呢? 为什么这只发生在几个文件? 这个脚本还有其他的问题吗? 更新 […]

Excel跟踪CSV文件中的逗号错误

我有一个XLS文件在Excel 2003中创build一个带有macros的CSV文件,我有40 +列,最后3个是可选的,因此在XLS上有很多空的值,当我运行导出子程序,它不会把所有行上的尾随逗号,为什么? 因为: http : //support.microsoft.com/kb/77295 -.- 在Microsoft Office Excel中,如果以文本或CSV(逗号分隔值)格式保存文件,Excel将在工作表的每列之间放置制表符或逗号。 但是,某些文本文件可能以16行块的不同数量的制表符或逗号保存。 这里是他们build议的工作: 要确保Excel保存所有空列的制表符或逗号分隔符,请确保文件中的最后一列在整个文件中至less每隔16行包含一些数据。 如果行块不包含数据,则将每16行中的空格或其他字符添加到最后一列中的单元格,或者重新排列工作表中的列,以便工作表上的最后一列始终包含信息。 – 。 – 方式去微软! -.- 好了,所以我的主要问题是,生成的文件将被另一个程序parsing出我的范围,这需要特定的格式,因为它现在我每隔16行添加一个空白,如果该字段为空,这似乎这样做但数据处理部门正在抱怨这个空白…你能相信他们吗? 无论如何,我也试图添加一个标志,并删除它与查找function,但ofc当你保存文件它将带走分隔符… 感谢您阅读我的历史; p 有什么build议么 ? 编辑:不幸的是,使用Excel是必须的,数据是由不同的用户通过Excel表格手动input,VBA代码更像模板生成等。这是我唯一的问题,这是不可行的改变整个过程。

如何从* .xlsm中提取表单并将其保存为Python中的* .csv?

我有一个* .xlsm文件,其中有20张。 我想保存几张单独的* .csv(格式化损失是好的)。 已经尝试xlrd-xlwt和win32com库,但无法通过。 任何人都可以提供一个代码片段,在Python中进行上述处理? 我有其他的Python依赖关系,所以没有其他语言可以工作。 谢谢

生成表格模式,检查Excel(CSV)并导入数据

我将如何去创build一个检查Excel(或CSV)文件的MYSQL表模式。 有没有任何准备好的Python库的任务? 列标题将被清理为列名。 数据types将根据电子表格列的内容进行估算。 完成后,数据将被加载到表中。 我有一个〜200列的Excel文件,我想开始正常化。

Python:使用Openpyxl读取大型Excel工作表

我有一个包含大约400个工作表的Excel文件,我需要将其中的375个保存为CSV文件。 我已经尝试了一个VBA解决scheme,但Excel只是打开这个工作簿的问题。 我已经创build了一个Python脚本来做到这一点。 但是,它会迅速消耗所有可用的内存,并且在导出25张纸后几乎停止工作。 有人对我如何改进这个代码有什么build议吗? import openpyxl import csv import time print(time.ctime()) importedfile = openpyxl.load_workbook(filename = "C:/Users/User/Desktop/Giant Workbook.xlsm", data_only = True, keep_vba = False) tabnames = importedfile.get_sheet_names() substring = "Keyword" for num in tabnames: if num.find(substring) > -1: sheet=importedfile.get_sheet_by_name(num) name = "C:/Users/User/Desktop/Test/" + num + ".csv" with open(name, 'w', newline='') as file: savefile = csv.writer(file) […]

excel vba打开对话框导入csv

我有这个由macroslogging器生成的vba代码。 它将csv文件导入到当前的Excel表格中,并具有一些特定的列设置。 现在,csv文件的path被硬编码为“C:\ Users \ myuser \ Desktop \ logexportdata.csv”。 我怎样才能改变这一点,以便有一个对话框提示要求用户find.csv文件进行导入? Sub Import_log() With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;C:\Users\myuser\Desktop\logexportdata.csv", Destination:=Range( _ "$A$2")) .Name = "logexportdata" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = […]

将CSV文件导入Excel

我想请求您的帮助,如下所示: 我有从Excel中导入的软件应用程序导出的CSV文件来分析数据。 每日生成40-50个CSV。 现在我通过“从文本中获取外部数据”来手动完成此操作。 导入期间logging的代码是: With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;SYSTEM:Users:catalin:Documents:LINELLA:WH Analytics:data:pick 01-18:050:Inquiry closed lists SKU_0142.csv" _ , Destination:=Range("A1704")) .Name = "Inquiry closed lists SKU_0142" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .TextFilePromptOnRefresh = False .TextFilePlatform = […]

保证被Excel识别的date格式

我们正在以各种格式(其中包括CSV)导出我们的分析报告。 对于一些客户,这个CSV发现它的方式进入Excel。 例如,在CSV文件中,其中一列是date "Start Date","Name" "07-04-2010", "Maxim" Excel无法parsing这个date格式,显然取决于用户的区域设置。 “07”是一天还是一个月… 你能推荐一些文本格式的date字段,Excel不会有parsing麻烦? 我瞄准最可能的失败安全选项。 我会解决一些转义序列,这将导致excel,以避免parsing列中的文本。 感谢您的帮助,Maxim。

如何创buildCSV,以便数字在电子表格中显示为string?

我试图build立一个应用程序,从数据库中提取一些数据,然后使用一些数据来创build一个CSV文件,由Excel加载。 代码: foreach (xOFDocInfo cm in docs) { string s = bi.Agency + "," + cm.BatNbr.Trim() + "," + cm.RefNbr + "," + cm.DocType + "," + cm.OrigDocAmt.ToString() + "," + cm.CreateDate.ToShortDateString(); writer.WriteLine(s); } “cm.BatNbr”是一个6个字符的零填充数字,如“001234”。 我希望Excel将文本格式设置为文本格式,所以我不会在前面丢失零。 我已经尝试了一些技巧,例如用单引号(撇号)加数字,但我得到的只是一个撇号前缀。 如果我将单元格设置为文本格式,然后删除撇号,我也失去了前面的零。 我不小心发现,如果我用百分号前缀的东西,Excel将单元格中的值转换为一个百分比,所以也许有一些前缀我可以用来导致Excel将单元格中的值作为文本加载时向上?