Hỗ trợ code tạo mục lục. (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

ngaykhongem1

Thành viên chính thức
Tham gia
14/4/12
Bài viết
50
Được thích
2
Hi mọi người,
Nhờ mọi người hỗ trợ giúp mình cái này với. Mình có 1 file excel có nhiều sheet, mỗi sheet có tiêu đề mỗi sheet bắt đầu từ ô A3. Mình muốn khi chạy chương trình thì sẽ tạo thêm 1 sheet có tên Mucluc liệt kê tất cả các tiêu đề của tất cả các sheet trong file excel đó, chi tiết xem trong file đính kèm, Mong mọi người giúp đỡ.
Thanks mọi người
 

File đính kèm

Lần chỉnh sửa cuối:
Hi mọi người,
Nhờ mọi người hỗ trợ giúp mình cái này với. Mình có 1 file excel có nhiều sheet, mỗi sheet có tiêu đề mỗi sheet bắt đầu từ ô A3. Mình muốn khi chạy chương trình thì sẽ tạo thêm 1 sheet có tên Mucluc liệt kê tất cả các tiêu đề của tất cả các sheet trong file excel đó, chi tiết xem trong file đính kèm, Mong mọi người giúp đỡ.
Thanks mọi người
Bạn bấm Ctrl + q để có kết quả
 

File đính kèm

Upvote 0
Bạn bấm Ctrl + q để có kết quả

Code của đồng chí là:
Mã:
Sub Mucluc()
Dim Sh As Worksheet, i As Long, Arr, k As Long
Application.DisplayAlerts = False
ReDim Arr(1 To Sheets.Count, 1 To 2)
For Each Sh In ThisWorkbook.Worksheets
    If Sh.Name <> "Mucluc" Then
        i = i + 1
        Arr(i, 1) = Sh.Cells(3, 1)
        Arr(i, 2) = Sh.Name & "!A3"
    Else
        [COLOR=#ff0000]Sh.Delete[/COLOR]
    End If
Next
ThisWorkbook.Worksheets.Add.Name = "Mucluc"
For k = 1 To i
    Cells(k, 1) = Arr(k, 1)
   ActiveSheet.Hyperlinks.Add Cells(k, 1), "", Arr(k, 2)
Next
Application.DisplayAlerts = True
End Sub
Chổ màu đỏ hình như hơi tỏ ra.. nguy hiểm thì phải
Trong trường hợp người ta mang code cho vào 1 file mà file này có 1 sheet tên là Mucluc đang chứa dữ liệu đàng hoàng, đồng chí lại xóa phéng đi chắc người ta kêu trời quá
Vậy nên tôi đề xuất: Dùng MsgBox để cảnh báo nếu thấy có tên "Mucluc" đang tồn tại và cho người dùng tự quyết:
- Xóa toàn bộ dữ liệu trong sheet "Mucluc" để nó thành 1 mục lục thật sự
- Không làm gì cả
- Ngoài ra, đã dùng Hyperlink thì phải tính đến trường hợp sheet ẩn, không link được
 
Upvote 0
Code của đồng chí là:
Mã:
.........................
Chổ màu đỏ hình như hơi tỏ ra.. nguy hiểm thì phải
Trong trường hợp người ta mang code cho vào 1 file mà file này có 1 sheet tên là Mucluc đang chứa dữ liệu đàng hoàng, đồng chí lại xóa phéng đi chắc người ta kêu trời quá
Vậy nên tôi đề xuất: Dùng MsgBox để cảnh báo nếu thấy có tên "Mucluc" đang tồn tại và cho người dùng tự quyết:
- Xóa toàn bộ dữ liệu trong sheet "Mucluc" để nó thành 1 mục lục thật sự
- Không làm gì cả
- Ngoài ra, đã dùng Hyperlink thì phải tính đến trường hợp sheet ẩn, không link được[/QUOTE]

Đúng là suy nghĩ của thầy bao giờ cũng tính đến rất nhiều trường hợp phát sinh. Nhưng khi nhìn vào File bạn ấy gửi, cách thiết lập và hỏi thì em "đoán" rằng chưa cần phải bắt nhiều lỗi vậy thầy à.

Thôi thì cứ để bạn í dùng đã, phát sinh bạn sẽ rút ra kinh nghiệm sau.
 
Upvote 0
Đúng là suy nghĩ của thầy bao giờ cũng tính đến rất nhiều trường hợp phát sinh. Nhưng khi nhìn vào File bạn ấy gửi, cách thiết lập và hỏi thì em "đoán" rằng chưa cần phải bắt nhiều lỗi vậy thầy à.

.

Thì bạn làm đúng rồi, tôi có nói gì đâu
Ở trên là tôi đề cập đến trường hợp này:
Trong trường hợp người ta mang code cho vào 1 file
"người ta" ở đây có thể là bất kỳ ai (không hẳn là tác giả)... vì thấy code hay hay, mang về xài rồi nó đánh bay hết liệu ---> KHÓC
Ẹc... Ẹc...
Thôi thì cứ để bạn í dùng đã, phát sinh bạn sẽ rút ra kinh nghiệm sau.
Với những code NGUY HIỂM (có thể mất dữ liệu) thiết nghĩ cũng nên cân nhắc chút
 
Upvote 0

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

Back
Top Bottom