tạo giao diện cho 1 sheet bằng VBA

Liên hệ QC

thanlong882

Thành viên mới
Tham gia
7/9/10
Bài viết
23
Được thích
2
- Chào các Pro cho mình hỏi 1 chút được không?
- Trong VBA có cách nào thiết kế các lệnh để nó tạo ra 1 giao diện theo ý mình muốn trên bảng tính Excel ko?
Như : tạo tiêu đề, tạo 1 bảng theo ý mình với số cột, tiêu đề cột, định dạng trong bảng ( cũng giống như mình tạo bằng tay vậy)

Mong mọi người cho ý kiến ??
 
Chắc phải For... Next quá Dom ơi! (vì với SpreadSheet, ta PasteSpecial xlPasteColumnWidths nó báo lỗi ---> Chắc không hổ trợ)
Đại khái vầy:
PHP:
For i = 1 To Sheet1.UsedRange.Columns.Count
  Sheet1.UsedRange.Columns(i).ColumnWidth = .Spreadsheet1.Columns(i).ColumnWidth
Next
Em cũng đã thử PasteSpecial xlPasteColumnWidths nhưng cũng không được.
Theo yêu cầu của em thì phải sử dụng 2 vòng lặp. Thầy có cách nào gọn nhẹ hơn không ?
 
Upvote 0
Em cũng đã thử PasteSpecial xlPasteColumnWidths nhưng cũng không được.
Theo yêu cầu của em thì phải sử dụng 2 vòng lặp. Thầy có cách nào gọn nhẹ hơn không ?
Có 1 chiêu cũng.. hay hay
PHP:
With UserForm1
  .Spreadsheet1.Export "ThiNghiem.xls"
End With
Dom thử xem
Lưu ý rằng code này tạo ra 1 file mới và file mới này chỉ chứa giao diện, không chứa tí code nào (cũng tốt)
 
Upvote 0
Có 1 chiêu cũng.. hay hay
PHP:
With UserForm1
  .Spreadsheet1.Export "ThiNghiem.xls"
End With
Dom thử xem
Lưu ý rằng code này tạo ra 1 file mới và file mới này chỉ chứa giao diện, không chứa tí code nào (cũng tốt)

Em đang dự định dùng cái này ở VB6 để chuyển nó qua Excel, code cực ngắn, cực hay, cực nhanh. Không cần khai báo và mở Excel.
Thầy có cách nào đưa Data ở ListBox vào SpeadSheet không ? Xin hướng dẫn giúp em với.
 
Upvote 0
Em đang dự định dùng cái này ở VB6 để chuyển nó qua Excel, code cực ngắn, cực hay, cực nhanh. Không cần khai báo và mở Excel.
Thầy có cách nào đưa Data ở ListBox vào SpeadSheet không ? Xin hướng dẫn giúp em với.
Tôi thấy dễ mà! Ví dụ:
PHP:
Private Sub UserForm_Initialize()
  UserForm1.Spreadsheet1.Range("B1:B5").Value = Me.ListBox1.List
End Sub
 
Upvote 0
Trong VB6 chứ không phải Excel thầy à.
Trong VB6 đúng là không dùng chiêu ở trên được!
Nhưng cho hỏi: Value của ListBox từ đâu mà bạn có? Nếu bạn dùng phương thức AddItem để nạp thì ngay tại quá trình này sao bạn không kết hợp nạp luôn vào SpreadSheet?
 
Upvote 0
Trong VB6 đúng là không dùng chiêu ở trên được!
Nhưng cho hỏi: Value của ListBox từ đâu mà bạn có? Nếu bạn dùng phương thức AddItem để nạp thì ngay tại quá trình này sao bạn không kết hợp nạp luôn vào SpreadSheet?
ListBox thì đưa dữ liệu vào rất dể thế nhưng SpeadSheet hồi nào giờ chưa biết đưa vào thế nào. Mong thầy hướng dẫn thêm.
 
Upvote 0
ListBox thì đưa dữ liệu vào rất dể thế nhưng SpeadSheet hồi nào giờ chưa biết đưa vào thế nào. Mong thầy hướng dẫn thêm.
Thì cũng y chang như trên sheet Excel thôi
Dom thí nghiệm vầy xem thế nào nha:
PHP:
Private Sub Form_Load()
  Dim i As Long
  For i = 1 To 5
    Me.Spreadsheet1.Cells(i, 1) = "Tên " & i
  Next
End Sub
Nói chung: Vị trí dòng, cột, Range, Cells.. gì gì đó hoàn toàn y chang như trên sheet Excel
 
Upvote 0
anh ơi em đang cần dùng cái này . anh chỉ giúp em với
 
Upvote 0
Theo em, để tránh rắc rối với các Object bị missing, sao mình không tạo cái bảng đó bằng tay ở 1 sheet khác, rồi sau đó cũng dùng code copy vào, nếu có chỉnh sửa gì hay dùng công thức thì thao tác ngay trên sheet cũng đơn giản hơn là thao tác trên Form với SpreadSheet. -+*/-+*/-+*/

bác hướng dẫn em cách tạo spreadsheet bằng code với ạ.
 
Upvote 0
Web KT

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

Back
Top Bottom