15. februar 2008 - 10:38Der er
75 kommentarer og 1 løsning
Flytte data fra post til post ved hjælp af knap
Hej Eksperter Jeg skal bruge en knap der kan flytte indholdet fra fire felter i en post og over i en anden post fælles for posterne er at de har samme ID nummer, så den skal finde den post der har samme ID nummer som den post man står i også flytte indholdet fra de fire felter. Håber i forstår og at der er nogen der kan hjælpe
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Ved godt det lyder lidt mærklig men det er samme tabel som hedder "Kalibrerings resultater" og mine felter hedder [Fejlgrænse] [Norm id] [Gentagelses nøj] [Stamkort]
den skal tage det fra den første post der blev oprettet med det id nummer også året efter skal den opdater de fire felter den skal ikke kopier helst flytte data fra den gamle post også over til den nye post felter indholder nogle regneark der bliver opdateret (nå men lang forklaring)
Da jeg antager at du vil beholde hele eller dele af den opringelige post/række ( den du flytter fra ), kan du efterfølgende benytte en opdateringsforespørgsel til at blankstille den 4 felter ( kræver at du har en unik værdi der identificerer hvilken post der er tale om )
Ja jeg får to ens poster men de har jo hver deres autoløbe nummer og dataerne i posten er heller ikke ens kun lige når de fire felter bliver flyttet men i de felter er der ole-objekter som så bliver opdater efterfølgende Så den skal jo så tage det fra den med det mindst autoløbe nummer
15/02-2008 11:06:29 ja res. i den gamle post skal gemmes på nær de fire felter så jo efter lades blanke hvis dataerne bliver flyttet ikke sand og det unikke er autoløbe nummeret
Du skal benytte en ekstra forespørgsel til at identificere de rækker der skal nulstilles :
SELECT First([Kalibrerings resultater].AutoLøbenr) AS FirstOfAutoLøbenr, Count([Kalibrerings resultater].ID) AS CountOfID FROM [Kalibrerings resultater] HAVING (((Count([Kalibrerings resultater].ID))=2));
Herefter benyttede du denne til at nulstille de rækker som er i denne ekstra forespørgsel
undskyld forstår ikke helt men det er nok mig det er galt med der er ikke noget der skal nulstilles hvordan skal vda koden i knappen se ud hvis jeg skal flytte/klippe data ud fra de fire felter også ind i den nye post i de samme fire felter (eller så enkel kan det måske ikke gøres)
oki oki 1 Når du siger kopier A til B mener du så hele posten eller kun de fire felter 2 A er ikke identisk med B. B det er en ny post med en nye res. men i A er der fire felter der skal flytters/kopiers til B jeg er ikke så hår til VBA/SQL-kode så hvis du vil vise et eks på hvordan vba koden skal se ud vil det være kanon
Det kommer lidt an på hvorledes ( din proces ) er ... Mugs version er baseret på at du foretager ændringen "on-the-fly" post for post, og du kan se/følge ændringen direkte, hvor min version mere er rettet imod en generel opdatering af hele databasen på een gang ... hvad foretrækker du ?
det skal være din version generel opdatering af hele databasen på en gang så det kun er en knap der skal laves en gang og som virke uanset hvilken post man står i
jeg opdater lige fra 15/02-2008 12:16:55 1 Når du siger kopier A til B mener du så hele posten eller kun de fire felter 2 A er ikke identisk med B. B det er en ny post med en nye res. men i A er der fire felter der skal flytters/kopiers til B jeg er ikke så hår til VBA/SQL-kode så hvis du vil vise et eks på hvordan vba koden skal se ud vil det være kanon
strSQL = "Delete * from [Kalibrerings resultater Temp];" db.Execute strSQL
'Identificer A som skal nulstilles som kopieres til midlertidig fil DoCmd.SetWarnings False DoCmd.OpenQuery "qryIdent_A", acViewNormal, acReadOnly DoCmd.SetWarnings True
Som supplement til denne kode er der pårettet en tabel kaldet :
Kalibrerings resultater Temp
Denne indeholder reelt kun AutoLøbenr
Herudover er der en tilføjelsesforespørgsel kaldet :
qryIdent_A
indeholdende denne SQL :
INSERT INTO [Kalibrerings resultater Temp] ( AutoLøbenr ) SELECT First([Kalibrerings resultater].AutoLøbenr) AS AutoLøbenr FROM [Kalibrerings resultater] GROUP BY [Kalibrerings resultater].Fejlgrænse, [Kalibrerings resultater].[Norm id], [Kalibrerings resultater].[Gentagelses nøj], [Kalibrerings resultater].Stamkort HAVING ((([Kalibrerings resultater].Fejlgrænse) Is Not Null) AND (([Kalibrerings resultater].[Norm id]) Is Not Null) AND (([Kalibrerings resultater].[Gentagelses nøj]) Is Not Null) AND (([Kalibrerings resultater].Stamkort) Is Not Null) AND ((Count([Kalibrerings resultater].ID))>=2));
undskyle men tror måske det er mugs version jeg skal bruge så det er en opdatering der sker post for post for det er ikke alle poster der skal opdateres på engang det er kun den post man står i med andre ord hver gang man har fat i et nyt værktøj så er det fire felter for det værktøj der skal flyttes/kopiers vender nok først tilbage mandag hvor der er lidt tid igen ;O)
og til det her siger den compile error DoCmd.OpenForm "Stamkort Skydelære" Måleværktøjer Stamkort!Stamkort Skydelære![Værktøjs NR].SetFocus DoCmd.FindRecord Me![Værktøjs NR]
den er sendt som en zip fil og har prøvet at sende den hjem til mig selv og har modtaget den, jeg har heller ikke fået nogen besked om at den ikke er gået igennem den er sendt til 'mugs(tast alt Gr 2)mail.dk' men prøver lige igen når du har bekræftet denne E-mail adr.
Lad od bare blive her. Men jeg tror ikke jeg kan løse dit problem. Du vil have kopieret en graf til en ny post, og når jeg debugger og lader VBA skrive variablerne til imediate vinduet, kører det fint med de 3, men grafen betår udelukkende af nogle uforståelige tegn.
oki jeg prøve at lave en lille ny db hvor der kun lige er det i vi skal bruge også sender jeg den til dig når jeg lige får tid engang i næste uge jeg takker for toldmodigheden ;o)
OK - Men der er jo en anden ting. Når vi isolerer post 002193 eller hvilkien det bu var, kom der 2 poster frem, og du vil have data til til den ikke synlige post. Hvordan kan Access vide, hvilken post der skal modtage de nye data?
jeg ved det ikke det er derfor jeg spørger om hjælp men jeg tror jeg giver op ser om der kan være andre måder at løse det på men tak for den hjælp du har givet mig selvom det ikke lykkes
kommer med et nyt spørgsmål når jeg har fundet en anden måde
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.