Ir ao conteúdo
  • Cadastre-se

Excel Codigo VBA Para remover números aleatórios de nome de arquivos


Ir à solução Resolvido por Midori,

Posts recomendados

Salve, mestres!!

 

Estou quebrando a cabeça para renomear arquivos de relatórios que são extraídos automaticamente de um site, mas que são gerados de acordo com uma ID inserida na página.

 

Ex: Name "C:\Users\" & Environ("UserName") & "\Downloads\AlunosTurmaID50978.csv" As "C:\Users\" & Environ("UserName") & "\Downloads\AlunosTurmaID.csv"

 

Já tentei usar "*", "#" e "?", mas nada funciona. Alguém pode me dar uma luz??

Link para o post
Compartilhar em outros sites

@Iomari Silva Roza Junior Foi só um exemplo de como remover o número de parte do nome do arquivo...

 

O Msgbox foi só para mostrar como ficaria o novo nome.

 

Veja que usei a função Left, a sintaxe é: Function Left(String, Length As Long)

 

Com essa função peguei apenas o texto "AlunosTurmaID" do nome do arquivo e depois concatenei com "csv".

 

Outro exemplo, com base no que postou ficaria assim,

 

Sub Macro()
    Dim Pasta   As String
    Dim Arquivo As String

    Pasta = "C:\Users\" & Environ("UserName") & "\Downloads\"
    Arquivo = "AlunosTurmaID50978.csv"
    
    Name Pasta & Arquivo As Pasta & Left(Arquivo, 13) & ".csv"
End Sub

 

 

Link para o post
Compartilhar em outros sites
51 minutos atrás, Midori disse:

50978

@Midori , essa ID é só um exemplo. Como eu disse no primeiro post, os arquivos são gerados de acordo com a ID que solicitamos o relatórios, ou seja, os relatórios sempre são extraídos com uma sequência numérica final aleatória e, para automatizar uma macro, preciso padronizar esse aquivo, removendo essa sequência numérica aleatória final. 

Link para o post
Compartilhar em outros sites

@Iomari Silva Roza Junior Sim, a ID é só um exemplo e fiz macro considerando a possibilidade da sequencia final aleatória.

 

No código não importa se a sequencia final é aleatória ou não.

 

A macro considera o padrão de nome do arquivo original como: Começando com "AlunosTurmaID" e seguido da sequencia numérica.

 

Por exemplo, o nome que você postou é: AlunosTurmaID50978.csv  

 

Mas poderia ser: AlunosTurmaID123.csv ou AlunosTurmaID098765432.csv ou qualquer outra sequencia após AlunosTurmaID, certo?

 

A macro vai remover a sequencia da mesma forma.

 

Chegou a testar o código?

Link para o post
Compartilhar em outros sites
Visitante

Sub ExcluiNúmeros()
 Dim objRegex, nomeArq As String
  Set objRegex = CreateObject("vbscript.regexp")
  nomeArq = "C:\Users\" & Environ("UserName") & "\Downloads\AlunosTurmaID50978.csv"
  With objRegex
   .Global = True
   .Pattern = "[^\D]+"
   nomeArq = .Replace(nomeArq, vbNullString)
  End With
 MsgBox nomeArq '<< neste ponto utilize a variável nomeArq, já sem os números, para o que precisar
End Sub

Link para o post
Compartilhar em outros sites

@Midori Inseri seu código no final do evento. Ele em separado funciona perfeitamente, porém, após o evento, quando ele não deleta o arquivo, não o renomeia.

 

Segue o código do evento:

 

 

Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" _
            (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Dim HTMLDoc As HTMLDocument
Dim oBrowser As InternetExplorer
Dim ID As Boolean, ieForm
Dim ID_ As Integer
Global Const SW_MAXIMIZE = 3
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2

Sub Login()

Worksheets("Dashboard").Activate
ActiveSheet.Range("A13").Select

nome = InputBox("Qual a ID da Turma")
linha = Range("A1").End(xlDown).Row + 7
Cells(linha, 1) = nome

Dim oHTML_Element As IHTMLElement
Dim sURL As String
On Error GoTo Err_Clear
   sURL = "gera.atento.com.br"
Set oBrowser = New InternetExplorer
   oBrowser.Silent = True
   oBrowser.timeout = 60
   oBrowser.Navigate sURL
   oBrowser.Visible = True
   oBrowser.TheaterMode = True
   
   Do
Loop Until oBrowser.ReadyState = READYSTATE_COMPLETE

Set HTMLDoc = oBrowser.Document

SetCursorPos 711, 402   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 23, 139   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 194, 254   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 174, 300   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 117, 194   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
   
  Set HTMLDoc = oBrowser.Document

HTMLDoc.all.ID.Value = nome
   
   SetCursorPos 1383, 349   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 1433, 477   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 2)
  
  SetCursorPos 1396, 509   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 1111, 877  'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
     
 oBrowser.Quit
 
 Dim Pasta   As String
    Dim Arquivo As String

    Pasta = "C:\Users\" & Environ("UserName") & "\Downloads\"
    Arquivo = "AlunosTurmaID50978.csv"
    
    Name Pasta & Arquivo As Pasta & Left(Arquivo, 13) & ".csv"
     
Err_Clear:

Resume Next
End Sub

 

 

Link para o post
Compartilhar em outros sites

@Iomari Silva Roza Junior Como a numeração é aleatória a variável Arquivo tem que receber o nome do arquivo correto.

 

Da forma que está o código ele só procura pelo arquivo AlunosTurmaID50978 que provavelmente não deve existir, já que a numeração muda toda vez que o arquivo é extraído, não é mesmo?

 

Para atribuir o nome do arquivo que foi extraído dá para fazer um loop no diretório para procurar, fiz isso neste trecho que copia e cola como AlunosTurmaID.csv (sobrescrevendo se houver outro com o mesmo nome).

 

For Each Arquivo In Fso.GetFolder(Pasta).Files
    If Left(Arquivo.Name, 13) = "AlunosTurmaID" Then
        Arquivo.Copy Pasta & "AlunosTurmaID.csv", True
        Exit For
    End If
Next Arquivo

 

 

O código completo com as novas instruções, veja se resolve,

 

Se der certo é melhor mudar para a função Move no lugar de Copy: Arquivo.Move Pasta & "AlunosTurmaID.csv"

 

 

 Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" _
            (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Dim HTMLDoc As HTMLDocument
Dim oBrowser As InternetExplorer
Dim ID As Boolean, ieForm
Dim ID_ As Integer
Dim Fso     As Object
Dim Arquivo As Object

Global Const SW_MAXIMIZE = 3
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2

Sub Login()

Worksheets("Dashboard").Activate
ActiveSheet.Range("A13").Select

nome = InputBox("Qual a ID da Turma")
linha = Range("A1").End(xlDown).Row + 7
Cells(linha, 1) = nome

Dim oHTML_Element As IHTMLElement
Dim sURL As String
On Error GoTo Err_Clear
   sURL = "gera.atento.com.br"
Set oBrowser = New InternetExplorer
   oBrowser.Silent = True
   oBrowser.timeout = 60
   oBrowser.Navigate sURL
   oBrowser.Visible = True
   oBrowser.TheaterMode = True
   
   Do
Loop Until oBrowser.ReadyState = READYSTATE_COMPLETE

Set HTMLDoc = oBrowser.Document

SetCursorPos 711, 402   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 23, 139   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 194, 254   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 174, 300   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 117, 194   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
   
  Set HTMLDoc = oBrowser.Document

HTMLDoc.all.ID.Value = nome
   
   SetCursorPos 1383, 349   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 1433, 477   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 2)
  
  SetCursorPos 1396, 509   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 1111, 877  'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
     
 oBrowser.Quit
 
    Set Fso = CreateObject("Scripting.FileSystemObject")
   
    Pasta = "C:\Users\" & Environ("UserName") & "\Downloads\"
    
    For Each Arquivo In Fso.GetFolder(Pasta).Files
        If Left(Arquivo.Name, 13) = "AlunosTurmaID" Then
            Arquivo.Copy Pasta & "AlunosTurmaID.csv", True
            Exit For
        End If
    Next Arquivo

Err_Clear:

Resume Next
End Sub

 

Link para o post
Compartilhar em outros sites
1 minuto atrás, Iomari Silva Roza Junior disse:

Se já houver um arquivo no padrão mencionado na pasta, a macro executa a função no arquivo existente, e não no criado (extraído do site).

Da forma que você postou a dúvida deu a entender que o arquivo sempre era salvo no padrão de nome: "AlunosTurmaID" seguido pela numeração.

 

Não é isso que acontece?

 

No nome do arquivo não tem nenhum padrão específico? Dê um exemplo de alguns nomes que o arquivo original pode ter.

Link para o post
Compartilhar em outros sites

@Iomari Silva Roza Junior  O original continua com a numeração porque a macro só copia (para AlunosTurmaID.csv).

 

Fiz uma alteração no código, apague (ou mova) todos os arquivos extraídos da pasta (inclusive AlunosTurmaID.csv se tiver) e faça um teste.

 

Agora a macro vai mover (o arquivo extraído para AlunosTurmaID.csv).

 

Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" _
            (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Dim HTMLDoc As HTMLDocument
Dim oBrowser As InternetExplorer
Dim ID As Boolean, ieForm
Dim ID_ As Integer
Dim Fso     As Object
Dim Arquivo As Object

Global Const SW_MAXIMIZE = 3
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2

Sub Login()

Worksheets("Dashboard").Activate
ActiveSheet.Range("A13").Select

nome = InputBox("Qual a ID da Turma")
linha = Range("A1").End(xlDown).Row + 7
Cells(linha, 1) = nome

Dim oHTML_Element As IHTMLElement
Dim sURL As String
On Error GoTo Err_Clear
   sURL = "gera.atento.com.br"
Set oBrowser = New InternetExplorer
   oBrowser.Silent = True
   oBrowser.timeout = 60
   oBrowser.Navigate sURL
   oBrowser.Visible = True
   oBrowser.TheaterMode = True
   
   Do
Loop Until oBrowser.ReadyState = READYSTATE_COMPLETE

Set HTMLDoc = oBrowser.Document

SetCursorPos 711, 402   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 23, 139   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 194, 254   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 174, 300   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 117, 194   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
   
  Set HTMLDoc = oBrowser.Document

HTMLDoc.all.ID.Value = nome
   
   SetCursorPos 1383, 349   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 1433, 477   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 2)
  
  SetCursorPos 1396, 509   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 1111, 877  'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
     
 oBrowser.Quit
 
    Set Fso = CreateObject("Scripting.FileSystemObject")
   
    Pasta = "C:\Users\" & Environ("UserName") & "\Downloads\"
    
    For Each Arquivo In Fso.GetFolder(Pasta).Files
        If Left(Arquivo.Name, 13) = "AlunosTurmaID" Then
            Arquivo.Move Pasta & "AlunosTurmaID.csv"
            Exit For
        End If
    Next Arquivo

Err_Clear:

Resume Next
End Sub

 

Link para o post
Compartilhar em outros sites
  • Solução

@Iomari Silva Roza Junior  Tenta assim,

 

A macro vai ficar em loop até conseguir mover o arquivo.

 

 Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" _
            (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Dim HTMLDoc As HTMLDocument
Dim oBrowser As InternetExplorer
Dim ID As Boolean, ieForm
Dim ID_ As Integer
Dim Fso     As Object
Dim Arquivo As Object
Dim ArquivoGerado   As Boolean


Global Const SW_MAXIMIZE = 3
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2

Sub Login()

Worksheets("Dashboard").Activate
ActiveSheet.Range("A13").Select

nome = InputBox("Qual a ID da Turma")
linha = Range("A1").End(xlDown).Row + 7
Cells(linha, 1) = nome

Dim oHTML_Element As IHTMLElement
Dim sURL As String
On Error GoTo Err_Clear
   sURL = "gera.atento.com.br"
Set oBrowser = New InternetExplorer
   oBrowser.Silent = True
   oBrowser.timeout = 60
   oBrowser.Navigate sURL
   oBrowser.Visible = True
   oBrowser.TheaterMode = True
   
   Do
Loop Until oBrowser.ReadyState = READYSTATE_COMPLETE

Set HTMLDoc = oBrowser.Document

SetCursorPos 711, 402   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 23, 139   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 194, 254   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 174, 300   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 117, 194   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
   
  Set HTMLDoc = oBrowser.Document

HTMLDoc.all.ID.Value = nome
   
   SetCursorPos 1383, 349   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
   Application.Wait Now + TimeSerial(0, 0, 1)
  
  SetCursorPos 1433, 477   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 2)
  
  SetCursorPos 1396, 509   'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
  
  Application.Wait Now + TimeSerial(0, 0, 4)
  
  SetCursorPos 1111, 877  'Local do Clique, em X e Y.
 
  mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0
  mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
     
 oBrowser.Quit
     
    ArquivoGerado = False
    
    Set Fso = CreateObject("Scripting.FileSystemObject")
   
    Pasta = "C:\Users\" & Environ("UserName") & "\Downloads\"

PROCURAR_ARQUIVO:
    For Each Arquivo In Fso.GetFolder(Pasta).Files
        If Arquivo.Name <> "AlunosTurmaID.csv" Then
            If Left(Arquivo.Name, 13) = "AlunosTurmaID" Then
                Arquivo.Move Pasta & "AlunosTurmaID.csv"
                    If Fso.FileExists(Pasta & "AlunosTurmaID.csv") Then
                        ArquivoGerado = True
                    End If
                Exit For
            End If
        End If
    Next Arquivo

    If ArquivoGerado = False Then GoTo PROCURAR_ARQUIVO

Err_Clear:

Resume Next
End Sub

 

  • Curtir 1
Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

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...

Aprenda a ler resistores e capacitores

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!