Tag: excel 2007

遍历所有表单,如果cell = string,则将三个单元格复制到特殊表单

我正在使用excel 2007.我有一个发票系统,在其中input采购订单编号,并生成一个新的发票,并将该采购单编号作为工作表名称,并将其复制到同一工作表上的单元格,然后从那里它被手动填写并保存。 每个发票在单元格C6中具有十四种电源types之一(例如,打印耗材或从下拉列表中select的清洁耗材)。 这一切都很好。 我想跟踪每种供应types花费多less,所以我需要通过每个发票,检查供应types,并复制三个不连续的单元格(date(A6:B6),宝#(F6:G6)和金额(G39))添加到该供应types的“支票簿样式”表中的一行。 我猜这个伪代码看起来像这样: 对于每张纸,检查单元格c6中的供应types 如果供应types正在打印, 将新的三个单元格值写入名为“打印”的工作表,否则继续下一步 如果供应types正在清洁, 将新的三个单元格值写入名为“清洗”的工作表 等等,“如果”自杀死亡。 下面是我所做的,只是通过所有表单复制单元格,而不按供应types进行sorting – 然后试图让它只使用打印发票没有成功。 Sub CopyRangeFromPrintingWorksheets() Dim sh As Worksheet Dim DestSh As Worksheet Dim Last As Long Dim CopyRng As Range With Application .ScreenUpdating = False .EnableEvents = False End With 'Delete the sheet "Printing" if it exist Application.DisplayAlerts = False On Error […]

Visual Basic代码跳转到一个明显随机的位置

我有一个Excel中的Visual Basic程序,它打开Word文档并将信息从Word复制到Excel中。 它的核心是一个for循环,它遍历一个文档中的每个表格。 for循环内部是对函数进行处理的调用: For nCurrentTable = 1 To nTotalTable ' Process each table in Word document, one at a time. Call Process_One_Table(nCurrentTable, nTotalTable, vDocName) Next nCurrentTable n个variables是Long,vDocName是一个Variant。 为什么脚本在for循环结束时退出该函数呢? 发生在不同的地方。 现在它发生在(来自Process_One_Table深处的代码)之后: Cells(1, nColumn).Select Selection.EntireColumn 它也发生在我误用了一个赋值,将一个string赋给一个Long(我现在已经纠正了)之后。

Excel:如何基于第三个奇数/偶数参数列将列拆分为两列?

我将参考下面的图片: 我试图把FirstValue列分成两列, 不过,我想分割基于参数列的列。 当参数值是奇数时,我想将值只复制到OtherValue1列。 当参数值是偶数时,我想只将值复制到OtherValue2列。 在阅读论坛并尝试excel的“文本到列”function后,我无法find解决scheme。 有没有办法实现这个使用VBA? *注意:工作表实际上大约有10,000行,所以速度也是有帮助的。 编辑 :这是我到目前为止的代码。 我在这行代码中得到对象错误: .Cells(2, MF1Col).Formula = "=IF(MOD(paraformula,2)=1,WTRfor,"")" Dim rw As Worksheet Dim secondCell, MF1Cell, MF2Cell, paraCell, MF1formula, MF2formula, paraformula, WTRfor As Range Dim secondCol As Long, MF1Col As Long, MF2Col As Long, paraCol As Long Set rw = ActiveSheet With rw Set secondCell = .Rows(1).Find("FirstValue”) ' Check […]

Excel公式MMM到int

是否有一个Excel短格式的文本月份转换为数值的Excel公式? 例如:Jan = 1,Feb = 2等。 我很熟悉通过= TEXT(1,“MMM”)显示数字的文本,但是对于这些文本值却没有。

Excel删除空行

我想删除完全空的行。 例如,我有一张至less有10行5列的工作表。 有些行在ColumnA没有值,但是在ColumnB 。 其他行在任何列中都没有值。 我怎样才能删除那些没有任何价值的行,但保持这些行至less有一列的值?

VBA对象所需的错误取决于代码安排

r = mainWS.Cells(count, 1).Value paths = mainWS.Cells(i, 2).Value pathd = mainWS.Cells(i, 6).Value ….. If (r = "H") Then Application.Workbooks.Open (pathd & "\" & filed) Set dWB = Application.Workbooks(filed) Set tabD_WB = dWB.Sheets(tabd & "") Application.Workbooks.Open (paths & "\" & files) Set sWB = Application.Workbooks(files) Set tabS_WB = sWB.Sheets(tabs & "") End If Set uRange = […]

如何发送一个Excel工作簿作为回应?

我试图在代码隐藏中创build一个Excel工作表,然后下载它。 我不想保存在磁盘上的文件,我想直接发送它作为回应,我试了下面的代码。 但我没有得到确切的优秀。 Excel.Application xlApp; Excel.Workbook xlWorkBook; Excel.Worksheet xlWorkSheet; object misValue = System.Reflection.Missing.Value; xlApp = new Excel.ApplicationClass(); xlWorkBook = xlApp.Workbooks.Add(misValue); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); for (int i = 1; i <= 100; i++) for (int j = 1; j < 100; j++) xlWorkSheet.Cells[i, j] = i + " : " + j; Response.ContentType = "application/vnd.ms-excel"; Response.AppendHeader("Content-Disposition", […]

Excel无法读出variables

我有以下代码: Dim FinalAddr As Range Dim Final As String Private Sub Worksheet_Change(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub On Error Resume Next Select Case UCase(Target.Value) Case "NEW-BOX" Selection.Offset(-1, 2).Select FinalAddr = Range(Selection.Address) MsgBox FinalAddr ' Debug, nothing comes up however Selection.ClearContents Selection.Offset(1, -2).Select Case "END-BOX" Final = FinalAddr.Value Application.Speech.Speak (Final) End […]

Excel – 2列表中的search列表

我有两个名单,每个都在自己的工作表上。 我的目标是search第一张纸的每个单元格上的第二张纸的每个单元格,并删除第一张纸的整个行(如果已find)。 单元格的内容不一定相同,只能是一个string。 例如,工作表2中的一个单元格是“string”,但是如果第一个工作表中的单元格之一是“substring”,则应该删除第一个工作表的整个行。 我应该如何通过VBA来处理它? 谢谢!

从Excel 2007中打开一个Oracle .dmp文件

我有一个oracle .dmp文件,我想从excel 2007打开。我如何使用'获取外部数据'function来做到这一点? 首先可能吗?