用宏代码在excel中实现:第17行第20列起的同一列中所有值复制到新的活页中
时间: 2023-03-27 13:04:01 浏览: 48
可以使用以下宏代码实现:
Sub CopyColumn()
Dim lastRow As Long
Dim i As Long
lastRow = ActiveSheet.Cells(Rows.Count, 20).End(xlUp).Row
For i = 17 To lastRow
Sheets("Sheet2").Cells(i - 16, 1).Value = Cells(i, 20).Value
Next i
End Sub
这段代码可以将第17行第20列起的同一列中所有值复制到名为“Sheet2”的新活页中。
相关问题
使用python代码完成:复制excel文档中的特定值25zero该列之后的所有值,并转制至新的活页中
您好,我可以回答这个问题。以下是使用 Python 代码完成复制 Excel 文档中的特定值 "25zero" 列之后的所有值,并转置至新的活页中的步骤:
1. 导入 pandas 库和 openpyxl 库:
```python
import pandas as pd
from openpyxl import Workbook
```
2. 读取 Excel 文档中的数据:
```python
df = pd.read_excel('your_excel_file.xlsx')
```
3. 选择特定值 "25zero" 列之后的所有值:
```python
new_df = df.loc[:, '25zero':]
```
4. 转置数据:
```python
new_df = new_df.T
```
5. 将数据写入新的 Excel 文档中:
```python
wb = Workbook()
ws = wb.active
for r in dataframe_to_rows(new_df, index=True, header=True):
ws.append(r)
wb.save('new_excel_file.xlsx')
```
希望这个回答能够帮到您!
在excel中用宏代码实现:当前活页中的T17至T48复制并转至到新的活页中,并且每隔12列执行一次相同的操作,直到没有数据
您好,可以使用以下宏代码实现您的需求:
Sub CopyAndPaste()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim lastCol As Integer
Dim lastRow As Integer
Dim ws As Worksheet
Dim newWs As Worksheet
Set ws = ActiveSheet
lastCol = ws.Cells(17, Columns.Count).End(xlToLeft).Column
For i = 1 To lastCol Step 12
Set newWs = Sheets.Add(After:=Sheets(Sheets.Count))
newWs.Name = "Copy " & i
For j = 17 To 48
lastRow = ws.Cells(j, Columns.Count).End(xlToLeft).Column
For k = i To i + 11
If k <= lastCol Then
ws.Range(ws.Cells(j, k), ws.Cells(j, k)).Copy
newWs.Cells(j, k - i + 1).PasteSpecial xlPasteValues
End If
Next k
Next j
Next i
Application.CutCopyMode = False
End Sub
希望能帮到您!