Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Sidney_Marques

Geração de etiquetas no excel com número de volume e previsualização

Recommended Posts

Boa tarde!

Sou iniciante em VBA e estou construindo uma planilha geradora de etiquetas com código de barras.

Consegui fazer quase tudo na planilha, porém existe um campo na planilha de entradas que destina-se à quantidade de volumes de uma mesma nota fiscal que estão sendo recebidos, consegui até fazer com que a quantidade de etiquetas impressas seja igual ao número de volumes recebidos mas não consigo fazer com que no campo da etiqueta apareçam os volumes no formato 1 / 4, 2 / 4, 3 / 4 e 4 / 4 (considerando uma entrada com 4 volumes)

 

Será que alguém poderia me ajudar?

teste1.xlsx

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi, qual é o campo da etiqueta, que está se referindo? 

image.png.e0966a5d73a1de5e87e9fcf54e7d43a6.png

Compartilhar este post


Link para o post
Compartilhar em outros sites
  • Autor do tópico
  • Boa noite Basole!

    O campo volume deveria ser preenchido com 1/5.

    Na planilha "ENTRADAS" preencho o campo "N°de Volumes", criei a primeira macro fazendo com que apenas as linhas marcadas com na coluna S sejam copiadas para a planilha "PREETIQUETAS".

    Se rodar a macro perceberá que serão geradas 5 etiquetas, uma para cada volume, mas todas com 5 no campo volume. Gostaria que aparecesse 1/5, 2/5, 3/5, 4/5 e 5/5.

    Se tivesse na planilha "ENTRADAS" lançamentos com um único volume, deveria ser gerar 1 etiqueta com o campo "Volume" preenchido com 1/1 E assim por diante.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Boa noite, o arquivo (*.xlsx), que voce mandou não contem nenhuma macro. Para anexar aqui um arquivo com a extensão (*.xlsm), voce precisa compactar(*.zip), por exemplo. Ou fazer upload e colocar o link aqui.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
  • Autor do tópico
  • Boa noite Basole!

    Impressionante rapaz, ficou perfeito!!!

    Muito obrigado mesmo.... Parabéns pela disposição e comprometimento.

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Bom dia.

     

    Poderia nos ajudar com uma planilha similar, no caso criar etiquetas.

     

    Não consigo gerar a macro.

    Já criei o cadastro a seleção e a pré impressão o layout e a página de geração exatamente como esta o seu.

     

    Poderia criar o código de execução baseado neste layout.

     

    Por favor.

     

     

     

    CONTROLE DE ETIQUETAS.zip

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Ve se isso ajuda

     

    IMPORTANTE: 

     

    Se for usar em outra planilha sugiro copiar a guia layout para o arquivo original

     

    As celulas que recebem dados devem estar desbloqueadas

     

    Formatar Celulas> Proteção > Desmarque bloqueadas.

    CONTROLE DE ETIQUETAS.zip

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Ficou ótimo amigo.

     

    Poderia apenas deixar ele selecionar a impressora quando damos o comando Gerar Etiquetas? No momento ele já manda direto para a impressora padrão e não dá a opção de selecionar outra.

     

    Também seria possível ele gerar a quantidade exata de etiquetas de acordo com o número de volumes informados? No momento ele gera a mais, com etiquetas em branco.

     

     

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Troque o codigo que esta na planilha por este:

     

    Fiz uma pequena modificação para que não imprima uma folha em branco.


     

    Sub GerarEtiquetas()
    
    Dim WL As Worksheet
    Dim ShPI As Worksheet
    Dim ShPILinha As Long
    Dim WLLinha As Long
    Dim Contador As Long
    Dim TotalEtiquetas As Long
    
    Set ShPI = Sheets("PRE IMPRESSÃO")
    Set WL = Sheets("LAYOUT")
        ShPILinha = ShPI.Range("E" & Rows.Count).End(xlUp).Row
        WLLinha = 6
        
        
        For I = 21 To ShPILinha
        
            TotalEtiquetas = ShPI.Cells(I, 10).Value
            
            If ShPI.Cells(ShPILinha, 11).Value <> "" Then
            
            
            With WL
            
                .Range("D2").Value = ShPI.Cells(I, 8).Value
                .Range("K2").Value = ShPI.Cells(I, 8).Value
                .Range("B4").Value = ShPI.Cells(I, 9).Value
                .Range("I4").Value = ShPI.Cells(I, 9).Value
                .Range("E4").Value = ShPI.Cells(I, 7).Value
                .Range("L4").Value = ShPI.Cells(I, 7).Value
                .Range("B6").Value = ShPI.Cells(I, 5).Value
                .Range("I6").Value = ShPI.Cells(I, 5).Value
                .Range("D6").Value = ShPI.Cells(I, 6).Value
                .Range("K6").Value = ShPI.Cells(I, 6).Value
                .Range("D10").Value = ShPI.Cells(I, 8).Value
                .Range("K10").Value = ShPI.Cells(I, 8).Value
                .Range("B12").Value = ShPI.Cells(I, 9).Value
                .Range("I12").Value = ShPI.Cells(I, 9).Value
                .Range("E12").Value = ShPI.Cells(I, 7).Value
                .Range("L12").Value = ShPI.Cells(I, 7).Value
                .Range("B14").Value = ShPI.Cells(I, 5).Value
                .Range("I14").Value = ShPI.Cells(I, 5).Value
                .Range("D14").Value = ShPI.Cells(I, 6).Value
                .Range("K14").Value = ShPI.Cells(I, 6).Value
                .Range("D18").Value = ShPI.Cells(I, 8).Value
                .Range("K18").Value = ShPI.Cells(I, 8).Value
                .Range("B20").Value = ShPI.Cells(I, 9).Value
                .Range("I20").Value = ShPI.Cells(I, 9).Value
                .Range("E20").Value = ShPI.Cells(I, 7).Value
                .Range("L20").Value = ShPI.Cells(I, 7).Value
                .Range("B22").Value = ShPI.Cells(I, 5).Value
                .Range("I22").Value = ShPI.Cells(I, 5).Value
                .Range("D22").Value = ShPI.Cells(I, 6).Value
                .Range("K22").Value = ShPI.Cells(I, 6).Value
                .Range("D26").Value = ShPI.Cells(I, 8).Value
                .Range("K26").Value = ShPI.Cells(I, 8).Value
                .Range("B28").Value = ShPI.Cells(I, 9).Value
                .Range("I28").Value = ShPI.Cells(I, 9).Value
                .Range("E28").Value = ShPI.Cells(I, 7).Value
                .Range("L28").Value = ShPI.Cells(I, 7).Value
                .Range("B30").Value = ShPI.Cells(I, 5).Value
                .Range("I30").Value = ShPI.Cells(I, 5).Value
                .Range("D30").Value = ShPI.Cells(I, 6).Value
                .Range("K30").Value = ShPI.Cells(I, 6).Value
                .Range("D34").Value = ShPI.Cells(I, 8).Value
                .Range("K34").Value = ShPI.Cells(I, 8).Value
                .Range("B36").Value = ShPI.Cells(I, 9).Value
                .Range("I36").Value = ShPI.Cells(I, 9).Value
                .Range("E36").Value = ShPI.Cells(I, 7).Value
                .Range("L36").Value = ShPI.Cells(I, 7).Value
                .Range("B38").Value = ShPI.Cells(I, 5).Value
                .Range("I38").Value = ShPI.Cells(I, 5).Value
                .Range("D38").Value = ShPI.Cells(I, 6).Value
                .Range("K38").Value = ShPI.Cells(I, 6).Value
                .Range("D42").Value = ShPI.Cells(I, 8).Value
                .Range("K42").Value = ShPI.Cells(I, 8).Value
                .Range("B44").Value = ShPI.Cells(I, 9).Value
                .Range("I44").Value = ShPI.Cells(I, 9).Value
                .Range("E44").Value = ShPI.Cells(I, 7).Value
                .Range("L44").Value = ShPI.Cells(I, 7).Value
                .Range("B46").Value = ShPI.Cells(I, 5).Value
                .Range("I46").Value = ShPI.Cells(I, 5).Value
                .Range("D46").Value = ShPI.Cells(I, 6).Value
                .Range("K46").Value = ShPI.Cells(I, 6).Value
                
            End With
            
                For Contador = 1 To TotalEtiquetas
                
                        WL.Cells(WLLinha, 5).Value = Format(Contador, "000") & "/" & Format(TotalEtiquetas, "000")
                        WL.Cells(WLLinha, 12).Value = Format(Contador + 1, "000") & "/" & Format(TotalEtiquetas, "000")
                    
                    Contador = Contador + 1
                    WLLinha = WLLinha + 8
                    
                    If Contador Mod (12) = 0 _
                    Or Contador = TotalEtiquetas Then
                    
                    
                        With WL
                            
                            .PrintOut
                            .Range("E6").Value = ""
                            .Range("L6").Value = ""
                            .Range("E14").Value = ""
                            .Range("L14").Value = ""
                            .Range("E22").Value = ""
                            .Range("L22").Value = ""
                            .Range("E30").Value = ""
                            .Range("L30").Value = ""
                            .Range("E38").Value = ""
                            .Range("L38").Value = ""
                            .Range("E46").Value = ""
                            .Range("L46").Value = ""
                    
                        End With
                        
                        WLLinha = 6
                    
                    End If
                    
                Next Contador
                
            
            With WL
                On Error Resume Next
                .Protect
                .UsedRange = ""
                On Error GoTo 0
                .Unprotect
            End With
            
            End If
            
        Next I
    
    ShPI.Range("K21:K" & Rows.Count).Value = ""
    
    MsgBox "Etiquetas Impressas Com Sucesso!!", vbInformation, "Imprimindo Etiquetas...."
    
    
    End Sub

     

    Editado por DiF
    Insira o código usando o botão CODE <>

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Eu tentei gerar, mas ela não me deixa escolher a impressora, eu fiz igual a postada anteriormente no fórum acima.

     

    Consegue deixar igual?

    Como no layout para ver a impressão antes e imprimir?

    Com este código ela não imprimi uma por folha.

    Consegue me ajudar?

    Eu já configurei o tamanho para imprimir na zebra, pode ver se consegue deixar o layout como padrão para todas as impressões?

     

    Obrigado.

     

     

     

    CONTROLE DE ETIQUETAS IMPRESSÃO UNICA FOLHA.zip

    Editado por Turco
    Limpeza

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites
    Citação

    Eu tentei gerar, mas ela não me deixa escolher a impressora, eu fiz igual a postada anteriormente no fórum acima.

     

    Para escolher a impressora use o codigo abaixo:

    Application.Dialogs(xlDialogPrint).Show

    Se foi útil, clique em Curtir

    []s

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Oi pessoal alguém consegue fazer a mesma configuração nesta planilha...

    Usei como modelo a que o Bassole arrumou.

    Alguém consegue me ajudar?

    Compartilhar este post


    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






    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

    ×