keke355992
Thành viên thường trực




- Tham gia
- 19/1/08
- Bài viết
- 310
- Được thích
- 20
- Nghề nghiệp
- KẾ TOÁN THUẾ, TƯ VẪN THUẾ
Làm biếng "chế" lại cái mới nên lấy code của bạn luôn: Bạn sửa câu lệnhChào các AC trong diễn đàn. Nhờ các AC xem giúm e file này, trong file e đã ghi rõ y/c. E cảm ơn ạ
Range(Cells(.Row, 2), Cells(.Row, 10).End(xlDown)).Select
Range(Cells(.Row, 2), Cells(.Row, 10).End(xlDown)[COLOR=#ff0000][B].Offset(-5)[/B][/COLOR]).Select
Bạn chép thử tý code này thử xem nhé :Chào các AC trong diễn đàn. Nhờ các AC xem giúm e file này, trong file e đã ghi rõ y/c. E cảm ơn ạ
Bạn chép thử tý code này thử xem nhé :
Sub thu()
Range("B65536").End(3).Resize(23, 9).Select
End Sub
Làm biếng "chế" lại cái mới nên lấy code của bạn luôn: Bạn sửa câu lệnh
thànhMã:Range(Cells(.Row, 2), Cells(.Row, 10).End(xlDown)).Select
Mã:Range(Cells(.Row, 2), Cells(.Row, 10).End(xlDown)[COLOR=#ff0000][B].Offset(-5)[/B][/COLOR]).Select
Nếu chọn 1 vùng thì xác định điểm đầu cần chọn rồi mở rộng bằng resize ra số dòng, số cột . Nếu biết một chút về VBA thì tự sửa thôi ...Code này hình như nhầm lẫn rồi?
Có thể trên thực tế thì cái dòng cuối cùng đó không biết là dòng nào, do đó cũng chưa biết được tổng số dòng cần chọn. Như vậy thì Resize trong trường hợp này là không ổn. Và tất nhiên nếu dòng cuối cùng mà không lớn hơn 5 thì cách dùng Offset như bài #2 cũng "tèo".Nếu chọn 1 vùng thì xác định điểm đầu cần chọn rồi mở rộng bằng resize ra số dòng, số cột . Nếu biết một chút về VBA thì tự sửa thôi ...
Vẫn bài toán này, nhờ A và các Ac khác xem giúp em 1 chút nữa ạ. E cảm ơn nhìu !!!Có thể trên thực tế thì cái dòng cuối cùng đó không biết là dòng nào, do đó cũng chưa biết được tổng số dòng cần chọn. Như vậy thì Resize trong trường hợp này là không ổn. Và tất nhiên nếu dòng cuối cùng mà không lớn hơn 5 thì cách dùng Offset như bài #2 cũng "tèo".
Trong file của bạn ấy có 2 câu thế này , mình xin trích dẫn :Có thể trên thực tế thì cái dòng cuối cùng đó không biết là dòng nào, do đó cũng chưa biết được tổng số dòng cần chọn. Như vậy thì Resize trong trường hợp này là không ổn. Và tất nhiên nếu dòng cuối cùng mà không lớn hơn 5 thì cách dùng Offset như bài #2 cũng "tèo".
E chào A. Cho phép e nói 1 chút. Hôm qa đúng là em có thử cách của A, sau đó thử cách của A NghiaPhuc. Theo đó, cách của A nghiaphuc đáp ứng đúng y/c của e mong muốn, e vội cảm ơn A ý. Có thể trong lúc đó, e đã quên k Reply lại cho A. Mong a thông cảm ạ. Có thể a sẽ hỏi là: Hôm nay chẳng nhẻ vẫn quên... E còn trẻ ng, mới tập tành VBA và còn rất nhiều điều muốn hỏi A và các thầy, Ac trong diễn đàn. E sẽ rút kinh nghiệm. Chúc A 1 ngày tốt lành !Trong file của bạn ấy có 2 câu thế này , mình xin trích dẫn :
- Khi em Click button, vùng chọn của em là : C4:J27
- E muốn khi ấn button thì chọn 1 vùng cách dòng dữ liệu cuối cùng 5 dòng, trong trường hợp này vùng chọn sẽ là C4:J22
Nên chẳng biết làm theo câu nào , nên làm tạm vậy, nếu chưa đúng thì la lên ...Nhưng chủ topic coi như không nhìn thấy... thì thôi . Nếu nói về chọn vùng mà còn chưa biết thì đừng nói đến VBA nữa . Chủ đề này mình không tham gia nữa ...
Mã:Sub GPE() Dim X, Y X = Application.Match(" -", Range("B2:B26"), 0) Y = Application.CountIf(Range("B2:B26"), " -") Range("B" & X + 2 & ":B" & X + Y).Select End Sub
Hàng thứ i thì là cột thứ mấy? Hay chỉ là hàng không thôi? Nếu chỉ là chọn hàng không thôi thì bạn cứ cho luôn vào : Rows(i) . Nếu chọn vùng kiểu như Range("A5:B8") mà số 8 là i thì điền Range("A5:B" & i)cho em hỏi :muốn chọn vùng ( cụ thể là hàng) mà trong đó chứa biến i thì chọn như thế nào? ví dụ như sau
Sub vidu()
Dim i, j As Integer
j = 3
For i = 1 To 100
If Worksheets("concrete").Cells(i, 4).Value = "Flocculation and Sedimentation Basin" Then
Worksheets("Sheet1").Range(...).Value = ...' em muốn chọn hàng thứ i "
Else
....
End If
Next i
End Sub
Nếu chỉ muốn chọn hàng i thì sử dụng thế này.cho em hỏi :muốn chọn vùng ( cụ thể là hàng) mà trong đó chứa biến i thì chọn như thế nào? ví dụ như sau
Sub vidu()
Dim i, j As Integer
j = 3
For i = 1 To 100
If Worksheets("concrete").Cells(i, 4).Value = "Flocculation and Sedimentation Basin" Then
Worksheets("Sheet1").Range(...).Value = ...' em muốn chọn hàng thứ i "
Else
....
End If
Next i
End Sub
Worksheets("Sheet1").Rows([COLOR=#ff0000][B]i[/B][/COLOR]).Select
Bạn xem lại sheet FSB có tồn tại hay không?cho em hỏi thêm câu này:
em có sub sau mà sao khi chạy nó báo lỗi ở dòng tô đỏ.
các bác giúp em với.
Sub copy1() Dim copyrange As Range
Dim numrow, numcol As Integer
Set copyrange = Sheets("con1").[a4].CurrentRegion
copyrange.Offset(2).Resize(copyrange.Rows.Count - 2, copyrange.Columns.Count).Select
Selection.copy
Worksheets("FSB").Range("A5").Select
Selection.Insert Shift:=xlDown
End Sub
cho em hỏi thêm câu này:
em có sub sau mà sao khi chạy nó báo lỗi ở dòng tô đỏ.
các bác giúp em với.
Sub copy1() Dim copyrange As Range
Dim numrow, numcol As Integer
Set copyrange = Sheets("con1").[a4].CurrentRegion
copyrange.Offset(2).Resize(copyrange.Rows.Count - 2, copyrange.Columns.Count).Select
Selection.copy
Worksheets("FSB").Range("A5").Select
Selection.Insert Shift:=xlDown
End Sub
em có sheet đó anh ơi !Bạn xem lại sheet FSB có tồn tại hay không?
em đã làm như bác nói nhưng nó lại hiện bôi vàng dòng màu đỏThêm một dòng màu đỏ:
Selection.copy
Sheets("FSB").Select
Sheets("FSB").Range("A5").Select