Ir ao conteúdo

Posts recomendados

Postado

Bom dia!

Estou precisando de ajuda de vocês eu tenho uma planilha na qual, eu preciso que uma coluna seja adicionada com o nome de "Categoria Financeira" e o que vai ser preenchido nessa coluna já se encontra em uma linha, escrita sempre do mesmo jeito "Categoria Financeira: "..."", e a palavra que eu preciso que preencha a coluna seria esse "..." que é a unica palavra que muda dia a dia, teria como isso? segue abaixo a planilha e alguns exemplos.

image.png.050694af669f7c594fe6cce0cc613096.png

ExportedReport.rar

Caso não tenha como ele apenas copiar essa palavra variavel, seria interessante se ele copiassse tudo e colocasse na coluna, já seria mais fácil para utilizar a planilha

Postado

@Gabriel Gallonetti Você pode usar fórmula para extrair essa informação, assim é só colocar na primeira linha (coluna AB) e arrastar,

=TRIM(IF(LEFT(A10;20)="Categoria Financeira";MID(A10;22;LEN(A10));AB9))

 

A fórmula vai testar o valor da célula e se tiver "Categoria Financeira" no início vai pegar o texto a seguir, caso contrário pega o da linha acima (isso é para repetir o texto após extrair a informação)

 

O valor 20 é quantidade de caracteres de "Categoria Financeira".

 

Postado

@Midori entendi, então acho que não seria isso, o que eu estou tentando chegar é fazer  o mais automatico possível que ele crie uma coluna nova e cole essa informação nela, (na nova coluna) e fazer isso do jeito menos manual possível. (mesmo que o que ele cole seja toda a sentença, porque como há mais de uma diferente, ele colaria na coluna respectiva) exemploimage.png.21841270c7b77a2a448e32b44112db59.png

Ele iria transformar categoria financeira em uma coluna nova, e dessa forma iria colocar a observação já na coluna certa, e quando ele encontrasse uma próxima categoria, ele iria colar a também correta na sua correspondente

Sub Macro1()
'
' Macro1 Macro
'

'
    Columns("F:F").Select
    Selection.Insert Shift:=xlToRight
    Range("F8").Select
    ActiveCell.FormulaR1C1 = "Categoria Financeira"
    Range("G8").Select
    Selection.Copy
    Range("F8").Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
End Sub
 

Esse é a macro que estou usando para criar a coluna nova. de categoria financeira

Categoria Financeira

 

 

Postado

@Gabriel Gallonetti A fórmula pode ficar automática se você deixar a planilha no formato de tabela (Insert > Table). Mas com macro dá para usar a mesma lógica,

Sub Macro()
    Const Texto     As String = "Categoria Financeira"
    Dim I           As Long
    Dim Categoria   As String
    
    For I = 10 To 823
        Categoria = Cells(I, [A1].Column)
        If Left(Categoria, Len(Texto)) = Texto Then
            Cells(I, [AB1].Column) = Mid(Categoria, 22, Len(Categoria))
        Else
            Cells(I, [AB1].Column) = Cells(I - 1, [AB1].Column)
        End If
    Next I
End Sub

 

Postado

Tb poderia ser obtido o mesmo resultado usando a ferramenta Power Query do Excel, mas p/ montar um exemplo você teria de reenviar sua planilha compactada pelo .zip nativo do Windows.
É interessante aprender mais s/ esta poderosa ferramenta do Excel p/ tratamento de dados, experimente!

 

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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...