Ir ao conteúdo
  • Cadastre-se

RafaVillani

Membro Pleno
  • Posts

    425
  • Cadastrado em

  • Última visita

posts postados por RafaVillani

  1. @Neodenn Olá, creio que o código possa ser um pouco mais simples do que a forma como você esta tentando, veja se lhe atende dessa forma.

     

    Dim Texto As String, A() As String, B() As String
    Texto = Sheet1.Cells(4, 4)
    A() = Split(Texto, " ")
    B() = Split(A(1), "-")
    
    Sheet1.Cells(5, 4) = "*" & A(0) & " *Base " & B(0) & "mm " & "+*? Prat. " & B(1)

     

    Segue um modelo que criei.

     

    Se a resposta foi útil clique em curtir, se solucionou sua dúvida marque esta resposta como solução.

     

    Abraços

     

    RafaVillani

    Forum Modelo Neodenn.rar

    • Amei 1
  2. @MrPaul e @karluxo  vou deixar aqui duas soluções.

     

    A primeira você deverá seguir todo o conteúdo deste site: https://excelevba.com.br/imagens-dentro-da-propria-planilha/

    Prós: não é necessário salvar a imagem para carrega-la no objeto de imagem.

    Contras: geralmente podem ocorrer conflitos no código, dependendo do seu tipo de sistema 32 ou 64 bits, código muito extenso.

     

    A segunda seria este código: 

    Dim Plan As String
    Dim PastaNome As String
    Dim oImage As Shape
    Dim oSheet As Worksheet
    Dim oTemp As ChartObject
    Dim oChartArea As Chart
    
    Plan = Plan1.Name
    PastaNome = ThisWorkbook.Path & Application.PathSeparator & "imagem.gif" 'nome que será salvo a imagem
    
    Set oSheet = Plan1
    Set oImage = oSheet.Shapes.Item("Imagem") 'insira o nome da sua imagem
    
    oImage.CopyPicture
    
    Set oTemp = oSheet.ChartObjects.Add(100, 100, oImage.Width, oImage.Height)
    Set oChartArea = oTemp.Chart
    oTemp.Activate
    With oChartArea
        .ChartArea.Select
        .Paste
        .Export Filename:=PastaNome, filtername:="GIF"
    End With
    UserForm1.Image1.Picture = LoadPicture(PastaNome)
    oTemp.Delete

    Este código copia e salva a sua imagem na pasta onde se encontra a pasta de trabalho, para depois carrega-la no objeto image.

    Prós: código simples e bem curto, não sobrecarrega.

    Contras: Não vejo contras neste código, pessoalmente prefiro ele.

     

    RafaVillani

  3. @Jefferson TSTestei aqui, o & .Body funciona corretamenta (veja o video),  você inseriu a assinatura no corpo da mensagem pelo outlook?

     

    RafaVillani

    Assinatura.rar

    @Jefferson TSDesconsidere o post acima, realmente, quando a assinatura contem imagem ela some, tentarei resolver aqui.

     

    RafaVillani

    @Jefferson TS, tente desta forma:

     

    Dim outl As Outlook.Application
    Dim novo_email As Outlook.MailItem
    
    Set outl = New Outlook.Application
    Set novo_email = outl.CreateItem(olMailItem)
    
    With novo_email
    .Display
    .To = UserFormEmail.TextBoxEndEmail.Value
    .CC = "[email protected]"
    .Attachments.Add pdf
    .Subject = "Ficha de treino PHYSICAL"
    .HTMLBody = "<BR><FONT COLOR=""002288"" SIZE=""4"" BOLD=TRUE>Olá aluno(a), segue em abaixo sua ficha de treino. Bons treinos!</FONT><BR>" & .HTMLBody
    
    '.Send
    End With
    
    MsgBox "Email enviado com sucesso", vbInformation, "Email e PDF"
    
    Set outl = Nothing
    Set novo_email = Nothing

    RafaVillani

  4. @paulocezarpicosQuando você alterou o código você colocou o Exit Sub no lugar errado, o que está acontecendo é que o filtro esta ocorrendo e, após, o código Exit Sub é ativado e o código é interrompido, e as linhas abaixo do End If não são lidas-executadas, na verdade, o código deve ser interrompido quando a variável QtdLinhaFiltro foi maior que 31.

     

    Para corrigir basta você mover o Exit Sub e coloca-lo acima do Else, ficando assim:

    If QtdLinhaFiltro > 31 Then
        MsgBox "Intervalo entre datas muito grande, selecione outro intervalo!", vbInformation, "FILTRO"
    Exit Sub
    Else: Plan16.Range("A7:K" & QtdLinhaFiltro + 6) = MatrizFiltro
    End If
    Call imprimir
    Unload UserForm1
    Unload Me
    End Sub

    RafaVillani

    • Curtir 1
  5. @Jefferson TSNa verdade o que ocorre é, apesar da linha estar com cor diferente ela não existe, então no primeiro clique é inserida a primeira linha, depurei o código para confirmar isso, e é exatamente isso que ocorre, tanto que se você tentar deletar essa linha o msgbox será mostrado.

     

    Faça o teste, exclua todas as linhas até a mensagem ser mostrada, depois insira uma linha, e tente deletar, mesmo não mostrando na tabela a linha foi inserida e será deletada.

     

    RafaVillani

  6. @Jefferson TSSegue sua planilha, fiz o filtro dos Ativos e Inativos, e acrescentei um novo botão de opção para mostrar todos.

     

    Quanto a forma de alterar o Status, fiz com apenas um botão, se o status for Ativo ele é altera para Inativo, se for Inativo é alterado para Ativo.

     

    Quanto a opção do filtro por CPF ou Nome, acredito que o @AfonsoMirajá o instruiu no outro tópico.

     

    RafaVillani

    CONTROLE NOVO.rar

    • Curtir 2

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!