Vraag


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Mijn vraag
Is het mogelijk om in een tabel met een bepaalde waarde automatisch te laten veranderen in een achtergrondkleur. Bijvoorbeeld een cel heeft de waarde groen (groen is tekst) en dat dit dan automatisch gecorrigeerd wordt naar een achtergrondkleur groen.

Relevante software en hardware die ik gebruik
WORD 2007

Wat ik al gevonden of geprobeerd heb
Wel gevonden via optie-->autocorrectie via zoek en vervangen.

Alle reacties


Acties:
  • +1 Henk 'm!

  • FoxLenny
  • Registratie: Februari 2008
  • Laatst online: 11-09 11:52
Eerste wat me te binnen schiet is deze presentatie van Matt Parker :+


Maar dat is volgens mij prima te doen met voorwaardelijke opmaak/conditional formatting?

[ Voor 7% gewijzigd door FoxLenny op 21-05-2019 17:46 ]


Acties:
  • 0 Henk 'm!

  • Pjottski
  • Registratie: Maart 2001
  • Laatst online: 11-09 18:08

Pjottski

🦍 Monkey 🦍

Volgens mij zul je dan wel gebruik moeten maken van Excel.
Daar kan je met voorwaardelijke opmaak dit wel voor elkaar krijgen.

Dit is mijn uitspraak en daar zult u het mee moeten doen


Acties:
  • 0 Henk 'm!

  • brtk
  • Registratie: November 2006
  • Laatst online: 23:10
Tabel opmaken in Excel met conditional formatting en daarna in het Word document plakken.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Bedankt voor jullie reactie.
Ben juist op zoek of het mogelijk is om het gelijk in WORD te realiseren.
Dan hoef je geen extra handelingen te verrichten om het via Excel te kopiëren.
Het document is namelijk een samenvoegbestand en het aantal rijen kan redelijk veel zijn. De betreffende kolom kan de waarde groen, geel en rood bevatten. Wil het sjabloon automatiseren zodat je het niet visueel moet controleren en aanpassen.

Maar misschien zit deze mogelijkheid niet in WORD.

Acties:
  • 0 Henk 'm!

  • Sirhc_95
  • Registratie: December 2012
  • Laatst online: 00:35
Misschien kan je in Excel conditional formatting instellen op je source data, dan je Excel worksheet naar je Word file laten linken? Vrees alleen wel dat je layout dan naar de knoppen is / alleen in Excel te editen.

Acties:
  • 0 Henk 'm!

  • brtk
  • Registratie: November 2006
  • Laatst online: 23:10
Dan zou je een VBA script kunnen maken voor conditional formatting direct in Word, bijvoorbeeld op deze wijze:

https://answers.microsoft...c6-4d1f-9cc6-99410a7fb02d

Een andere optie zou kunnen zijn om het Excel document als een OLE Object in je Word file te plaatsen.

Acties:
  • 0 Henk 'm!

  • dix-neuf
  • Registratie: Juli 2018
  • Niet online
Als je het beslist in Word wil doen, lijkt het mij het eenvoudigst om in Word een Excel-tabel in te voegen. Je blijft dan in Word werken, maar kunt de voorwaardelijke opmaak van Excel gebruiken. Om een Exceltabel in Word in te voegen: Kies in het menu van Word: Invoegen, klik op het zwarte pijltje onder Tabel, en kies in het dan verschijnende venster onderaan: Excel-werkblad.

Acties:
  • +1 Henk 'm!

Verwijderd

Topicstarter
Beste brtk,
Ik heb geen verstand van VBA maar met de beschrijving van de link heb ik het wel werkend gekregen zoals het in de voorbeeld is weergegeven. Helaas heeft het voorbeeld betrekking op grootte van cijfers.
Weet jij misschien nog een voorbeeld m.b.t. tekst?
Of hoe ik de script moet aanpassen?

Overige personen die gereageerd hebben, bedankt voor jullie reactie.

Acties:
  • 0 Henk 'm!

  • brtk
  • Registratie: November 2006
  • Laatst online: 23:10
Ik ben ook geen VBA specialist, maar ik denk dat je de in de code zal moeten aanpassen dat het om tekst gaat, zal waarschijnlijk de voorwaarde "IsNumeric" zijn die aangepast moet worden naar "IsText" of iets dergelijks.

Wellicht kan je er met wat hulp van Google uitkomen. Of deze link: https://stackoverflow.com...ting-in-word-as-per-excel

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub colourSelectedTable()
Dim c As Word.Cell
If Selection.Information(wdWithInTable) Then
  For Each c In Selection.Tables(1).Range.Cells
    If IsNumeric (Left(c.Range.Text, Len(c.Range.Text) - 1)) Then
      If Val(c.Range.Text) < 0 Then
        c.Shading.BackgroundPatternColor = wdColorRed
      ElseIf Val(c.Range.Text) >= 3 Then
        c.Shading.BackgroundPatternColor = wdColorGreen
      Else
        c.Shading.BackgroundPatternColor = wdColorYellow
      End If
    Else ' set non-numeric to White
      c.Shading.BackgroundPatternColor = wdColorWhite
    End If
  Next
End If
End Sub
Pagina: 1