Esccola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções
Esse macro do aplicativo MS Excel VBA(Visual Basic Application), cria folha de planilhas planiihas com nome e dados dos alunos, com auxlio do Evento
Duplo Click, ou seja Cria uma planilha com dados e renomeia com o nome do Aluno, com base no modelo já existente.
as cores das abas de planihas criadas são geradas aleatóriamente (56) cores.
'a planilha modelo {Ficha_Aluno} ficará oculta.
'que será o template(modelo) para montar a nova planilha com dados e será renomeada com nome do Aluno
Private Sub Worksheet_Activate()
fl_Aluno.Visible = False
End Sub
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Application.Intersect(Range("A2:A1000"), Target) Is Nothing Then Exit Sub
vNome = ActiveCell
If vNome = "" Then Exit Sub
vIDADE = ActiveCell.Offset(0, 1)
vENDERECO = ActiveCell.Offset(0, 2)
vLICAO = ActiveCell.Offset(0, 3)
vNOTAS = ActiveCell.Offset(0, 4)
'para adicionar em outros campos
'vNome1= activecell.offset(0,5)
'vNome2= activecell.offset(0,6)
'testar se a planilha Ficha_Alunos (duplicação da planilha Ficha_Aluno - com o nome do Aluno)
For Each sh In Worksheets
If sh.Name = vNome Then MsgBox " Ficha_Aluno " & vNome & " planilha já foi criada!", vbCritical, "ERRO": Exit Sub
Next
Sheets("Ficha_Aluno").Visible = True
Sheets("Ficha_Aluno").Copy After:=Sheets(Worksheets.Count)
Sheets("Ficha_Aluno (2)").Select
Sheets("Ficha_Aluno (2)").Name = vNome
Sheets("Ficha_Aluno (2)").Tab.ColorIndex = Int(55 * Rnd) + 1
Sheets(vNome).Tab.ColorIndex = Int(55 * Rnd) + 1
Sheets("Ficha_Aluno").Select
ActiveWindow.SelectedSheets.Visible = False
Sheets(vNome).Select
Sheets(vNome).Range("B2") = vNome
Sheets(vNome).Range("B4") = vIDADE
Sheets(vNome).Range("B6") = vENDERECO
Sheets(vNome).Range("B8") = vLICAO
Sheets(vNome).Range("B10") = vNOTAS
Sheets(vNome).Range("A1").Select
End Sub
Sub deletar_planilhas()
Dim i As Long
On Error Resume Next
Application.DisplayAlerts = False
For i = 1 To Sheets.Count
If Len(Sheets(i).Name) = 1 And Sheets(i).Visible = True Then
Sheets(i).Delete
End If
Next i
End Sub
Aprenda tudo sobre planilhas do Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos Escola Saberexcel VBA Estudos® - Treinamentos com Macros, Fórmulas e Funções.
Baixe o exemplo de planiha contendo os macros e procedimento acima
Excel VBA planilha gera copia plan aluno com dados (61.12 KB)