13. marts 2006 - 10:10Der er
10 kommentarer og 1 løsning
Overførsel til Excel
I min database er funktionalitet som overfører udvalgte data til et Excel regneark. Nu er sagen den, at brugerne gerne vil have lavet rammer omkring dataene. Det klares p.t. med xlsheet.Cells(j, i + 1).Borders(xlEdgeTop).LineStyle = xlContinuous xlsheet.Cells(j, i + 1).Borders(xlEdgeBottom).LineStyle = xlContinuous xlsheet.Cells(j, i + 1).Borders(xlEdgeRight).LineStyle = xlContinuous xlsheet.Cells(j, i + 1).Borders(xlEdgeLeft).LineStyle = xlContinuous
som sætter rammer omkring de enkelte celler, når de udfyldes. Problemet er at genereringen performer ad H..... til! Er der en anden måde at formattere alle cellerne bagefter overførslen?
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.
Hvad med noget i stil med at huske start- og slutcellen og så: xlsheet.RangeRange(Cells(j, iStart), Cells(j, iSlut)).Select xlsheet.Selection.Borders(...
With xlApp .Visible = True .Workbooks.Add .Range("C3:F7").Select
With .Selection .Borders(xlDiagonalDown).LineStyle = xlNone .Borders(xlDiagonalUp).LineStyle = xlNone With .Borders(xlEdgeLeft) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With .Borders(xlEdgeTop) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With .Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With .Borders(xlEdgeRight) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With .Borders(xlInsideVertical) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With With .Borders(xlInsideHorizontal) .LineStyle = xlContinuous .Weight = xlThin .ColorIndex = xlAutomatic End With End With End With
Takker mange gange for hjælpen, forskellen på den kode jeg havde og din, er at du har fat i Application objektet, jeg havde fat i Spreadsheet objektet!
Der er dog dette problem: Jeg står ikke umiddelbart med et koordinat (som f.eks. A2:E8), men kun med start feltet (A2) og så slutkolonnenummer (varierer, f.eks. 5) og et slutrækkenummer (varierer, f.eks. 8.
Se mit svar 13/03-2006 17:16:47. Det kan omskrives til .RangeRange(Cells(jStart, iStart), Cells(jSlut, iSlut)).Select Det burde virke.
Der er ingen særlig Access VBA blandet ind her. Du kan bare optage en makro i Excel og så klippe/klistre koden over i Access. Du skal bare huske at smide det ind i din With blok og foranstille et punktum. Du ved, hvad jeg mener ;o)
Tak i øvrigt for point.
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.