Tag: xlsx

如何将预生成的csv文件复制到xlsx与c#

我正在编写一个程序,将预生成的.csv文件中的特定列复制到模板xlsx文件中。 用我的代码,我只能够将整个csv文件复制到第一列。 任何提示如何使程序在粘贴过程中看到“;”作为分隔符? 另外,如果我超越这个问题如何只复制我select的特定列? using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Excel = Microsoft.Office.Interop.Excel; namespace Kreator { class Program { static void Main(string[] args) { Excel.Application srcApp; Excel.Workbook srcWorkbook; Excel.Worksheet srcWorksheet; Excel.Application destApp; Excel.Workbook destWorkbook; Excel.Worksheet destWorksheet; string srcPath = "C:\\Users\\Desktop\\Raport.csv"; string destPath = "C:\\Users\\Desktop\\XXX.xlsx"; srcApp = new Excel.Application(); srcWorkbook = […]

用指数字写入的string和数字导入Excel

我在Excel中有一个数据库,看起来像这样: Name Note Value1 Value2 Adidas first 1.74E-06 1.06E-07 等等,有成千上万的行和一堆有值的列。 但是,当我使用: data<-read.xlsx2("data.xlsx",header = T,sheetIndex = 1,colClasses="numeric") 它返回所有的string: is.numeric(data$X1) [1] FALSE 到目前为止,我的工作是这样的: as.numeric(as.character(data$X1)) – 但有很多列,它变得非常累人。 我怎样才能直接上传,而不使用这种技巧?

Perl excel Spreadsheet :: ParseXLSX通过公式获取单元格值

要分析的Excel工作表有两个工作表: 第一个工作表:单元格A1具有以下公式= TD!N2并显示正确的值 第二个工作表称为“TD”:单元格N2具有以下公式= SUM(F47:F49),并且是逗号后有3个数字的数字值 例: 第二张工作表“TD”: F47 = 1,200 F48 = 1,300 F49 = 1,401 N2 = SUM(F47:F49)= 3,901 第一个工作表: A1 = TD!N2显示3,901 一切看起来不错,但是当我尝试用Spreadsheet :: ParseXLSXparsing这个Excel文件 my $parser = Spreadsheet::ParseXLSX->new(); my $oBook = $parser->parse("$excelfile"); my $worksheet = $oBook->worksheet("first"); my $cell = $worksheet->{Cells}[1][0]; # A1 print Dumper($cell); 转储的结果如下所示: $VAR1 = bless( { 'Merged' => '', […]

当从Node.js通过Restify发送到客户端时,XLSX文件被损坏

我正在创build一个使用XLSX node.js库创buildexcel文件的项目,通过Restify将其发送到客户端,然后使用FileSaver.js库将其保存在本地计算机上。 当我将xlsx工作簿写入后端文件时,它打开的很好,但是,当我在客户端上打开它时,它已损坏。 出现错误:“Excel无法打开此文件,文件格式或文件扩展名无效,请检查文件是否损坏,文件扩展名与文件格式是否匹配”。 这里是我编写和发送后端文件的代码: var wopts = { bookType:'xlsx', bookSST:false, type:'binary' }; var workbook = xlsx.write(wb, wopts); res.send(200, workbook); 在前端,我使用XLSX文档中的代码: function s2ab(s) { var buf = new ArrayBuffer(s.length); var view = new Uint8Array(buf); for (var i=0; i!=s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF; return buf; } saveAs(new Blob([s2ab(response.data)],{type:""}), "test.xlsx"); 任何想法,为什么这是行不通的? 任何帮助将非常感激。 谢谢。

用aplsx :: Package在apis中发送xlsx数据,并再次将收到的响应string转换为Axlsx :: Package类

我正在处理API,它将以下面的代码返回以xlsx格式创build的数据 respond_to do |format| format.xlsx do p = Axlsx::Package.new wb = p.workbook wb.add_worksheet(name: "MyWorkSheet") do |sheet| sheet.add_row ["Column1", "Column2", "Column2"] @myData.each do |locale| sheet.add_row [locale.column1, locale.column2, locale.column3] end end send_data Base64.encode64(p.to_stream.read), type: "application/xlsx", filename: "myfile.xlsx" end p是类Axlsx::Package 在networking上我收到以下回应 response => <Net::HTTPOK 200 OK readbody=true> 现在我想从这个响应体创buildxlsx文件 我用下面的代码解码了响应的主体并接收了数据 decoded_data = Base64.decode64(response.body) 但是,decode_data是String类的。 我的问题是 我怎样才能将这个Axlsx::Package再次转换为Axlsx::Package类,并保存/导出到xlsx文件?

PHPExcel需要很长时间来加载xls,很好用xlsx

美好的一天。 我有这样的xls文件: +—-+——-+——–+ | ID | PRICE | STATUS | +—-+——-+——–+ | 1 | 1000 | 1 | | 2 | 1000 | 3 | | 4 | 1324 | 5 | | 8 | 3141 | 1 | +—-+——-+——–+ 正如你所看到的,没有太多的行和列。 但是,当我尝试保存它像XLS文件,然后像这样加载到PHPExcel: $objPHPExcel = PHPExcel_IOFactory::load('1.xls'); 它需要永恒的加载,并且服务器CPU和RAM的使用像魔术树一样增长。 但是当我尝试用XLSX做同样的事情时,它就像勒布朗·詹姆斯(LeBron James)一样。 喜欢这个: $objPHPExcel = PHPExcel_IOFactory::load('1.xlsx'); PHP扩展:zip,xml,gd,xmlreader,xmlwriter,xmlrpc被安装和工作。 PHP版本5.6.12 FastCGI。

如何从xlsx阅读器获取特殊字符的单元格数据

我正在使用Simplexlsx php类从xlsx文件读取数据并导入到数据库中。 我面临的一个问题,我还没有find谷歌之后,它的问题是,有像在100%,$ 300 xlsx列中的一些值,但库parsing数据,并给出这样的输出:1,300 – 像它的评价值和删除符号。 Excel文件: parsing库输出后是: [10] => SimpleXMLElement Object ( [v] => 5 ) [11] => SimpleXMLElement Object ( [v] => 1.2 ) [12] => SimpleXMLElement Object ( [v] => 1.1000000000000001 ) [13] => SimpleXMLElement Object ( [v] => 1 ) 我的预期应该是这样的: [10] => SimpleXMLElement Object ( [v] => 2.5% ) […]

PHPExcel(和其他)在读取xlsx时缺less单元格值

我使用不同的PHP库来读取来自各种文件types的客户订单。 现在我坚持一点。 我收到xlsx文件(附件),这可能是由一些未知的软件生成的。 当我使用PHPExcel(1.8.0)读取它时,我只能得到包含数字的单元格的值 – 首先看。 正如我们所知,xlsx是一些xml文件的归档容器。 当我对这些xmls进行了一些挖掘 – 我已经了解到,我只获取了表单文件(xls / worksheets / sheet1.xml中的xlsx)中描述的单元格的值。worksheet-> sheetData-> row-> having attr “t”设置为“n”。 一般来说,这意味着价值是在这个文件。 并将attr“t”设置为“s”的标签“c” – 值在SharedStrings.xml中进行了描述。 而PHPExcel没有得到它们。 或者我做错了什么? 这里是简单的代码: $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objReader->setReadDataOnly(true); $excel = $objReader->load($file); $excel->setActiveSheetIndex(0); $data = $excel->getActiveSheet()->toArray(null, true, true, true); print_r($data); 链接到文件

转置一个数据框,同时保存类/数据types信息

TL;博士 如何以一种保存类/数据types信息的方式,将不同类别的列向量(一列是character ,下一个是numeric ,另一个是logical等)的数据框转置? 示例数据: mydata <- data.frame( col0 = c("row1", "row2", "row3"), col1 = c(1, 2, 3), col2 = letters[1:3], col3 = c(TRUE, FALSE, TRUE) ) 这里还有一个xlsx文件,它提供了两种数据方向的示例: https : //github.com/rappster/stackoverflow/blob/master/excel/row-and-column-based-data.xlsx 问题 一个简单的t()或者一些比较像这个post中提到的例程是很棒的,但是不保存类信息或者原始数据框的列。 我也知道,类data.frame从来没有把混合类信息存储在其列中。 然而,至less我希望尽可能接近简单地“颠倒” data.frame的意图是:将视angular集中在行而不是列视angular上。 也就是说,行向量中的所有元素都需要属于同一个类,而类向量之间可能有所不同。 上下文 我经常在人们用来表示水平时间序列数据的项目中工作,而不是垂直 (“variables在列”方向)我们都习惯于在R(其中,恕我直言,也更有意义)。 更重要的是,他们正在广泛使用MS Excel。 我需要同时以“宽格式”读取数据,并且通过直接从R到XLConnect和/或openxlsx编写公式来更新现有的Excel文件(与在R中进行计算相反,将最终结果转储到Excel文件中)。 虽然我不断尝试告诉他们,使用这样一个方向意味着跨语言/工具(至less对于R和MS Excel)正确的标准工作,他们不太可能会转换。 所以我必须以某种方式处理。 目前的做法 所以我尽pipe关于保留一个底层的list但尽可能data.frame像数据data.frame一样“看起来和感觉”。 它的工作,但很相关。 我认为可能有一些更聪明的解决scheme。 函数def: transpose <- function ( […]

xlsx.core.min.js:13未捕获错误:不支持的文件NaN

我面临一个使用xlsx.core.js的alasql错误。 代码是 alasql('select * from xlsx("Leads.xlsx")',[],function(data) { console.log(data); }); 出现错误是=>未捕获错误:不支持的文件NaN我该如何解决这个错误。 或者build议我可以访问Excel文件中的任何其他文件。 图书馆是: <script type="text/javascript" src="js/alasql.min.js"></script> <script type="text/javascript" src="js/xlsx.core.min.js"></script> 一个重要的事情,这个代码是完全由昨晚运行,当我今天运行它,这是给这个错误。 谢谢。 不介意..我英文很差。 和新的堆栈溢出。