EXCEL表格sheet1中录入内容,可自动保存到sheet2相应的位置

2025-03-06 23:06:39
推荐回答(3个)
回答1:

在同一个excel中,有表格sheet1,sheet2两个表:

  1. 单击sheet1的单元格A1,输入等于号

  2. 切换到sheet2表,单击sheet2的单元格B1(也就是你想引用的数据),再按Enter键

  3. sheet1的单元格 A1显示的就是shee2表的B1的值了。

  4. 如下图所示:

回答2:

Private Sub 录入後请按保存_Click()
    Dim InputArea As String
    Dim OutputArea As String
    Dim InputSheet As String
    Dim OutputSheet As String
    
    InputSheet = "Sheet1"
    OutputSheet = "Sheet2"
    InputArea = "A1:D1"   '输入区域为A1:D1
    OutputColumn = 1
    
    '找到B列中没有值的位置
    With Worksheets(OutputSheet)
        LastRow = .Cells(65535, OutputColumn).End(xlUp).Row
'        If .Cells(LastRow, OutputColumn).Value = "" Then
'            .Cells(LastRow, OutputColumn).Value = Worksheets(InputSheet).Range(InputArea).Value
'        Else
'            .Cells(LastRow + 1, OutputColumn).Value = Worksheets(InputSheet).Range(InputArea).Value
'        End If
        If .Cells(LastRow, OutputColumn).Value <> "" Then
            LastRow = LastRow + 1
        End If
        
        Worksheets(InputSheet).Range(InputArea).Copy Destination:=Worksheets(OutputSheet).Cells(LastRow, OutputColumn)     '将输入区域复制到Sheet2的空行
         
    End With
End Sub

回答3:

好像不需要那么复杂,以下是我写的一个宏,可以实现你的要求。你可以试一下。

Sub savesheet1()
Application.ScreenUpdating = False '//关闭屏幕刷新
Dim i As Integer
i = 1
WhileSheets("sheet2").Range("A" & i) &Sheets("sheet2").Range("B" & i) &Sheets("sheet2").Range("C" & i) &Sheets("sheet2").Range("D" & i) <> ""
i= i + 1
Wend
Sheets("sheet1").Range("A1:D1").Copy
Sheets("sheet2").Range("A"& i).PasteSpecial
Application.ScreenUpdating = True '//关闭屏幕刷新
End Sub