Hỏi Code viết cách tính tổng thông thường

langtusau9x

Thành viên chính thức
Tham gia ngày
28 Tháng một 2013
Bài viết
78
Thích
37
Điểm
370
#1
Xin chào mọi người.
em có một bảng tính với các dữ liệu như sau:
tại sheet1, ô A1 có giá trị 100, ô A2 có giá trị 200
Làm thế nào để lấy được giá trị ở 2 ô trên và dùng code VBA viết được vào ô B1 như cách mình nhập phép tính thông thường là =100+200
100 và 200 được lấy từ giá trị ở ô A1 và ô A2. Em biết nó hơi lòng vòng tam quốc, nhưng em có lí do riêng phải làm như vậy nên mong mọi người thông cảm.
Em xin cảm ơn!
 

File đính kèm

snow25

Thành viên tích cực
Tham gia ngày
24 Tháng bảy 2018
Bài viết
1,351
Thích
1,030
Điểm
210
#2
Xin chào mọi người.
em có một bảng tính với các dữ liệu như sau:
tại sheet1, ô A1 có giá trị 100, ô A2 có giá trị 200
Làm thế nào để lấy được giá trị ở 2 ô trên và dùng code VBA viết được vào ô B1 như cách mình nhập phép tính thông thường là =100+200
100 và 200 được lấy từ giá trị ở ô A1 và ô A2. Em biết nó hơi lòng vòng tam quốc, nhưng em có lí do riêng phải làm như vậy nên mong mọi người thông cảm.
Em xin cảm ơn!
Bạn xem code.
Mã:
Sub tinhtong()
Cells(1, 2).Value = Cells(1, 1).Value + Cells(2, 1).Value
End Sub
 

HieuCD

Thành viên gạo cội
Tham gia ngày
14 Tháng chín 2010
Bài viết
5,230
Thích
8,570
Điểm
560
#3
Xin chào mọi người.
em có một bảng tính với các dữ liệu như sau:
tại sheet1, ô A1 có giá trị 100, ô A2 có giá trị 200
Làm thế nào để lấy được giá trị ở 2 ô trên và dùng code VBA viết được vào ô B1 như cách mình nhập phép tính thông thường là =100+200
100 và 200 được lấy từ giá trị ở ô A1 và ô A2. Em biết nó hơi lòng vòng tam quốc, nhưng em có lí do riêng phải làm như vậy nên mong mọi người thông cảm.
Em xin cảm ơn!
Vụ nầy phải dùng Sub
Nhấn tổ hợp phím: Ctrl + Shift + Z
kết quả lưu ở ô hiện hành
Mã:
Sub CongGiaTri()
  'Nhan to hop phim chay Code: Ctrl + Shift + Z
  Dim Res As String, sRng As Range, Rng As Range
  Dim Msg, Style, Response
  On Error Resume Next
 
Trolai:
  Set sRng = Application.InputBox(prompt:="Select a cell", Type:=8)
  If Err.Number > 0 Then
    MsgBox ("Phai chon vùng cong")
    Err.Clear
    GoTo Trolai
  End If
  For Each Rng In sRng
    k = k + 1
    If k = 1 Then Res = "=" & Rng.Value Else Res = Res & "+" & Rng.Value
  Next
 
  Msg = "Ban co muon chon them vung khac ?"
  Style = vbYesNo + vbCritical + vbDefaultButton2
  Response = MsgBox(Msg, Style)
  If Response = vbYes Then GoTo Trolai
 
  ActiveCell.Formula = Res
End Sub
 

File đính kèm

langtusau9x

Thành viên chính thức
Tham gia ngày
28 Tháng một 2013
Bài viết
78
Thích
37
Điểm
370
#4
Bạn xem code.
Mã:
Sub tinhtong()
Cells(1, 2).Value = Cells(1, 1).Value + Cells(2, 1).Value
End Sub
cảm ơn bạn, nhưng bạn chưa hiểu đúng ý của mình nên kết quả chưa giống mong muốn :D
Bài đã được tự động gộp:

Vụ nầy phải dùng Sub
Nhấn tổ hợp phím: Ctrl + Shift + Z
kết quả lưu ở ô hiện hành
Mã:
Sub CongGiaTri()
  'Nhan to hop phim chay Code: Ctrl + Shift + Z
  Dim Res As String, sRng As Range, Rng As Range
  Dim Msg, Style, Response
  On Error Resume Next

Trolai:
  Set sRng = Application.InputBox(prompt:="Select a cell", Type:=8)
  If Err.Number > 0 Then
    MsgBox ("Phai chon vùng cong")
    Err.Clear
    GoTo Trolai
  End If
  For Each Rng In sRng
    k = k + 1
    If k = 1 Then Res = "=" & Rng.Value Else Res = Res & "+" & Rng.Value
  Next

  Msg = "Ban co muon chon them vung khac ?"
  Style = vbYesNo + vbCritical + vbDefaultButton2
  Response = MsgBox(Msg, Style)
  If Response = vbYes Then GoTo Trolai

  ActiveCell.Formula = Res
End Sub
sf hiểu đúng ý rồi ạ. nhưng mà cái vụ nè có thể đơn giản hơn ko ạ(bỏ cái input box đi ấy ạ, vì dữ liệu ban đầu có 2 ô và luôn cố định ạ.
như sf là tổng quát quá rồi hehe.cảm ơn sf nhiều
 
Lần chỉnh sửa cuối:

VetMini

Thành viên gạo cội
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
6,131
Thích
7,055
Điểm
560
#8
@HieuCD:
Được lên làm bố ghẻ rồi, sướng nhỉ !

Chú:
sf (danh) = step father
sf (tĩnh) = sexually frustrated (k** tồn tại não)
 
Top