miguas
Power Member
Boas
Tenho uma aplicação em access em que preciso de criar uma copia de vários registos interligados.
Na rotina de vba estou a utilizar o seguinte código:
Set rslocal = CurrentDb.OpenRecordset("Tabela", dbOpenTable)
rslocal.index
rslocal.addnew
o problema vem aqui, pois se eu consultar o
rslocal("Chave Primária") nesta fase
aparece um valor já existente e a mensagem de erro que recebo diz isso mesmo ( não pode introduzir dados pois iria criar entradas repetidas num campo indexado sem repetição)
Se eu utilizar o mesmo código a apontar para uma outra tabela ou mesmo uma cópia desta mesma tabela o rslocal("Chave Primária") já me dá o próximo index livre.
Há alguma forma de consolidar ( algo como um rebuild ou semelhante sem perder os dados/códigos de chave primária actuais) a chave primária da tabela para que seja possível utilizar este método?
Ou tenho de fazer uma cópia da tabela e alterar em todas as querys,relações,forms, etc...??
Obrigado
Tenho uma aplicação em access em que preciso de criar uma copia de vários registos interligados.
Na rotina de vba estou a utilizar o seguinte código:
Set rslocal = CurrentDb.OpenRecordset("Tabela", dbOpenTable)
rslocal.index
rslocal.addnew
o problema vem aqui, pois se eu consultar o
rslocal("Chave Primária") nesta fase
aparece um valor já existente e a mensagem de erro que recebo diz isso mesmo ( não pode introduzir dados pois iria criar entradas repetidas num campo indexado sem repetição)
Se eu utilizar o mesmo código a apontar para uma outra tabela ou mesmo uma cópia desta mesma tabela o rslocal("Chave Primária") já me dá o próximo index livre.
Há alguma forma de consolidar ( algo como um rebuild ou semelhante sem perder os dados/códigos de chave primária actuais) a chave primária da tabela para que seja possível utilizar este método?
Ou tenho de fazer uma cópia da tabela e alterar em todas as querys,relações,forms, etc...??
Obrigado