Doan Phan Thanh
Thành viên mới
- Tham gia
- 30/5/21
- Bài viết
- 7
- Được thích
- 0
Em đang trong quá trình học VBA nhưng đang gặp khó khăn. Mong mọi người giúp đỡ em với ạ. Em cảm ơn ạ.
Lần chỉnh sửa cuối:
Như vậy là bạn hướng dẫn cho mọi người cách thực hiện rồi, còn gì để giúp đỡ đâu bạn nhỉ.Em đang trong quá trình học VBA nhưng đang gặp khó khăn trong bài này ạ. Mong mọi người giúp đỡ em với ạ. Em cảm ơn ạ. Mô tả: - Khi người dùng bấm nút "Xử lý Số Liệu" thì các bạn cần xử lý để đưa được toàn bộ dữ liệu ở bảng số liệu bên trái --> đưa vào bảng kết quả bắt đầu từ cột "J1" bên phải. - Giá trị ở cột đầu tiên bên trái sẽ được đưa vào ô J1 đầu tiên và giá trị thứ 2 đưa vào ô K2 (đưa theo hàng ngang), lấy giá trị từ trên xuống dưới theo bảng bên trái). - Giá trị ở các cột trong kết quả chỉ chứa các giá trị ko chứa khoảng trống như ở bảng dữ liệu.
Dùng: lastrow, if,...
mình không biết viết code bạn có thể giúp mình được khôngNhư vậy là bạn hướng dẫn cho mọi người cách thực hiện rồi, còn gì để giúp đỡ đâu bạn nhỉ.
Bạn đang học nên bây giờ hãy tập viết trước đi đã, trong quá trình chạy thử, nếu vướng chỗ nào thì đưa lên hỏi chỗ đấy.mình không biết viết code bạn có thể giúp mình được không
Trong cột đầu tiên của bảng dữ liệu có hơn 15 giá trị; & iêu cầu đưa hết vô [J1] (?)- Giá trị ở cột đầu tiên bên trái sẽ được đưa vào ô J1 đầu tiên
Trị đầu tiên đưa vô [J1] & trị kế tiếp đưa vô [K2] mà lại chú thích là đưa vô hàng ngang, đến chịu (!). . J1 đầu tiên và giá trị thứ 2 đưa vào ô K2 (đưa theo hàng ngang),. . .
Em còn chưa đọc hết, chỉ thấy nói thắc mắc học tập về VBA nhưng lại chưa viết một dòng code nào cả nên không hiểu thắc mắc cái gì anh ạ.Chủ bài đăng này viết chưa chính xác ở chỗ:
(1)
Trong cột đầu tiên của bảng dữ liệu có hơn 15 giá trị; & iêu cầu đưa hết vô [J1] (?)
(2)
Trị đầu tiên đưa vô [J1] & trị kế tiếp đưa vô [K2] mà lại chú thích là đưa vô hàng ngang, đến chịu (!)
(3)? Vậy giá trị thứ 3 của cột đầu đưa vô [L3] (?) & như vậy giống như đưa vô theo đường chéo mà, đâu phải đưa ngang.
[Phải có 3 điểm mới biết đường mà đi chứ bạn.]
úi em viết nhầm ấy ạ em đã sửa lại r ạChủ bài đăng này viết chưa chính xác ở chỗ:
(1)
Trong cột đầu tiên của bảng dữ liệu có hơn 15 giá trị; & iêu cầu đưa hết vô [J1] (?)
(2)
Trị đầu tiên đưa vô [J1] & trị kế tiếp đưa vô [K2] mà lại chú thích là đưa vô hàng ngang, đến chịu (!)
(3)? Vậy giá trị thứ 3 của cột đầu đưa vô [L3] (?) & như vậy giống như đưa vô theo đường chéo mà, đâu phải đưa ngang.
[Phải có 3 điểm mới biết đường mà đi chứ bạn.]
dạ em hiểu được trong bài cần phải thực hiện những dì, mà em lại không pik viết bắt đầu từ đâu ạ. Mong anh có thể giúp đỡ ạ.Em còn chưa đọc hết, chỉ thấy nói thắc mắc học tập về VBA nhưng lại chưa viết một dòng code nào cả nên không hiểu thắc mắc cái gì anh ạ.
Sub ChuyenBangDuLieu()
Dim Rws As Long, J As Long, W As Integer
Dim Rng As Range, Cls As Range, Rg0 As Range
Set Rng = Range([B2], [D24])
Set Rg0 = [j1]: [I12].CurrentRegion.Offset(, 1).ClearContents
For J = 1 To 3
W = 0
For Each Cls In Rng(J).Resize(Rng.Rows.Count)
If Cls.Value <> Space(0) Then
Rg0.Offset(J - 1, W).Value = Cls.Value
W = W + 1
End If
Next Cls
Next J
End Sub
Đầu tiên bạn phải ôn lại kiến thức về Tiếng Việt trước đã.úi em viết nhầm ấy ạ em đã sửa lại r ạ
Bài đã được tự động gộp:
dạ em hiểu được trong bài cần phải thực hiện những dì, mà em lại không pik viết bắt đầu từ đâu ạ. Mong anh có thể giúp đỡ ạ.
anh ơi cho em hỏi nếu em sử dụng lastrow để tìm được dữ liệu cuối cùng thì phải làm như nào ạBạn thử với thứ ni, mong trời phù hộ cho chúng ta:
PHP:Sub ChuyenBangDuLieu() Dim Rws As Long, J As Long, W As Integer Dim Rng As Range, Cls As Range, Rg0 As Range Set Rng = Range([B2], [D24]) Set Rg0 = [j1]: [I12].CurrentRegion.Offset(, 1).ClearContents For J = 1 To 3 W = 0 For Each Cls In Rng(J).Resize(Rng.Rows.Count) If Cls.Value <> Space(0) Then Rg0.Offset(J - 1, W).Value = Cls.Value W = W + 1 End If Next Cls Next J End Sub
anh gắt quá ạ. em chỉ muốn bổ túc kiến thức thôi ạ.Đầu tiên bạn phải ôn lại kiến thức về Tiếng Việt trước đã.
Muốn tìm dòng cuối của 1 cột hay 1 vùng dữ liệu đều có thể xài phương thức FIND("*"); Có 1 bài tổng quan về phương thức này của DĐ mà bạn nên đọcanh ơi cho em hỏi nếu em sử dụng lastrow để tìm được dữ liệu cuối cùng thì phải làm như nào ạ
Bạn không muốn kiến thức của bạn tốt hơn thì tùy bạn thôi.anh ơi cho em hỏi nếu em sử dụng lastrow để tìm được dữ liệu cuối cùng thì phải làm như nào ạ
Bài đã được tự động gộp:
em chỉ muốn bổ túc kiến thức thôi ạ.
Nếu em muốn để dữ liệu trên cùng 1 hàng (tức là ở cột thứ 2 của bảng dữ liệu sẽ được viết tiếp sau ô cuối cùng của cột đầu tiên) mình có cần phải tạo thêm một vòng lặp mới không ạMuốn tìm dòng cuối của 1 cột hay 1 vùng dữ liệu đều có thể xài phương thức FIND("*"); Có 1 bài tổng quan về phương thức này của DĐ mà bạn nên đọc
lại bị lỗi bắt đầu từ K1 ý anh/(hông cần; mà:
a./ Vô hiệu hóa dòng lệnh mình vừa gán số 4 đi;
b./ Sửa dòng lệnh mang số 7 thành
Mã:Rg0.Offset(, 1 + W).Value = Cls.Value '** '
Có thể định nghĩa "kiến thức" của người ta khác bạn.Bạn không muốn kiến thức của bạn tốt hơn thì tùy bạn thôi.
Kiên nhẫn cũng cói giới hạn hởLỗi đó bạn tự sửa đi & tạm biệt bạn!
(1) /(HA, Kha, kha,. . . . .(2) Học kỹ năng này thì mất gì?
(1) Kiên nhẫn cũng cói giới hạn hở
dạ em cảm ơn mọi người đã góp ý(1) /(HA, Kha, kha,. . . . .
(2) /(ỹ năng này trên Internet không truyền thụ bạn ơi, 1 cách đến nơi đến chốn.
Mất gì? Một điều đơn giản mà ông này cũng không hiểu thì bó tay.- Đã đi hỏi bài thì tại sao không chịu khó học hỏi cách nói chuyện dễ hiểu, dễ được chấp nhận bởi mọi tầng lớp?
Học kỹ năng này thì mất gì?