Xin giúp em về việc copy công thức!

Liên hệ QC

thanhtri

Thành viên hoạt động
Tham gia
6/5/07
Bài viết
113
Được thích
23
Chào các anh!
Em lại có 1 vấn đề khó khăn nữa cần sự trợ giúp
Em ví dụ em có 1 file gồm 12 sheet (Thang01, Thang02,... , Thang12). Những cột thuộc ngày Chủ Nhật của sheet Thang01 có công thức. Bây giờ em muốn copy sheet Thang01 sang sheet Thang02, nhưng công thức phải lọt đúng vào cột Chủ Nhật của sheet Thang02. Tương tự như vậy đối với Thang03, Thang04... Thang12.
Em làm hoài mà ko dc. Vì ví dụ công thức nằm ở cell F10 của sheet Thang01, khi copy qua sheet Thang02 thì công thức đó cũng lại nằm vào cell F10 (cell F10 của Thang01 là ngày CN, nhưng cell F10 của Thang02 đâu phải là ngày CN)
Càng lúc em càng cảm thấy Excel vô cùng hấp dẩn nhưng cũng vô cùng khó. Lại phải làm phiền đến các anh nữa rồi. Mong nhận dc sự giúp đở.
Miss TT
 
Nếu công thức của các ô ngày chủ nhật là như nhau thì bạn chỉ copy công thức tù ngày chủ nhật của tháng này qua chủ nhật của tháng khác. VD ở Sheet Thang1, ô F10 là ngày CN, bạn dùng lệnh copy, qua Sheet Thang2, đặt trỏ chuột vào ô CN ( ví dụ H10) vào lệnh Edit/Paste Special đánh dấu kiểm vào ô Formulas nhấn OK là được
Không biết có đúng ý bạn không
Thân
 
Vậy ko dc rồi. Cách này tất nhiên em biết nhưng em làm biếng lắm. Mỗi lần mà copy dữ liệu như kiểu đó chắc em chết mất. Nhiều lắm anh ơi. Em muốn copy 1 lần là cả 1 sheet cơ
Có cách nào khác ko?
Miss TT
 
Để copy cả 1 sheet bạn đưa chuột vào tên sheet ỏ phía dưới click chuột phải chọn move and copy/ đánh dấu chọn vào create a copy/ Ok là được chúc bạn thành công
 
Trời đất ơi. Hình như mấy anh ko xem kỹ yêu cầu của em rồi. Huuuuu
Em muốn copy nguyên sheet này sang những sheet khác, nhưng với điều kiện là tất cả công thức ở sheet 1 đang nằm ở cột Chủ nhật khi copy sang sheet 2, sheet 3 công thức ấy cũng phải lọt đúng vào cột chủ nhật. Mà cột chủ nhật chủ sheet này thì hoàn toàn khác với sheet khác. VD:Ở Sheet 1, cột chủ nhật nằm ở cột B, nhưng ở sheet 2 cột chủ nhật lại là cột E
Các anh có hiểu ý em ko nhỉ? Cứu em với
Miss TT
 
Post file lên đi, mọi người sẽ giúp đỡ.
 
Theo tôi, bạn copy từ Sh thang1 -> Sh thang2, cell đầu tiên cần copy là CN đầu tiên trong Sh thang1 (cụ thể là M9:BB9 copy đến cuối bảng) sang sh thang2 canh ngay Cel CN đầu cụ thể là I9 và dán vào.
Sh Thang1 nên làm dư 1 công thức của CN sau cùng vì dự trù có tháng 5 CN
Hy vọng giúp được bạn. Have "mưa" weekend
 
Cám ơn anh ThuNghi. Thì trước giờ em vẫn làm theo cách "canh me" như thế. Nhưng tính em hay làm biếng nên hỏi thử xem còn cách nào nhanh hơn nữa ko. Hiii. Copy 1 lần, paste 1 phát ra mấy chục sheet luôn mà các công thức vẫn lọt đúng cột chủ nhật của từng sheet.
Vậy thì ko còn cách nào nữa sao? Vì chỉ cần có 1 chỉnh sữa nhỏ trên các công thức thôi thì... chết em. Phải vào từng sheet đẽ chỉnh thủ công. Hicccc
Miss TT
 
thanhtri đã viết:
Cám ơn anh ThuNghi. Thì trước giờ em vẫn làm theo cách "canh me" như thế. Nhưng tính em hay làm biếng nên hỏi thử xem còn cách nào nhanh hơn nữa ko. Hiii. Copy 1 lần, paste 1 phát ra mấy chục sheet luôn mà các công thức vẫn lọt đúng cột chủ nhật của từng sheet.
Vậy thì ko còn cách nào nữa sao? Vì chỉ cần có 1 chỉnh sữa nhỏ trên các công thức thôi thì... chết em. Phải vào từng sheet đẽ chỉnh thủ công. Hicccc
Miss TT

Bạn có thể dùng Ctlr+H & Alt+A để thay thế toàn bộ công thức. Nhưng để dùng được như vậy bạn phải tìm ra điểm khác biệt giữa các công thức. SG nói như vậy chắc bạn cũng chưa hiểu đâu.Tốt nhất bạn nên up file lên đây để mọi người hướng dẫn bạn cụ thể hơn!.
 
Tôi làm thử VBA, mới học các cao thủ trên 4R GPE để chọn copy công thức có sẵn vào ngày CN (nếu là CN thì paste) của Sheet Thang2, 3,...
Hơi vụng về nên đừng chê nhé. Nhờ các cao thủ trau chuốt lại hộ.
Vận dụng vào file của bạn luôn.

Sub Dan_CT()
Dim i As Integer
Dim j As Integer
Dim cotso As Integer
Dim ngay As Double
Dim thu As Integer
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
ActiveSheet.Select
Range("F9:BA80").Select
Selection.ClearContents
'xac dinh i => ngay cn next
ngay = Range("f7").Value
thu = WorksheetFunction.Weekday(ngay)
i = IIf(thu = 1, 0, 8 - thu)
'i = Range("F1").Value

For j = 0 To 6 ' 6 la so lan CN
cotso = i + 7 * j
If Range("F8").Offset(0, cotso).Value = "" Then
Exit Sub
Else
'Gan cong thuc vao ngay CN
Range("F9").Offset(0, cotso).Formula = "=SUMPRODUCT((RC[1]:RC[6]=""CH"")*8)"
'Copy cong thuc xuong dong
Range("F9").Offset(0, cotso).Copy

'Dong 9+68 la dong cuoi, neu can thay so 68 nay
Range(Range("F9").Offset(1, cotso), Range("F9").Offset(68, cotso)).Select
ActiveSheet.Paste
Application.CutCopyMode = False

'Gan cong thuc vao ngay CN - 2 dong cuoi
Range("F9").Offset(70, cotso).Formula = "=COUNTIF(R[-70]C:R[-2]C,""CH"")"
Range("F9").Offset(71, cotso).Formula = "=COUNT(R[-71]C:R[-3]C)"

End If
Next j

With Application
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub

 

File đính kèm

  • Tang ca va nghi bu_2007.rar
    22.6 KB · Đọc: 28
Anh ThuNghi ơi! Em down file về rồi nhưng sử dụng nó như thế nào. Em chẳng biết gì về VB cả nên mong anh hướng dẩn chi tiết. Cám ơn trước
Miss TT
 
Bạn xem thử sheet này của mình xem có đúng ý bạn không.

Files này đã có công thức để tự động thay đổi màu của ngày chủ nhật của bất cứ tháng, năm nào bạn muốn. Bạn chỉ cần copy thêm sheet, ví dụ hiện tại files này có 5 tháng là 5 sheet bạn copy thêm để được đủ 12 tháng và thay vì copy công thức để có được ngày Chủ Nhật đúng theo tháng đó thì bạn chỉ cần gõ tháng tương ứng vào ô AH2 của sheet đó (VD: bạn gõ 01/06/2007 vào ô AH2 - sheet tháng 6) tự động ngày chủ nhật sẽ đổi theo đúng lịch của hệ thống. Việc copy sheet theo hướng dẫn của bạn yeudoi (phần trên).

Chúc bạn thành công !
 

File đính kèm

  • HR-PR-05.F18 (01) Bang cham cong (Ky thuat) - 2007.rar
    18.9 KB · Đọc: 14
Cám ơn anh Vu Ngoc. Nhưng như vậy cũng chưa hay lắm. Em thấy anh Tuan làm ko cần điền ngày tháng gì cả. Hể Sheet có tên là thang05 thì nó sẽ tự nhận biết là tháng 5. Còn năm thì nó lấy theo tên file. Chẳng hạn file tangcavanghibu_2007, sheet thang06 thì nó sẽ biết là: tháng 6 năm 2007. Tóm lại chỉ cần Insert new Sheet, sửa tên sheet thành thang01, thang02... thang12 rồi copy sheet có sẳn vào sheet mới là xong. Copy 1 phát, dán 1 phát 11 sheet. Khỏe re. Hiiii. Em làm biếng lắm, cái nào tự động càng cao là em khoái hà. Quan điểm của em là: "Một chương trình hay nhất là chương trình có thể phục vụ dc cho những người NGU NHẤT và LƯỜI nhất 1 cách ổn định nhất" Heeeeeeeeeeee
(Phải công nhận là càng lúc em càng lười, vì nhửng chương trình của các anh... đã quá! Làm em đở mõi tay rất nhiều! Thank!)
Miss TT
 
Ah quên cám ơn anh ThuNghi. Em chỉ cần thế là đủ rồi!
Miss TT
 
Web KT

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

Back
Top Bottom