MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Gravar o nome do arquivo nas linhas do excel

    avatar
    RICARDO BARBOSA MACHADO
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 21/07/2014

    Gravar o nome do arquivo nas linhas do excel Empty Gravar o nome do arquivo nas linhas do excel

    Mensagem  RICARDO BARBOSA MACHADO em 14/11/2019, 01:49

    Boa noite,

    Alguém sabe como posso gravar nas planilhas (são várias com várias abas) o nome do arquivo e o nome das abas, usando um VBA no ACCESS?

    Exemplo: arquivo1.xlsx com duas abas chamadas BP e DRE.
    => Gravar na célula "P1" em todas as linhas o nome da aba "BP", e na célula "Q1" em todas as linhas o nome "arquivo1".

    Obs.: segue arquivo anexo.
    avatar
    RICARDO BARBOSA MACHADO
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 21/07/2014

    Gravar o nome do arquivo nas linhas do excel Empty Expressão que grava o nome do arquivo na célula

    Mensagem  RICARDO BARBOSA MACHADO em 14/11/2019, 12:59

    Bom dia,

    Achei essa expressão que grava o nome do arquivo na célula, porém, para ela funcionar tenho de entrar no arquivo e colar a fórmula da célula que pretendo indicar o nome do arquivo.

    =EXT.TEXTO(CÉL("nome.arquivo");LOCALIZAR("[";CÉL("nome.arquivo");1)+1;(LOCALIZAR("]";CÉL("nome.arquivo");1))-(LOCALIZAR("[";CÉL("nome.arquivo");1)+1))

    Depois encontrei esse código, porém, ele só funciona com o VBA da planilha.

    Private Sub Workbook_Open()
    Dim Extensão As String
    Dim posição As Integer
    posição = InStr(1, ActiveWorkbook.Name, ".", vbTextCompare)
    Extensão = Mid(ActiveWorkbook.Name, posição + 1, Len(ActiveWorkbook.Name) - posição)
    If Len(Extensão) = 3 Then
    Range("A1:a50").Value = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4)
    Else
    Range("A1:a50").Value = Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 5)
    End If
    End Sub

    Preciso que ele identifique a planilha e faça um loop em todas as planilhas e em todas as abas.

      Data/hora atual: 28/11/2020, 01:45