Tag: 复制

Excel VBA:制作一个文件夹中所有文件的列表,包括超链接和从它find的每个Excel文件中复制数据

我的第一篇文章,所以要温柔:) 这是情况。 我正在做一个大型的软件项目作为一个软件testing工具。 目前,我们已经开始对应用程序进行大幅度的改革,这些应用程序在很多带有testing用例和状态报告的Excel文件(未来几个月超过200个文件)中都会产生结果。 为了跟踪所有我们需要的Excelsheet的进度,可以列出所有文件,包括超链接,并在每个文件存在时读取状态信息。 我已经find了大量的教程,使一个文件夹中的所有文件的列表,并给他们超链接。 目前我使用的是这个网站的代码: http : //www.vbaexpress.com/kb/getarticle.php?kb_id=232 所以现在我可以制作一个我可以从popup屏幕中select的文件夹中的所有文件的列表。 Option Compare Text Option Explicit Function Excludes(Ext As String) As Boolean 'Function purpose: To exclude listed file extensions from hyperlink listing Dim X, NumPos As Long 'Enter/adjust file extensions to EXCLUDE from listing here: X = Array("exe", "bat", "dll", "zip", "txt", "xlsm", "html", "htm", […]

从数据中清除当前文件的副本

有一个工作stream程可以填写表格并在完成后邮寄。 邮件发送的方法将发送当前工作表作为附件,但它应该直接创build工作表的新副本,从中删除所有的数据。 我可以清除当前表格,但这是错误的,因为我需要清除新表格。 我已阅读有关在其他工作簿上运行macros,但它无法运行macros。 什么是最好的解决scheme? Sub SendData_Click() If MsgBox("Sure to send?", vbYesNo, "Confirm") = vbYes Then ' Save current sheet ActiveWorkbook.Save ' Send the current file Mail_ActiveSheet ' Mark this sheet as sent Worksheets("Data").Range("B6").Value = True ' Create a new emptied version Create_New_Copy MsgBox "Your data is sent" End If End Sub Sub Create_New_Copy() Dim […]

使用第一个列作为条件删除两列中的重复项

我有一个与Excel 2007的问题,我真的不知道该怎么做。 我有一个两列大约200k +数据的文件。 在列A(时间)中,一些值重复,所以在列B(amp)中。 我想一次删除两列中的重复项,使用列A中的值作为标准。 以下是它的外观: time amp 1 27 14 27 129 40 129 41 129 42 130 43 130 42 我想它是这样的: time amp 1 27 14 27 129 40 130 43 在Excel中的“删除重复”命令是好的,但只有一列。 在我的情况下,它不做这项工作,因为“删除重复”只有在两列中有相同的值时才起作用,例如 1 27 1 27 我宁愿避免macros,因为我不知道任何有关VBA,我不能使用它,但如果没有其他选项(我想这不是…)macros将没事。 我甚至不知道如何向Google提出解决scheme,因为我不知道怎么用几句话来形容这个问题。

程序正在检查错误工作表中的下一个可用行

我已经编写了一个代码,用于从一堆Excel工作簿(从专用txt文件中读取path)复制数据到主工作表。 我现在遇到的问题是,不是检查并粘贴MASTER工作簿中的下一个可用行,而是检查源工作簿中的下一个可用行,并粘贴主工作簿中的对应行号。 这是我的atm。 请看一看 Open PathFile For Input As #1 Do Until EOF(1) Line Input #1, SourceFile Set Source = Workbooks.Open(SourceFile) With Source.Sheets("Action Tracker") lastRow = .Range("F" & .Rows.Count).End(xlUp).Row For i = 10 To lastRow If Len(Trim(.Range("F" & i).Value)) <> 0 Then If CopyRange Is Nothing Then Set CopyRange = .Rows(i) Else Set CopyRange = […]

复制范围内排除一个范围

我有一个问题; 我想复制范围之间的A1:P40,但我想ex7ce:F40。 那可能吗? Range("A1:P40").CopyPicture 有没有办法从整体上排除A7:F40?

将来自多个工作表的列中的值复制到一个

问题是以下几点:我有一个包含多个工作表的Excel文件,我需要将每个工作表中的G列复制到一个新的工作表中(列应该彼此相邻或者列与数据之间有空列) 。 我也想问一下,是否可以把每个工作表的名称放在相应的列上面。 直到现在,我用这个代码: Sub Copy_G_Columns() Dim ws As Worksheet, i As Long Application.ScreenUpdating = False On Error Resume Next Set ws = Sheets("Gee Columns") If Err.Number <> 0 Then ActiveWorkbook.Sheets.Add After:=ActiveWorkbook.Sheets(Sheets.Count): ActiveSheet.Name = "Gee Columns" On Error GoTo 0 Else Sheets("Gee Columns").Select End If For i = 1 To ActiveWorkbook.Sheets.Count – 1 With Sheets(i) […]

VBA将循环内的过滤表复制到新工作表中

我有一个桌子,有很多列。 我想一个接一个地过滤表格中的某个特定列中出现的几个值。 一旦表格被过滤(对于一个值),我想复制结果到一个新的表格,并继续与第二个值。 (其实我想将它复制到一个新的工作簿并保存,但这是下一步。) 这是我的代码: 'Start Loop Public Sub LP() Dim years As Variant Dim number As Variant 'Array for loop years = Array("2013", "20131", "20132") For Each number In years ' filter definition (filter by number) Dim i As Integer, rngData As Range Set rngData = Range("A1").CurrentRegion i = Application.WorksheetFunction.Match("ColumnXY", Range("A1:BM1"), 0) rngData.AutoFilter field:=i, […]

在相关工作表中复制值

我想从一个工作表复制一个范围的值到另一个工作表的指定范围,而值总是来自以前的工作表(在工作表行),即使在复制工作表之后。 我正在使用以下从一个工作表复制到另一个,这似乎工作的值: Sub Copy_ultimo_stock() 'copy values between two periods Worksheets("Period2").Range("test3").Value = Worksheets("Period1").Range("test2").Value End Sub 我必须给单元格的名称范围(test2和test3),因为如果使用像“R10:S11”这样的实际单元格范围,macros将不起作用。 在未来,我只想使用单元格范围作为“R10:S11”。 我的实际问题是以下。 如果我将来复制我的工作表(对于未来的时间段),我希望我总是复制上一个工作表的单元格范围。 现在我已经做到了,如果我复制工作表period2,并且可能是period6,它仍然会复制period1工作表中的值。 但是,我希望当前工作表“n”将复制工作表“n-1”中范围的值。 我发现了一个有点类似的方法可以帮助,但我不能将两个macros组合成一个。 这个方法在这里: Function PrevSheet(rCell As Range) Application.Volatile Dim i As Integer i = rCell.Cells(1).Parent.Index PrevSheet = Sheets(i – 1).Range(rCell.Address) End Function

dynamicmnacro比较两个表,并添加行,如果没有在一个表上find或更新信息,如果find行,但一些信息不同

我被困在写这个Excelmacros,可以好心的使用一些帮助。 我正在尝试创build一个dynamicmacros,它将比较两个不同工作表中的两个表,如果不同,则会更新行的信息,如果不存在,则将新行复制到新表中。 两个表都包含相同的信息列,并且每个数据行都有唯一的产品代码。 一旦按下button,如果在新表上找不到表1中行的产品代码,那么该行将被复制。 如果在新表中find产品代码,但列中的其他信息不同,则将在新表上更新其他信息。 如果find产品代码并且其他信息相同,则不会复制该行。 我需要在table1中尽可能多的行。 注意:我认为VLOOKUP可能是成功编写这个macros的路线…下面是我迄今为止的尝试得到这个工作。 Sub Copy_Attempt() Application.ScreenUpdating = False Dim s1 As Worksheet, s2 As Worksheet Set s1 = Sheets("Raw Data") Set s2 = Sheets("BAS Linkage Master") Dim i As Integer Dim j As Integer Dim Proj_ID As String Dim Lookup_Range As Range Dim Linkage_Lookup_Range As Range Dim Raw_Percent_Complete As String […]

VBA:根据当前工作簿的单元格值复制另一个工作簿中的数据

目前,我有一个工作簿在同一个文件夹中循环工作簿,将特定单元格的数据复制回主工作簿。 如果我想更改从代码复制单元格的单元格,我将不得不在代码中更改此值。 但是,我也有同事需要使用这张表格来收集其他工作簿的数据。 – 所以我需要使这个使用友好。 我想要做的是让代码读取精简版中的单元格值,并将此单元格值用作从其复制的单元格。 例: 如果我在工作簿单元格A1中键入“B3”并运行macros,macros将把原始表格B3中的数据复制到工作簿的第一个单元格中。 有没有人有任何想法如何做到这一点? 或者类似的东西: .Cells(1).Value = originsheet.Range(Range("CellValue from destinationsheet A1").Value).Value 这是我使用的代码: Sub Consolidate() Dim wkbkorigin As Workbook Dim originsheet As Worksheet Dim destsheet As Worksheet Dim ResultRow As Long Dim Fname As String Dim RngDest As Range Set destsheet = ThisWorkbook.Worksheets("Sheet1") Set RngDest = destsheet.Cells(Rows.Count, 1).End(xlUp) _ .Offset(1, 0).EntireRow […]