Đổi tên sheet theo ô (2 người xem)

Liên hệ QC

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

hungdiep85

Thành viên thường trực
Tham gia
1/6/09
Bài viết
218
Được thích
23
Giới tính
Nam
Chào các Thầy


Em có 1 File không nhớ là của Thầy nào trên GPE mà em đao về dùng khá phù hộp với công việc của em , nay xin được các Thầy cho thêm 1 code nút đổi tên sheet theo sheet Open Form A1:A21 trong Open Form.


Cảm ơn các Thầy và cảm ơn tác gia của File


chúc các Thầy và Thành viên GPE và Addmin nữa


Chúc Mừng Năm Mới - An Khang Thịnh Vượng
 

File đính kèm

Lần chỉnh sửa cuối:
có phải ý bạn là mở file đó ra và đổi lại tên sheet của file đó ko? bạn thử thêm dòng code này coi có đúng ko?

For j = 1 To arrTargetWb(iPos).Sheets.Count
lstSheetName.AddItem iPos
Sheets(j).Name = ThisWorkbook.Sheets("Open Form").Range("A" & j).offset(1,0).Value
lstSheetName.List(lstSheetName.ListCount - 1, 1) = arrTargetWb(iPos).Sheets(j).Name
lstSheetName.List(lstSheetName.ListCount - 1, 2) = "[" & strFileName & "]" & arrTargetWb(iPos).Sheets(j).Name
Next
 
Lần chỉnh sửa cuối:
Upvote 0
có phải ý bạn là mở file đó ra và đổi lại tên sheet của file đó ko? bạn thử thêm dòng code này coi có đúng ko?

For j = 1 To arrTargetWb(iPos).Sheets.Count
lstSheetName.AddItem iPos
Sheets(j).Name = ThisWorkbook.Sheets("Open Form").Range("A" & j).offset(1,0).Value
lstSheetName.List(lstSheetName.ListCount - 1, 1) = arrTargetWb(iPos).Sheets(j).Name
lstSheetName.List(lstSheetName.ListCount - 1, 2) = "[" & strFileName & "]" & arrTargetWb(iPos).Sheets(j).Name
Next

Ý em là khi ta chọn nút Open Form trong đó
có 4 nút
1 Mo File = có code
2 Gop Sheet = có code
3 doi ten = chưa có code
4 Thoat = có code

3 doi ten = chưa có code là em tự thêm vào khi ta chon nút (doi ten) thì tất cả các sheet sẽ đươc đổi theo A1 đến A21 của sheet Open Form.

cảm ơn Thầy nhiều.
 
Upvote 0
có phải ý bạn là mở file đó ra và đổi lại tên sheet của file đó ko? bạn thử thêm dòng code này coi có đúng ko?

For j = 1 To arrTargetWb(iPos).Sheets.Count
lstSheetName.AddItem iPos
Sheets(j).Name = ThisWorkbook.Sheets("Open Form").Range("A" & j).offset(1,0).Value
lstSheetName.List(lstSheetName.ListCount - 1, 1) = arrTargetWb(iPos).Sheets(j).Name
lstSheetName.List(lstSheetName.ListCount - 1, 2) = "[" & strFileName & "]" & arrTargetWb(iPos).Sheets(j).Name
Next




Em thêm code Thầy vào rùi , được đó Thầy nhưng chưa đổi tên sheet theo ô A1:A21 của sheet Open Form cho em thêm 1 miến code nưa nha Thầy.
Em cảm ơn àh
 

File đính kèm

Upvote 0
mình cũng đang học vba như bạn thui, không phải là thầy đầu, mình lên đây giải bài tập để học thêm thôi.
bạn thử lại cái này

Private Sub CommandButton1_Click()
Dim i As Integer
On Error Resume Next
i = 2
Dim Sh As Worksheet, Area As Range
For Each Sh In ThisWorkbook.Worksheets
Sh.AutoFilterMode = False
Sh.Name = ThisWorkbook.Sheets("Open Form").Range("A" & i).Value
i = i + 1

With Sh.UsedRange
.Value = .Value
.Columns("P:iv").Delete
' .Columns("k:n").Delete
For Each Area In .SpecialCells(15).Areas
Area.Validation.Delete
Next Area
End With
Next Sh

End Sub

nhớ xóa dòng lệnh ở button "Mo File" nha
 
Lần chỉnh sửa cuối:
Upvote 0
mình cũng đang học vba như bạn thui, không phải là thầy đầu, mình lên đây giải bài tập để học thêm thôi.
bạn thử lại cái này

Private Sub CommandButton1_Click()
Dim i As Integer
On Error Resume Next
i = 2
Dim Sh As Worksheet, Area As Range
For Each Sh In ThisWorkbook.Worksheets
Sh.AutoFilterMode = False
Sh.Name = ThisWorkbook.Sheets("Open Form").Range("A" & i).Value
i = i + 1

With Sh.UsedRange
.Value = .Value
.Columns("P:iv").Delete
' .Columns("k:n").Delete
For Each Area In .SpecialCells(15).Areas
Area.Validation.Delete
Next Area
End With
Next Sh

End Sub

nhớ xóa dòng lệnh ở button "Mo File" nha


Bạn ơi ; không đươc , bạn coi file mình coi co lổi gì không,cảm ơn bạn
 

File đính kèm

Upvote 0
ở phía trên có dòng "Dim i as integer" nữa bạn, sory mình quên tô đỏ.
 
Upvote 0
Upvote 0



Cảm ơn Thầy , em thêm vào đươc rùi.


Public Sub GPE()
Dim Arr(), Ws As Worksheet, K As Long
With Sheet1
Arr = .Range(.[A2], .[A1000].End(xlUp)).Value
End With
For Each Ws In ThisWorkbook.Worksheets
K = K + 1
Ws.Name = Arr(K, 1)
Next
End Sub
 
Upvote 0
Thầy ơi cho em thêm 1 code


Nếu chọn nút delete sheet thì sẽ xóa hết sheet chi chừa lại sheet 1 thồi


cảm ơn Thầy
 
Upvote 0
ÀH.......
Em tìm được code này rùi......

Sub XoaSheet3()
Dim ShXoa As Worksheet
With Application
.ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False
For Each ShXoa In ThisWorkbook.Worksheets
If ShXoa.Name <> "Open Form" Then
If ShXoa.Range("AA1").Value = 0 And _
ShXoa.Range("AA1").Value = 0 Then _
ShXoa.Delete
End If
Next
.EnableEvents = True: .DisplayAlerts = True: .ScreenUpdating = True
End With
End Sub

http://www.giaiphapexcel.com/forum/archive/index.php/t-61592.html
 
Upvote 0
Web KT

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

Back
Top Bottom