如何使用axlsx gem将列添加到现有行?

我正在尝试格式化我的xlsx文件,但是我遇到了一些问题。 例如,我需要添加列到现有的行。 例如这里是我的代码: wb.add_worksheet(name: "Sums") do |sheet| sheet.add_row ["1.", "Rodiklis"], :style=>[title] sheet.add_row ["1.1", "Rekomendacijų vertė"] @departaments.each do |departament| sheet.add_row ["", departament.name] end @all_items.each do |summary| tyfcb = 0 rgi = 0 rgo = 0 rgirgo = 0 total = 0 rgirgo_per_user = 0 meeting_1_2_1 = 0 meeting_1_2_1_per_user = 0 ceu = 0 ceu_per_user = 0 […]

根据textarea的输出更新excel文件

我的代码导入excel文件,然后把一个特定的列到一个textarea我想知道我将如何修改excel文件,如果我编辑了textarea编辑应保存在excel文件上的东西 String excelFilePath = "sample.xlsx"; FileInputStream inputStream = null; try { inputStream = new FileInputStream(new File(excelFilePath)); } catch (FileNotFoundException e1) { e1.printStackTrace(); } Workbook workbook = null; try { workbook = new XSSFWorkbook(inputStream); } catch (IOException e1) { e1.printStackTrace(); } Sheet firstSheet = workbook.getSheetAt(0); Iterator<Row> iterator = firstSheet.iterator(); while (iterator.hasNext()) { Row nextRow = iterator.next(); […]

运行时错误7:内存不足,加速代码

我一直在解决这个问题已经有一段时间了,在这里的人们的帮助下,我设法提出了两个解决scheme。 第一个解决scheme工作,但我不能得到msgbox显示正确的信息。 下面的版本第一次工作, msgbox在msgbox中显示正确的数据,但如果我再次尝试运行代码,它会崩溃excel,并给我一个运行时错误7:内存不足。 它打破了: wsNew.Name = strWS ,它看起来总是试图创build工作表,即使他们已经存在。 我认为这可能与On Error Resume Next, If Len(Worksheets(strWS).Name) = 0 Then 。 无论如何可以加快这个代码吗? 目前它正在通过全球表格中的42行进行查看,但可能会出现数百条的情况,而此时它正在以合理的速度运行,只要我在全局表格中引入更多行,慢一点。 Private Sub CommandButton2_Click() Dim j As Long, strWS As String, rngCPY As Range, FirstAddress As String, sSheetsWithData As String Dim sSheetsWithoutData As String, lSheetRowsCopied As Long, lAllRowsCopied As Long, bFound As Boolean, sOutput As […]

有没有办法使用hex编辑器解除Excel工作表(* xls)的保护?

我正在阅读这篇文章 ,他们描述了一种在Excel中打开受密码保护的VBA项目(V.2003或.xls)的方法。 我想知道是否有一个类似的方法来解除excel工作表? 非常感谢。

c# – Interior.Color不工作

using Excel = Microsoft.Office.Interop.Excel; using Microsoft.Office.Interop.Excel; 码 oSheet = (Excel.Worksheet)oWB.ActiveSheet; oSheet.Name = "Data"; oSheet.Cells[1, 1].Interior.Color = 4; 我的目标是获得单元格的值,并需要将背景颜色设置为颜色索引4。 例。 如果单元格[5,2]包含文本为“否”,则需要将设置的背景颜色设置为彩色。 指数4。 但是我得到错误 不包含“Interior”的定义,并且没有可以find接受“object”types的第一个参数的扩展方法“Interior”

匹配两张纸上的数据,如果颜色不同,则显示黄色

我正在试图检查两张表上的数据。 逻辑: 如果Sheet2上的ABC ABC数据与Sheet1上任何行上同一列上的数据相匹配,然后检查两张纸上的col E和col F,并在Sheet2上有不同的数据时将其着色为黄色 码: Option Explicit Sub CheckData() Dim wb, wn As Worksheet Dim i, j, m Dim strA, strB, strC, strE, strF, NstrA, NstrB, NstrC, NstrE, NstrF As String Dim FinalRowB, FinalRowN, count Set wb = Sheets(1) Set wn = Sheets(2) FinalRowB = wb.Range("A900000").End(xlUp).Row FinalRowN = wn.Range("A900000").End(xlUp).Row For i = 2 […]

创build如果下一个循环与多个variables(工作代码)

我有一张表,我用它来dynamic调整图表。 为此,我使用下面的代码,按照预期工作,但是由于我是VBA新手,所以在创build循环时遇到困难,因此我不必列出每个系列/类别。 总共有8个系列和17个类别。 – 系列filter(真/假)列在“ B27:B34 ”中, – 类别filter在“ C25:S25 ”中列出, 所有的工作表(3)。 有人可以帮我弄这个吗 ? 我的代码(缩写): Sub UpdateChart() Dim varSeries1 As String Dim varSeries2 As String Dim varSeries3 As String ' … Dim varCategory1 As String Dim varCategory2 As String Dim varCategory3 As String ' … varSeries1 = Worksheets(3).Cells(27, 1).Value varSeries2 = Worksheets(3).Cells(28, 1).Value varSeries3 = […]

如何将包含超过15位数字限制的单元格转换为实际值

我没有意识到所有版本的Excel允许的最大数量(最长15个数字)是有限的。 我已经通过手动input大量值来发现错误,只是发现在第一个15位数字被零影响之后,我失去了准确性。 这几乎是一个3小时的工作,看起来像我将不得不重复,除非有人知道一个办法来帮助我。 从那以后,我保存并退出了电子表格。 后来客户回到我这里说,我给他们的数字是不准确的,因为他们只有15位数的准确性。 然后,我在网上研究了这一点,发现我应该在超过15个字符的数字复制之前将文本格式设置为文本格式。 有谁知道是否有办法让数字回来,或者我是否会重新生成电子表格?

获取目录文件夹名称和只有Upto 2子文件夹名称

我想从目录中获取文件夹的名称,并从该目录中获取任何子文件夹的名称。 所以它是主目录 – >文件夹名称 – > SubFolder1 – > SubFolder2 下面的代码获取所有的文件夹和子文件夹名称。我从这里得到的代码。 任何想法我怎么能限制只有两个子文件夹? Option Explicit Sub FolderNames() Application.ScreenUpdating = False Dim xPath As String Dim xWs As Worksheet Dim fso As Object, j As Long, folder1 As Object With Application.FileDialog(msoFileDialogFolderPicker) .Title = "Choose the folder" .Show End With On Error Resume Next xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & […]

将多个选定的工作表保存为一个PDF

我试图将多个选定的工作表保存到一个PDF中。 relativePath = wb.Path & "\" & sheetName & dateToday wb.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select ***This is the code in question***.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:=relativePath, _ Quality:=xlQualityStandard, IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=True 我已经尝试了两种方法来修改“这是有问题的代码” 我用“select” 结果:空白文档以空格forms保存为PDF 我已经使用“ActveSheet” 结果:文档仅以第一张纸张的forms保存为PDF 我已经使用'wb'(这是我目前的工作手册,只是为了testing它的工作原理) 结果:正如预期的那样,文档被保存为PDF格式,其中包含所有表格,主要是testingPDFfunction是否正常工作 为了澄清,我希望的结果是sheet1,sheet2和sheet3被保存到相同的PDF(我有一堆在我的工作簿中的其他工作表,我会replace静态编码表名与数组,当我得到它的工作) 我已经从stackoverflow的答案得到解决scheme1和2,但都不为我工作的地方为他人工作。 任何人都可以请一些解决scheme或至less确定为什么这两件事情发生?