08. marts 2002 - 09:54Der er
12 kommentarer og 1 løsning
BOF, EOF, "Bogmærke"?
Jeg bruger Excel til brevfletning og nogle gange får jeg nogle mærkelige advarsler med EOF, BOF, "ugyldigt bogmærke". Jeg har prøvet at gemme data i alle mulige formater (csv, txt, prn) for at fjerne al mulig "snask" (formatering, CR/LF).
Hva' kan jeg gøre for at data bliver ens? Jeg har mistanke om at der mangler nogle CR/LF nogle steder :-(
Nu forstår jeg ikke lige spm. helt men hvis ikke du kan få det til at virke med de andre formater så prøv at bruge dBaseIII (DBF3) format. Det er meget stabilt og gemmer ingen formateringer.
Jeg bruger den makro du lavede i går Sub del() x = Application.WorksheetFunction.CountA(Range("A:A")) y = Application.WorksheetFunction.CountA(Range("1:1")) If WorksheetFunction.Odd(Int(x / 2)) Then z = Int((x) / 2) + 1 Else z = Int(x / 2) Range(Cells(z + 1, 1), Cells(x + 1, y)).Cut Cells(2, y + 1).Select ActiveSheet.Paste Range(Cells(1, 1), Cells(1, y)).Copy Cells(1, y + 1).Select ActiveSheet.Paste End Sub
Der er 7783 rækker, men det går galt omkring 1480. Der bliver et hul og så kommer der data igen længere nede. Så makroen tror der ikke er flere rækker.
tællere rettet til: Sub del() x = Range("A65536").End(xlUp).Row - 1 y = Application.WorksheetFunction.CountA(Range("1:1")) If (x Mod 2) = 0 Then z = (x / 2) + 2 Else z = ((x + 1) / 2) + 2 Range(Cells(z, 1), Cells(x + 1, y)).Cut Cells(2, y + 1).Select ActiveSheet.Paste Range(Cells(1, 1), Cells(1, y)).Copy Cells(1, y + 1).Select ActiveSheet.Paste End Sub
Nu går det helt galt - række 7782, 7783, 7784 bliver stående hvor de er.
Jeg skal prøve at se om jeg kan forklare det lidt bedre. Der er data i 7783 rækker (det er minus kolonneoverskriften). Efter kørsel af din makro skal der være 3892 rækker i "første hold" og 3891 rækker i "andet hold". Det er vigtigt at rækkefølgen af data ikke ændres fordi data først bruges til brevfletning og print af breve i A4 format og efter kørsel af makroen til brevfletning og print af svarkort hvor der 2 stk. på 1 A4. Herefter skæres svarkortene over og lægges bag hinanden. Breve og svarkort kuverteres og her skulle navn, adresse osv. jo gerne være den samme på begge dele. En lang forklaring - håber det hjælper :-)
Har du mulighed for at zippe dine data og sende til mig ? tommybak@netscape.net Her kører den nemlig godt nok, så jeg vil gerne se om der er et eller andet snavns der skal korrigeres for.
Ok, jeg har fundet fejlen. Du har flere data i kolonne B end i Kolonne A, men makroen checker på kolonne A. Det ændrer vi da bare. x = Range("A65536").End(xlUp).Row - 1 ændres til x = Range("B65536").End(xlUp).Row - 1
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.