Ir para conteúdo
Fórum Script Brasil

Benhur Palini

Membros
  • Total de itens

    27
  • Registro em

  • Última visita

Sobre Benhur Palini

Benhur Palini's Achievements

0

Reputação

  1. Oi! Seria isto: Range("A1").Value = ComboBox1.Text Range("A2").Value = TextBox1.Text
  2. Oi, Exemplo de uma planilha com 4 retângulos: Private Sub Worksheet_SelectionChange(ByVal Target As Range) For i = 1 To ActiveSheet.Shapes.Count Valor = Range("A" & i).Value If Valor = 1 Then ActiveSheet.Shapes("Retângulo " & i).Visible = msoTrue ElseIf Valor = 2 Then ActiveSheet.Shapes("Retângulo " & i).Visible = msoFalse End If Next i End Sub
  3. Oi, se quiser copiar e colar, pode fazer assim: Sheets("Plan1").Rows("1:1").Copy Sheets("Plan2").Cells(1, 1).PasteSpecial Paste:=xlPasteValues
  4. Oi! segue uma sugestão: Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$A$1" Then Exit Sub End If Select Case Range("A1").Value Case 1 UserForm1.Show Case 2 UserForm2.Show Case 3 UserForm3.Show End Select End Sub
  5. Acho que não poderei lhe ajudar neste caso, pois seria necessário analisar todos os critérios para propor uma solução.
  6. Oi, sugestão: if WorksheetFunction.IsText(Valor) then .....'retorna verdadeiro se o conteúdo da variável Valor for do tipo texto (string). WorksheetFunction pode usar todas as fórmulas de planilha dentro do VBA. Observe que if IsNumeric(Valor) Then 'Retorna verdadeiro se o conteúdo da variável Valor for qualquer tipo de número, não apenas para inteiros (Intenger). ex. 1 ou 1,1 ou 11,11
  7. Oi, Maxx77! Talvez isto ajude: ActiveSheet.Copy ChDir "C:\Destino" ActiveWorkbook.SaveAs Filename:="C:\Destino\Pasta1.xlsx", _ FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False Isto copia a planilha ativa para um novo arquivo de Excel. Depois salva na pasta préviamente criada que nomeada como 'Destino'
  8. Benhur Palini

    erro 91

    Oi, Danyy! Nesses casos prefiro fazer assim: Sub Erro() On Error Resume Next 'De preferência no início Do While ... selection.Find... If Err.Number <> 0 Then 'Se ocorrer um erro a propriedade Number será diferente de zero msg = MsgBox("Erro " & Err.Number & " " & Err.Description) ' Se quizer mostrar o erro Windows("RELATORIO DESCONTO.XLSX").Activate ActiveCell.Offset(1, 0).Select Err.Clear 'Limpa o erro para a próxima execução End If loop... Acredito que o uso de 'On Error GoTo trataerro' seria mais indicado em casos que 'trataerro:' fosse usado fora do loop, que tivesse maior números e de preferência antes de 'End Sub' para encerrar o procedimento. espero ter ajudado!
  9. Benhur Palini

    erro 91

    Oi, Danyy! Este erro é esperado quando nenhum valor correspondente à pesquisa é encontrado. A solução é mesmo o tratamento de erro.
  10. Oi, Daniel! Sugiro o seguinte: Unload Me 'fecha o formulário, no caso o formulário de login Private Sub UserForm_Terminate() 'este evento ocorre após o fechamento do formulário UserForm2.Show 'inicia o segundo formulário End Sub
  11. Benhur Palini

    VBA IF E ELSE

    Oi, Admilton! a sintaxe é If condição Then ... Elseif condição Then ... End If Private Sub textbox1_change() IF (textbox2 * textbox3) > (textbox2 * textbox4) then textbox1 = textbox2 * textbox3 Elseif (textbox2 * textbox3) < (textbox2 * textbox4) then textbox1 = textbox2 * textbox4 End IF End Sub
  12. Oi! Segue uma sugestão: vTexto = "111 - aaa22" vPosição = InStr(1, vTexto, "-") vTexto = Mid(vTexto, 1, vPosição - 2) 'a função InStr retorna a posição de "-" a partir da posição 1 'Mid retorna parte de um texto. Observe que "-" está na posição 5 Lembrando que no Excel podem ser usadas as funções LOCALIZAR() e EXT.TEXTO() Em muitos casos é melhor usar a ferramenta 'Texto para colunas' disponível na guia Dados.
  13. Anacleto, Este exemplo classifica em ordem crescente uma tabela com auto filtro que inicia na célula A1 da planilha Plan1: Sub Macro1() Set Tabela = ActiveWorkbook.Worksheets("Plan1").AutoFilter.Sort Tabela.SortFields.Clear Tabela.SortFields.Add Key:=Range("A1"), Order:=xlAscending Tabela.Apply End Sub
  14. Oi, Nelson! Se ainda precisar, segue uma sugestão: Application.OnTime TimeValue(Hora), Rotina Hora é a hora em que a rotina deve ser executada. Rotina é uma Sub salva no mesmo projeto. A execução do código continua, mas a Rotina fica agendada pra ser executada. este exemplo agenda 3 execuções da Rotina: Application.OnTime TimeValue(Hora1), Rotina Application.OnTime TimeValue(Hora2), Rotina Application.OnTime TimeValue(Hora3), Rotina
  15. Oi, Anacleto! Uma solução simples pode ser: Private Sub TextBox1_Enter() If TextBox1.Text = "24:00" Then TextBox1.Text = "00:00" End If End Sub
×
×
  • Criar Novo...