我有两个单独的名为ImportData和ExportData的macros。 ExportData将数据发送到名为Temp的表单。 它以后被发送到一个.csv文件。 所有这一切工作正常。 例如: Sheets("Orders").Range("A1:C6").Copy Sheets("Temp").Range("A55:C60").PasteSpecial xlPasteValues ImportData与ExportData相反:例如: Sheets("Temp").Range("A55:C60").Copy Sheets("Orders").Range("A1:C6").PasteSpecial xlPasteValues 有没有办法做到这一点,而不是有两个基本相同的macros,除了复制和粘贴触发翻转? 每个macros都有上百行的复制和粘贴,而不仅仅是2行。
下面的这个Sub从另一张表复制一张表。 长度是可变的,所以我使用了LastRow。 我想更新Sub来不复制整个表格,而是从wb2中的标题复制到最后一行数据。 标题每次显示在不同的行上。 列“A”中的列标题是“客户端”。 最后一列中的标题是“Last” Sub CopySheetsl_() Set wb1 = Workbooks("macro..xlsm") Set wb2 = Workbooks.Open("L:\ Report.xlsx") LastRow = wb2.Sheets("Page1_1").range("A:Y").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row wb1.Sheets("Carrier").range("E1", "BU1" & LastRow) = wb2.Sheets("Page1_1").range("A1", "BQ1" & LastRow).value ' CopySht 'Range("A11", "I11" & LastRow).Value wb1.Close wb2.Close 结束小组
我想写一个代码,让我看看两个非常相似的列,并清除第二列中重复的单元格,如果它已经存在于第一列。 我有一个工作的代码,但它删除了一些重复,并向上移动,但我希望他们留在原来的单元格。 我基本上想要说“如果单元格存在于第1列和第2列,请清除第2列中的单元格”。 我不确定这是否可能。 这是我一直在使用的代码。 任何帮助将不胜感激! Sub CopyPasteHistorical() CopyPasteHistorical Macro Sheets("Sheet1").Select Columns("I:I").Select Selection.copy Sheets("Sheet2").Select Columns("D:D").Select ActiveSheet.Paste 'remove duplicates Columns("C:D").Select Dim duplicates As Range Set duplicates = Selection Selection.RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes End Sub
我在这里find了这个脚本,并修改了一些以适应我的需要。 但是,我不知道如何插入一个单元而不是整个行 Sub BlankLine() Dim Col As Variant Dim Col2 As Variant Dim BlankRows As Long Dim LastRow As Long Dim R As Long Dim StartRow As Long Col = "A" Col2 = "B" StartRow = 2 BlankRows = 1 LastRow = Cells(Rows.Count, Col).End(xlUp).Row Application.ScreenUpdating = False With ActiveSheet For R = LastRow To StartRow […]
我是创buildmacros的新手。 只为其中的5个具体问题创build。 有人可以帮我修改下面的macros吗? 我在互联网上发现它,我把它修改成我的喜好。 但是还有改进的空间。 反正它除了下面的工作完美。 文件夹中会有很多文件。 每个文件都包含一个名为“PIVOT”的选项卡,其格式相同,但数据量不同。 在“PIVOT”选项卡中的范围是从A到AM列。 他们从第15行开始。我只需要那些没有写入“closures”指示的行(状态列在AJ列中)。 我希望所有这些行都被复制到一个主文件下。 行数差异很大 – 如0到200,具体取决于未清项目。 其次,有人能告诉我一本书,可以购买,以便我可以发展我的知识吗? 感谢您的帮助! 蒂博尔 Sub Import_to_Master()Dim sFolder As String Dim sFile As String Dim wbD As Workbook,wbS As Workbook Application.ScreenUpdating = False Set wbS = ThisWorkbook sFolder = wbS.Path & "\" sFile = Dir(sFolder) Do While sFile <> "" If sFile <> […]
我不知道这个代码有什么问题。 它在Rng.select中显示错误。 当我在另一张纸上testing它的工作。 任何帮助? Sub copyex() Dim Lastro As Integer Dim oSht As Worksheet Dim Rng As Range 'make exact copy at S6 for comparasion Set oSht = Workbooks("Main.xlsm").Sheets("Work") Lastro = oSht.Cells(Rows.Count, 2).End(xlUp).Row With oSht Set Rng = oSht.Range("B6:G" & Lastro) Rng.Select Selection.Copy Range("S6").Select ActiveSheet.Paste End With
我是新来的Excelmacros,所以不知道如何编码。 基本上,在运行时,我想search一定范围的数字范围(如1700-1799,2900-2999)的单元格范围(在这种情况下,A2-A25),如果find,复制/sorting他们在电子表格。 例如,工作表(运行后)将如下所示: 1712 2983 2931 1723 1745 1712 1723 1745 2983 2931 像这样的macros是可能的吗?
我正在处理一个macros,它可以帮助我在某些条件下将数据从一个工作表复制到另一个工作表中。 问题是,有些行包含公式,而我需要的值。
在这里有2张,Sheet1和Sheet2。 Sheet1包含10列和5行,数据包括空白。 要求是从工作表1中复制数据并放入另一个工作表Sheet 2中,其中只填充非空白的单元格。 我得到运行时错误1004 – 应用程序或对象定义的错误。 代码片段是: – Set wsht1 = ThisWorkbook.Worksheets("Sheet1") Set wsht2 = Sheets("Sheet2") finalrow = wsht1.Cells(wsht1.Rows.Count, 1).End(xlUp).Row For i = 1 To finalrow If wsht1.Cells(i, 1).Value <> " " Then Range(Cells(i, 2), Cells(i, 2)).Copy Worksheets("Sheet2").Select wsht2.Range(Cells(1, i)).PasteSpecial Paste:=xlPasteFormats End If Next i 你能帮我整理一下吗?
EXCEL SAMPLE SHEET ABCD 1 | 53 | | | 2 | | 5 | | 3 | 12 | | | 4 | | | 6 | 5 | | | | 1 6 | | 4 | | 7 | | 55 我希望能够在COL AD的所有值的最后有一列(实际上除了更多的列/行外) 基本上,每行都有一个相应的值分布在列上。 我想复制到第一行的所有剩余的值的空白空间。 由于每行只有一个值,所以在任何其他列中都是空白的。 最终产品应该是[53,5,12,6,1,4,55] 我到目前为止所做的是select空白单元格,并将其设置为等于下一个列。 但如果我这样做,我必须手动做约+50列。 我想知道是否有更有效的方法来解决这个问题。 谢谢 //编辑 […]