How to update data one sheet to Another Sheet through VBA in Microsoft Excel

In this article we are going to learn how to update the data from one sheet to another sheet through VBA in Microsoft Excel.

 
Let’s take an example to understand how and where we can use this Macro in our data to reduce our daily work.
 
We want to write this code for those employees who are working in a call center. When clients call them they takes basic details like User_Name, User_ID, Phone_Number, and Problem_ID.
 
Now we want to write the macro for when a call comes they will note down all the above mentioned details into an excel sheet, and when they click on update that data should be update in another sheet.
 
image 1
 
To update the data from one sheet to another sheet follow below given steps:-
• First we will insert command button in the worksheet.
• Go to Developer tab and then insert Command button from Activexcontrol.
• Assign below mentioned macro:-
 

Private Sub CommandButton1_Click()
Dim User_Name As String, User_ID As Integer, Phone_Number As Double, Problem_ID As Integer
Worksheets("Sheet1").Select
User_Name = Range("B2")
User_ID = Range("B3")
Phone_Number = Range("B4")
Problem_ID = Range("B5")
Worksheets("Sheet2").Select
Worksheets("Sheet2").Range("A1").Select
If Worksheets("Sheet2").Range("A1").Offset(1, 0) <> "" Then
Worksheets("Sheet2").Range("A1").End(xlDown).Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = User_Name
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = User_ID
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Phone_Number
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Problem_ID
Worksheets("Sheet1").Select
Worksheets("Sheet1").Range("B2").Select
End Sub

 

Code Explanation:- First we had defined all the variables. Then we had defined the range for every variables, and then described the range for all the variables. And we had defined that where and in which range data will get update after clicking on Update button.

 

image 2
 
• To run the code press key F5 on the keyboard.
• When you will enter the data and will click on update button then data will get update in another sheet and we can enter new data in the sheet.
 
image 3
 
image 4
 
This is the way we can update the data from one sheet to another sheet through VBA in Microsoft excel.

 

image 48
 
If you liked our blogs, share it with your friends on Facebook. And also you can follow us on Twitter and Facebook
We would love to hear from you, do let us know how we can improve, complement or innovate our work and make it better for you. Write us at info@exceltip.com

 

Users are saying about us...

  1. I downloaded the excel sheet, but its only adding the data its not updating the required record. Can you please tell me why...

    • Hi! The data you add in sheet1, its getting updated in sheet2 upon clicking the button. is this what is not happening in your file? if so check the sheet names. The sheets should be names as sheet1 and sheet2. or edit the code with your sheet name. Let me know if this didn't help.

      • What if I need to add a multiple data from sheet 1 to sheet 2, what is the code pls?
        I meat mean, my data format is by column not by row

    • If they are of same type then no. Use arrays. For example, if you have 20 variables of string type then you can define a array like this.
      Dim myVars(20) as String

      if you don't know how many variales you gonna need or not sure of its type, then use collections. Collections are always created as a variant.

      Dim myVars as Collection

  2. Hello, Thank you for this macro. I also tried pressing button from sheet1 but 3rd time data did not added. It adds up to 2nd data. Please suggest. thank you

    Sub Button1_Click()

    Dim User_Name As String, User_ID As Integer, Phone_Number As Double, Problem_ID As Integer
    Worksheets("Sheet1").Select
    User_Name = Range("B2")
    User_ID = Range("B3")

    Worksheets("Sheet2").Select
    Worksheets("Sheet2").Range("A1").Select

    If Worksheets("Sheet2").Range("A1").Offset(1, 0) "" Then
    Worksheets("Sheet2").Range("A1").End(xlDown).Select
    End If
    ActiveCell.Offset(1, 0).Select
    ActiveCell.Value = User_Name
    ActiveCell.Offset(0, 1).Select
    ActiveCell.Value = User_ID

    Worksheets("Sheet1").Select
    Worksheets("Sheet1").Range("B2").Select

    End Sub

    • Use this code:

      Private Sub CommandButton1_Click()
      Dim User_Name As String, User_ID As Integer, Phone_Number As Double, Problem_ID As Integer
      Worksheets("Sheet1").Select
      User_Name = Range("B2")
      User_ID = Range("B3")
      Phone_Number = Range("B4")
      Problem_ID = Range("B5")
      Worksheets("Sheet2").Select
      Worksheets("Sheet2").Range("A1").Select
      If Worksheets("Sheet2").Range("A1").Offset(1, 0) <> "" Then
      Worksheets("Sheet2").Range("A1").End(xlDown).Select
      End If
      ActiveCell.Offset(1, 0).Select
      ActiveCell.Value = User_Name
      ActiveCell.Offset(0, 1).Select
      ActiveCell.Value = User_ID
      ActiveCell.Offset(0, 1).Select
      ActiveCell.Value = Phone_Number
      ActiveCell.Offset(0, 1).Select
      ActiveCell.Value = Problem_ID
      Worksheets("Sheet1").Select
      Worksheets("Sheet1").Range("B2").Select
      End Sub

  3. How will the code be amended if the data isn't in the same column? As per your example, all the data entered is in Column B; line by line. By example, in "D1" you type / select the Department. And in "E1" today's date gets automatically pulled in. What needs to be added / changed in the code, to save e.g. the data in "D1" and "E1" and all the data in Column B to "Sheet2." It will truly be appreciated if you could assist, Thanks a million.

  4. Trupti Sonawane

    Thank You!

    I want to update 3 different file at one time which contain same data (Like PO No, PR no, And Invoice no.), is it possible by VBA, Request please help with coding..

    Thank You !

  5. Nitin Chitnis

    Dear Sir,
    Its look like just Data entry.
    I want it should be updating regularly on date basis. For example-On 1st May20.I enter some data.say about upto row no 10.On 2nd May 20.I again enter some data.how I can transfer this type of data on day to day basis.?THANKS.
    .

Leave a Reply

Your email address will not be published. Required fields are marked *

Terms and Conditions of use

The applications/code on this site are distributed as is and without warranties or liability. In no event shall the owner of the copyrights, or the authors of the applications/code be liable for any loss of profit, any problems or any damage resulting from the use or evaluation of the applications/code.

Visit Us On TwitterVisit Us On FacebookVisit Us On Youtube