MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Operação invalida CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)

    Compartilhe

    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    [Resolvido]Operação invalida CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)

    Mensagem  biligo em Qui 20 Nov 2014, 09:43

    Boas pessoal,

    Procurei na net e encontrei apenas 1 tópico referente a este erro, mas que parecia não se adequar ao método ao qual estou utilizando.

    Bom estou utilizando o seguinte vba:

    Código:
        Dim iArq As Long
        Dim cns As Recordset
        Dim Servico As String
        Dim Descricao As String
        Dim Preco As String
        
        
        iArq = FreeFile
        
        Open "C:\Orçamento.txt" For Output As iArq
        
            Set cns = CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)
            Do While Not cns.EOF
            If cns("IdOrdem") = Me.IdOrdem Then
            Servico = ""
            Servico = Servico & cns("Servico")
            Descricao = ""
            Descricao = Descricao & cns("Descricao")
            Preco = ""
            Preco = Preco & cns("Preco")
            Preco = Format(Preco, "R$ #.00")
            End If
            cns.MoveNext
            Loop
        
        Print #iArq, "São Paulo,"; Day(Date); "de "; MonthName(Month(Date)); " de"; Year(Date); "."
        Print #iArq, ""
        Print #iArq, "Serviço(s):"
        Print #iArq, ""
        Print #iArq, Servico; ": "; Descricao
        Print #iArq, ""
        Print #iArq, "Preço(s):"
        Print #iArq, Servico; ".............................."; Preco



        Close #iArq
        
        MsgBox "Criado com sucesso"

    O erro me é gerado devido a esta utilização Set cns = CurrentDb.OpenRecordset("cnsTabela", dbOpenTable), mas sem ela
    o meu resultado sera apenas 1 campo de cada coluna da consulta.

    Alguém saberia como resolver esta questão?

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2507
    Registrado : 29/06/2012

    Re: [Resolvido]Operação invalida CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)

    Mensagem  Noobezinho em Qui 20 Nov 2014, 12:07

    Antonio

    Experimente:

    Set cns = CurrentDb.OpenRecordset("cnsTabela", dbOpenDynaset)

    Caso não resolva, explique esse dados que estão na tabela, ainda está no formulários onde tem o botão para imprimir esse
    orçamento?

    Se sim, podemos usar o RecordSetClone do formulário, ao invés de buscar na tabela.


    Abraços

    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

    biligo
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 181
    Registrado : 10/04/2014

    Re: [Resolvido]Operação invalida CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)

    Mensagem  biligo em Qui 20 Nov 2014, 20:10

    Boas galera,

    após alguns dias e mais de 16h seguidas (to morto mesmo T_T) tentando resolver o mesmo assunto consegui.

    Código:
        Dim iArq As Long
        Dim cns As Recordset
        Dim Servico As String
        Dim Descricao As String
        Dim Preco As String
       
       
        iArq = FreeFile
       
        Open "C:\Orçamento.txt" For Output As iArq
               
        Print #iArq, ""
        Print #iArq, "São Paulo,"; Day(Date); "de "; MonthName(Month(Date)); " de"; Year(Date);
        Print #iArq, "Serviço(s):"
        Print #iArq, ""
       
        Set cns = CurrentDb.OpenRecordset("cnsTabela")
            Do While Not cns.EOF
            Servico = ""
            Servico = Servico & cns("Servico")
            Descricao = ""
            Descricao = Descricao & cns("Descricao")
        Print #iArq, Servico; ": "; Descricao
                cns.MoveNext
            Loop
       
        Print #iArq, ""
        Print #iArq, "Preço(s):"
       
          Set cns = CurrentDb.OpenRecordset("cnsTabela")
            Do While Not cns.EOF
            Servico = ""
            Servico = Servico & Right(String(32, " ") & cns("Servico"), 32)
           
            Preco = ""
            Preco = Preco & cns("Preco")
            Preco = Format(Preco, "R$ #.00")
           
        Print #iArq, Servico; Space(3); Preco
                cns.MoveNext
            Loop




        Close #iArq
       
        MsgBox "Criado com sucesso"

    A questão era que as consultas devem estar entre o texto se não ocorria aquele fato e não era possível exibir o próximo,
    meio ridículo mas quando se move alguns campos do vba para "arrumar o layout" ocorrem erros bestas como estes que te
    deixam dias de dor de cabeça.

    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2507
    Registrado : 29/06/2012

    Re: [Resolvido]Operação invalida CurrentDb.OpenRecordset("cnsTabela", dbOpenTable)

    Mensagem  Noobezinho em Qui 20 Nov 2014, 20:33

    Legal que tenha conseguido Wink

    Lavou a alma né? hehehe

    Valeu pelo retorno!!

    Boa sorte


    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

      Data/hora atual: Sex 09 Dez 2016, 07:41