Cho hỏi về giá trị Cells(j,1)

Liên hệ QC

nhatrang1986

Thành viên mới
Tham gia
29/8/17
Bài viết
15
Được thích
0
Giới tính
Nam
Với = sheets("DATA").Cells(j,1) tức là giá trị Cột A, dòng j của sheets("DATA")
1. Vậy nếu em thay bằng = sheets("DATA").Cells(j,"A")
2. Hoặc em thay bằng = sheets("DATA").Cells(j,"x") với x = sheets("MAIN").range("D1"), sau đó gõ A vào D1 của sheet("MAIN")

Cho em hỏi là khi em thưy như 1. hoặc 2.thì thì có giống nhau không ạ hay là chạy sẽ bị lỗi?
Xin cảm ơn ạ
 
Với = sheets("DATA").Cells(j,1) tức là giá trị Cột A, dòng j của sheets("DATA")
1. Vậy nếu em thay bằng = sheets("DATA").Cells(j,"A")
2. Hoặc em thay bằng = sheets("DATA").Cells(j,"x") với x = sheets("MAIN").range("D1"), sau đó gõ A vào D1 của sheet("MAIN")

Cho em hỏi là khi em thưy như 1. hoặc 2.thì thì có giống nhau không ạ hay là chạy sẽ bị lỗi?
Xin cảm ơn ạ
Theo mình biết thì Cells(dòng, cột) sử dụng chỉ số bạn ah, còn muốn A1, B1 gì đó thì dùng Range(
 
Upvote 0
2. Hoặc em thay bằng = sheets("DATA").Cells(j,"x") với x = sheets("MAIN").range("D1"), sau đó gõ A vào D1 của sheet("MAIN")

Cho em hỏi là khi em thưy như 1. hoặc 2.thì thì có giống nhau không ạ hay là chạy sẽ bị lỗi?
Xin cảm ơn ạ
Khi ký tự x đi lẻ loi thì nó là biến.
Khi ký tự x nằm giữa hai dấu nháy kép thì nó là một hằng.
Ví vậy, hai cái x xanh và đỏ ở trên không phải là một.
sheets("DATA").Cells(j,"x") tức là dòng j, cột X ; Vì "x" là một hằng cho nên VBA lấy luôn nó làm chỉ số cột cho Cells(dòng, cột)
sheets("DATA").Cells(j,x) tức là dòng j, cột là trị của x lúc đó; Vì x là một biến, nếu trước đó nó được định là x = sheets("MAIN").range("D1"), sau đó gõ A vào D1 của sheet("MAIN") thì sheets("DATA").Cells(j,x) à dòng j, cột A
 
Upvote 0
@minh83 như vậy = sheets("DATA").Cells(j,"A") sẽ báo sai code à bạn?
Bài đã được tự động gộp:

@Vietmini như vậy là = sheets("DATA").Cells(j,x) với x = sheets("MAIN").range("D1")
và sheets("DATA").Cells(j,1)
sẽ cho kết quả giống như nhau ạ??
 
Upvote 0
@minh83 như vậy = sheets("DATA").Cells(j,"A") sẽ báo sai code à bạn?
Bài đã được tự động gộp:

@Vietmini như vậy là = sheets("DATA").Cells(j,x) với x = sheets("MAIN").range("D1")
và sheets("DATA").Cells(j,1)
sẽ cho kết quả giống như nhau ạ??
Tùy thuộc vào giá trị mà ô D1 trong sheet MAIN mang giá trị gì nữa
 
Upvote 0
nếu vậy thì khúc đầu của code Dim.... ấy, em sẽ khai báo x là gì ạ? range, interge hay .....ạ.

Cảm ơn./.
Mục đích của bạn là x sẽ là số cột nên khai báo là integer, và khi gán giá trị x thì bạn viết x = val(range("xx").value)
 
Upvote 0
Tùy thuộc vào giá trị mà ô D1 trong sheet MAIN mang giá trị gì nữa
Mục đích của bạn là x sẽ là số cột nên khai báo là integer, và khi gán giá trị x thì bạn viết x = val(range("xx").value)
Thớt có nói rằng nó là A
...
= sheets("DATA").Cells(j,"x") với x = sheets("MAIN").range("D1"), sau đó gõ A vào D1 của sheet("MAIN")
...
 
Upvote 0
nếu vậy thì khúc đầu của code Dim.... ấy, em sẽ khai báo x là gì ạ? range, interge hay .....ạ.

Cảm ơn./.
Với Cells(k, x) thì x phải là số hoặc chuỗi. Làm gì có chuyện Range? Nếu bạn luôn nhập trên sheet chuỗi thì có thể khai báo x As String hoặc x As Variant. Nếu luôn nhập số thì x As Long (Integer) hoặc x As Variant. Nếu lúc nhập số lúc nhập chuỗi thì bắt buộc phải là x As Variant.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom