USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Mala Direta no Word
Bet
SÃO PAULO
SP - BRASIL
Postada em 16/06/2004 11:26 hs         
Bom dia!

Estou usando o VB6, SQl Server e Office2000
 
Gostaria q através do VB6 gerasse umas etiquetas com mala direta no Word... como eu faço isso??
 
Desde já obrigada

Bet.Veloso
     
Los Zeus®
Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 16/06/2004 13:03 hs            
É um pouco trabalhoso isso....bom bolei alguma coisa pra vc ter uma idéia...lá vai...
 
Tabela.MoveMin  'Movi a Tabela pro 1º registro
Dim Vnum As Integer
Vnum = 1
var_path = "Etiqueta.doc"    'aqui eu to criando o arquivo Word
        Open App.Path & "  " & var_path For Output As #1
        On Error Resume Next
        While Tabela.EOF = False
            If Vnum = 11 Or Vnum = 22 Then  'no caso ele gera 11 etiquetas em 1 folha
                Print #1, Tabela.Fields!nome
                Print #1, Tabela.Fields!dtsegunda & " - " & Tabela.Fields!produto
                Print #1, Tabela.Fields!grsegunda & "Kg" 
                Print #1, "Total " & Tabela.Fields!totsegunda
                Vnum = Vnum + 1
                Tabela.MoveNext
            Else 
'nessa parte é quando atinge 11 etiquetas ai ela dá o espaço necessario para ficar td alinhado....
                Print #1, Tabela.Fields!nome
                Print #1, Tabela.Fields!dtsegunda & " - " & Tabela.Fields!produto
                Print #1, Tabela.Fields!grsegunda & "Kg" 
                Print #1, "Total " & Tabela.Fields!totsegunda
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Vnum = Vnum + 1
                Tabela.MoveNext
            End If
        Wend
        Close #1
MsgBox "Etiqueta pronta...", , ""
Vnum = 1
End Sub
 
 
Bom....não estranhe os dados que eu coloquei é que eu aproveitei um BD de comida que eu tinha aqui....esse exemplo ele monta uma etiqueta embaixo da outra, pra colocar lado a lado vc teria que ir concatenando.....deve haver uma forma mais fácil mas essa quebra o galho....se bolar algo novo te falo....
Espero ter te dado uma luz...hehehe
 
Abraço
TÓPICO EDITADO
   
Los Zeus®
Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 16/06/2004 13:14 hs            
Bom não consigo editar o tópico então aqui está a correção...
É MoveMin lá em cima pra ir para o 1º registro
 
Cara muito estranho eu coloco Move "F I R S T" e ele muda pra MoveMin sozinho ...hehe vai entender....
 
É isso...rs
T+
TÓPICO EDITADO
   
Los Zeus®
Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 16/06/2004 13:22 hs            
É um pouco trabalhoso isso....bom bolei alguma coisa pra vc ter uma idéia...lá vai...

Tabela.MoveMin  'Movi a Tabela pro 1º registro
Dim Vnum As Integer
Vnum = 1
var_path = "Etiqueta.doc"    'aqui eu to criando o arquivo Word
        Open App.Path & "" & var_path For Output As #1
        On Error Resume Next
        While Tabela.EOF = False
            If Vnum = 11 Or Vnum = 22 Then  'no caso ele gera 11 etiquetas em 1 folha
                Print #1, Tabela.Fields!nome
                Print #1, Tabela.Fields!dtsegunda & " - " & Tabela.Fields!produto
                Print #1, Tabela.Fields!grsegunda & "Kg"
                Print #1, "Total " & Tabela.Fields!totsegunda
                Vnum = Vnum + 1
                Tabela.MoveNext
            Else  
'nessa parte é quando atinge 11 etiquetas ai ela dá o espaço necessario para ficar td alinhado....
                Print #1, Tabela.Fields!nome
                Print #1, Tabela.Fields!dtsegunda & " - " & Tabela.Fields!produto
                Print #1, Tabela.Fields!grsegunda & "Kg"
                Print #1, "Total " & Tabela.Fields!totsegunda
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Print #1, ""
                Vnum = Vnum + 1
                Tabela.MoveNext
            End If
        Wend
        Close #1
MsgBox "Etiqueta pronta...", , ""
Vnum = 1
End Sub


Bom....não estranhe os dados que eu coloquei é que eu aproveitei um BD de comida que eu tinha aqui....esse exemplo ele monta uma etiqueta embaixo da outra, pra colocar lado a lado vc teria que ir concatenando.....deve haver uma forma mais fácil mas essa quebra o galho....se bolar algo novo te falo....
Espero ter te dado uma luz...hehehe

Desculpa postar tantas vezes a mesma coisa é que mudou algumas coisas no site e eu estou um tempo sem acessar...espero que agora dê certo...hehe

Abraço
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página