Ir ao conteúdo
  • Cadastre-se

AfonsoMira

Membro Pleno
  • Posts

    463
  • Cadastrado em

  • Última visita

posts postados por AfonsoMira

  1. 30 minutos atrás, RWSHARDWARE disse:

    Boa tarde Afonso.

     

    rapaz, tentei lá do jeito que falou mas deu um erro 52.

     

    Nesta parte do código, na variavel arquivo você coloca para unir variavel diretorio com a variavel pasta, as duas não seriam a mesma coisa ?

    diretorio = "Caminho COMPLETO do ficheiro"

    pasta = ThisWorkbook.Path

    arquivo = diretorio & pasta

     

    Valeu!

     

    Sim têm toda a razão. Erro meu aqui.
    Ora experimente da seguinte maneira:

     

    Private Sub UserForm_Initialize() 
    
    Dim arquivo As String, pasta As String, diretorio As String 
    
    ListBox1.Clear 
    diretorio = "Caminho COMPLETO do ficheiro" 
      While diretorio <> "" 
        If diretorio <> "*.*" Or diretorio <> "" Or diretorio <> "." Or diretorio <> ".." Then     
          ListBox1.AddItem diretorio     
          diretorio = Dir() 
        Else     
          diretorio = Dir() 
    	End If 
      Wend 
    End Sub

     

  2. Boas, tudo bom, penso que você tenha que informar o caminho completo desse ficheiro, pois em computadores diferentes o caminho que usa agora pode variar.

    Exemplo no seu PC a pasta de logistica de rede tem o seguinte caminho: "J:logistica..." já em outro PC poderá ter: "L:logistica..." a diferença entre o J e o L já faz com que o VBA não consiga localizar a pasta.

     

    O que eu sugiro é o seguinte.

     

    Vá no ficheiro escolhido, clique com o botão direito do mouse em cima, selecione propriedades, de seguida vá na aba segurança e onde está nome do objeto, esse será o caminho que todos os PC's irão reconhecer.

     

    Depois altere o seu código para este e preencha o que falta (falta indicar o caminho completo esse ai em cima que mostrei como se pega).

    Código:

    Private Sub UserForm_Initialize()
    Dim arquivo As String, pasta As String, diretorio As String
    
    ListBox1.Clear
    
    diretorio = "Caminho COMPLETO do ficheiro"
    pasta = ThisWorkbook.Path
    arquivo = diretorio & pasta
    
    While arquivo <> ""
    
    If arquivo <> "*.*" Or arquivo <> "" Or arquivo <> "." Or arquivo <> ".." Then
        ListBox1.AddItem arquivo
        arquivo = Dir()
    Else
        arquivo = Dir()
    End If
    
    Wend
    
    End Sub

     

    Alguma dúvida, é só perguntar. :)

  3. Boas experimente desta forma.
     

    Sub Teste()
    Dim P As String, UltimaLinha As String, Lin As String, i As Integer
    
        P = Sheets("Planilha1").Cells(Rows.Count, "A").End(xlUp).Row
        
        UltimaLinha = Sheets("Plano de Produção").Cells(Rows.Count, "B").End(xlUp).Row
        Lin = P
        For i = 16 To UltimaLinha
            If Sheets("Plano de Produção").Cells(i, 2) = "PROD" Then
            Sheets("Planilha1").Cells(Lin, 1) = Sheets("Plano de Produção").Cells(i, 3)
    
            Lin = Lin + 1
            End If
        Next
        
    End Sub

     

    Penso que o erro esteja na parte em que atribui o valor a varíavle Ultimalinha, pois tinha na coluna A e troquei para a B, pois na planilha que enviou, na coluna A não tem informação. Fazendo com que assim saltase o Loop.

    Espero ter ajudado :)

    • Obrigado 1

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!