Dim i As Long
i = Range("A1")
Dim i As String
i = Range("A1")
Các bạn giúp mình Giải thích giống và khác nhau 2 đoạn code trên , và i là gì và i là gì
Long thuộc kiểu dữ liệu (Data Type)
dạng số
String thuộc kiểu dữ liệu
dạng chuỗi.
Với dữ liệu tại ô A1, có thể nó chứa số, cũng có thể nó chứa chuỗi, tuy nhiên, khi khai báo biến dạng
String, thì ô đó dù chứa số hay chứa chuỗi nó đều "ép" về dạng chuỗi; còn nếu khai báo biến dạng
Long, nếu ô đó chứa chuỗi thì sẽ bị báo lỗi.
Tùy theo dữ liệu của mình như thế nào mà khai báo cho đúng kiểu dữ liệu mình mong muốn nhằm tránh những lỗi không đáng có.
Chắc chắn bạn khai báo biến như trên ở 2 thủ tục, tuy nhiên, một lời khuyên là bạn nên khai báo biến cho tường minh, tức khai làm sao đó cho biến được rõ ràng, dễ hình dung, tránh nhầm lẫn, đừng nên khai báo cả 2 loại biến đều có một tên i.