• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Een tabel 'grootte' aanpassen met VBA

DutchOirs

Gebruiker
Lid geworden
30 sep 2009
Berichten
721
Goedenavond,

Zit met een vraagje.
Zet gegevens uit een Kasboek over van een Excel naar een Word document.
Dit werkt, kom alleen het probleem tegen van de grootte van de cellen.
Hij zet dus vanuit excel gegevens over met onderstaande code:

Code:
    With Worksheets("Kasboek")
      .Range(KBK1 & 45 & ":" & KBK6 & 81).Select:               ' onderste gedeelte van Kasboek
      Selection.Copy                                            ' kopieert deze maand Kasboek
      On Error Resume Next
      Set objWord = CreateObject("word.application")            ' http://www.vbaexpress.com/kb/getarticle.php?kb_id=81
      objWord.Application.ScreenUpdating = False
      objWord.Documents.Open WrdBestand
      objWord.Selection.Paste                                   ' zet copy Kasboek neer
      .Range(KBK1 & 45 & ":" & KBK6 & 53).Select:               ' selecteert de 8 regels van Tmp overzicht
      Selection.Copy                                            ' kopieert dit
      objWord.Selection.PasteSpecial xlPasteFormats             ' plakt alleen opmaak   indien beidde dan eerst opmaak
      objWord.Selection.PasteSpecial xlPasteValues              ' plakt alleen waarde   indien beidde dan eerst opmaak
      .Range(KBK1 & 54 & ":" & KBK6 & 84).Select:               ' selecteert de 30 regels van Omschrijving Kasboek
      Selection.Copy                                            ' kopieert dit
      objWord.Selection.PasteSpecial xlPasteFormats             ' plakt alleen opmaak   indien beidde dan eerst opmaak
      objWord.Selection.PasteSpecial xlPasteValues              ' plakt alleen waarde   indien beidde dan eerst opmaak
    End With

Hij doet dit in 2 x omdat het verschillende grootte kolommen zijn.
Desondanks wordt de tabel op eigen (word) inzicht ingedeeld naar grootte..
Wilde dit aansturen, door na het kopiëren de kolommen aan te passen met:
Code:
    With objWord
      .Item(1).Columns(1).Width = 2
      .Item(1).Columns(2).Width = 10
      .Item(1).Columns(3).Width = 80
      .Item(1).Columns(4).Width = 2
      .Item(1).Columns(5).Width = 30
      .Item(1).Columns(6).Width = 2
      .Item(1).Columns(7).Width = 40
      .Item(1).Columns(8).Width = 50
      .Item(1).Columns(9).Width = 40
      .Item(1).Columns(10).Width = 2
    End With
Maar helaas werkt dus niet.
Heeft iemand een idee hiervoor?

Alvast many thanks.
Vr. Gr.
Dutch
 
ook in 1924 houden we nog steeds van een voorbeeldbestandje.
 
Zelfs een eeuw later nog ;)
 
Laatst bewerkt:
Gegevens in Excel zet je met Docvariables in Word. Niet met kopiëren.
 
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan