Bài tập VBA - Bài 3

  • Thread starter Thread starter Quy Vu
  • Ngày gửi Ngày gửi
Liên hệ QC

Quy Vu

Thành viên chính thức
Tham gia
4/8/17
Bài viết
65
Được thích
4
Giới tính
Nam
Như title, mình kiếm được ít bài tập VBA, định mỗi ngày làm một bài. Mấy bài đầu đơn giản tự làm được mà nay gặp cái bài khó hơn một chút. Đến ý cuối thì tắc. Em xin up lên đây để xin lời giải. Nội dùng bài tập như sau.
Hay viết code VBA để khi chạy code được giao diện như ảnh, chi tiết trong attach file
Có một số yêu cầu như sau:
'Trong ô C3 thêm vào tiêu đề % People.
'Căn giữ tiêu đề cột A tới C, tô đậm tiêu đề
'Thay đổi Font của tiêu đề chính thành Bold và Size 14pt. ( Favourite Cheeses Data )
'Thay đổi Font của các tiêu đề bảng trong dòng 3 thành Bold và Size 12pt.
'Trong loại Cell C5 đặt một công thức để tính toán tỷ lệ của những người thích Pho-mát => ý này em đang không biết làm
'AutoFill xuống cuối danh sách. ( nguyên văn tiếng anh 'AutoFill this down to the bottom of the list.)
'AutoSize độ rộng cột.
1541758363338.png
 

File đính kèm

Như title, mình kiếm được ít bài tập VBA, định mỗi ngày làm một bài. Mấy bài đầu đơn giản tự làm được mà nay gặp cái bài khó hơn một chút. Đến ý cuối thì tắc. Em xin up lên đây để xin lời giải. Nội dùng bài tập như sau.
Hay viết code VBA để khi chạy code được giao diện như ảnh, chi tiết trong attach file
Có một số yêu cầu như sau:
'Trong ô C3 thêm vào tiêu đề % People.
'Căn giữ tiêu đề cột A tới C, tô đậm tiêu đề
'Thay đổi Font của tiêu đề chính thành Bold và Size 14pt. ( Favourite Cheeses Data )
'Thay đổi Font của các tiêu đề bảng trong dòng 3 thành Bold và Size 12pt.
'Trong loại Cell C5 đặt một công thức để tính toán tỷ lệ của những người thích Pho-mát => ý này em đang không biết làm
'AutoFill xuống cuối danh sách. ( nguyên văn tiếng anh 'AutoFill this down to the bottom of the list.)
'AutoSize độ rộng cột.
View attachment 207346
Dùng tạm thử code này xem sao.
Mã:
Sub GPE()
Dim Rng As Range
With Sheet1
    .Range("C3") = " % People"
    .Range("A1:C1").HorizontalAlignment = xlCenterAcrossSelection
    .Range("A1:C1").Font.Bold = True
    .Range("A1:C1").Font.Size = 14
    .Range("A3:C3").Font.Bold = True
    .Range("A3:C3").Font.Size = 12
    .Range("C5").FormulaR1C1 = "=RC[-1]/100"
    .Range("C5").NumberFormat = "0.0%"
    Set Rng = .Range("A5:A" & .Range("A65000").End(xlUp).Row)
    .Range("C5").AutoFill Destination:=Rng.Offset(, 2)
    Rng.Resize(, 3).HorizontalAlignment = xlCenter
End With
End Sub
 
Upvote 0
Trời hỡi. Bài này đâu có gì phải tính toán, chỉ việc mở macro lên thâu là xong.

Chú: nếu không biết công thức tính phần trăm thì nó là:
=100*B5/SUM(PeopleNumbers)
Thâu macro nó ra là:
ActiveCell.FormulaR1C1 = "=100*RC[-1]/SUM(PeopleNumbers)"
 
Upvote 0
Như title, mình kiếm được ít bài tập VBA, định mỗi ngày làm một bài. Mấy bài đầu đơn giản tự làm được mà nay gặp cái bài khó hơn một chút. Đến ý cuối thì tắc. Em xin up lên đây để xin lời giải. Nội dùng bài tập như sau.
Hay viết code VBA để khi chạy code được giao diện như ảnh, chi tiết trong attach file
Có một số yêu cầu như sau:
'Trong ô C3 thêm vào tiêu đề % People.
'Căn giữ tiêu đề cột A tới C, tô đậm tiêu đề
'Thay đổi Font của tiêu đề chính thành Bold và Size 14pt. ( Favourite Cheeses Data )
'Thay đổi Font của các tiêu đề bảng trong dòng 3 thành Bold và Size 12pt.
'Trong loại Cell C5 đặt một công thức để tính toán tỷ lệ của những người thích Pho-mát => ý này em đang không biết làm
'AutoFill xuống cuối danh sách. ( nguyên văn tiếng anh 'AutoFill this down to the bottom of the list.)
'AutoSize độ rộng cột.
Gợi ý cho bạn là ấn cái nút này : 1541789292904.png Để record macro nhé. chúc vui vẻ :)
 
Upvote 0
Upvote 0
Web KT

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

Back
Top Bottom