[VBA] Statusbalk in word

Pagina: 1
Acties:

  • ronny
  • Registratie: Februari 2001
  • Laatst online: 16-02-2024

ronny

Trotse vader

Topicstarter
Mijn vriendin vroeg of ik een WP marco naar Word2000 wou over zetten.
Nu ben ik niet zo'n held in het programeren, maar dacht dat het wel zou lukken.

Onder WP is echter iets als WP-script gebruikt en dat kent wordt weer niet.
Nou is dit de oude code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Application (WordPerfect; "WordPerfect"; Default; "NL")
DECLARE Waarde[1]
ASSIGN (Waarde[1]; 0)
GETNUMBER(NUM; "Geef de waarde (0-750): ")
TYPE (TEXT: NUM)
POSTABLETOPCELLNEXT ()
IF(NUM>=2)
  TEXTCOLOR(RED: 0; GREEN: 255; BLUE: 0)
  REPEAT
    ASSIGN (Waarde[1]; Waarde[1] + 1)
    IF(Waarde[1]=5)
      TEXTCOLOR(RED: 255; GREEN: 125; BLUE: 0)
    ENDIF
    IF(Waarde[1]=8)
      TEXTCOLOR(RED: 255; GREEN: 0; BLUE: 0)
    ENDIF
    TYPE (TEXT: "")
  UNTIL(Waarde[1]>NUM/23)
  TEXTCOLOR(RED: 0; GREEN: 0; BLUE: 0)
  SELECTLINEBEGIN()
  FONTSIZE(6P)
  POSLINEDOWN ()
  POSTABLETOPCELLPREVIOUS ()
ELSE
  POSLINEDOWN ()
  POSTABLETOPCELLPREVIOUS ()
ENDIF

Nu ben me een beetje aan het inlezen over hoe VBA werkt (dit lijkt me de enige mogelijkheid, of niet?)
Het is dus de bedoeling dat er een getal wordt gevraagt en dat aan de hand daar van een balk wordt getekend.
maar ik kan niet vinden hoe ik een balk kan weer geven die groter wordt naar mate het getal groter wordt. Tevens moet de balk eerst een stuk groen worden en boven een bepaalde waarde oranje en tenslotte rood.
Hierdoor is het in een oog opstag duidelijk als er iets niet goed is en hoeveel het over de marge loopt.

[ Voor 3% gewijzigd door ronny op 11-09-2003 14:24 ]

specs werkpaard Youngtimer Touring Car Campionship


  • curry684
  • Registratie: Juni 2000
  • Laatst online: 13-08 16:46

curry684

left part of the evil twins

VBA en WP-script zijn not even remotely compatible, dus ik denk dat je nogal op een dood spoor zit. Het ding waar je naar zoekt heet overigens een 'progressbar'.

Professionele website nodig?


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Het idee van P&W is dat mensen die problemen hebben met programmeren hulp kunnen vragen, nadat ze zelf van alles hebben geprobeerd en hebben opgezocht. Helaas mis ik dat een beetje in je post.

Datgene wat je vraagt is zeer waarschijnlijk wel mogelijk, echter zul je eerst zelf een en ander moeten proberen voor we je echt kunnen helpen.

Wat heb je al geprobeerd? Waar ging het mis? Heb je al gezocht, en zo ja: waar en werkte dat? En als dat niet werkt, waarom dan niet? Enzovoorts enzovoorts....

Overigens nog even een vraag over je probleem: wil je alleen een statusbalk tonen, of moet die in een apart scherm getoond worden en mag dat scherm verdwijnen zodra de statusbalk vol is?

My personal website


  • ronny
  • Registratie: Februari 2001
  • Laatst online: 16-02-2024

ronny

Trotse vader

Topicstarter
Dat de beiden niet uitwisselbaar zijn was ik al achtergekomen.
In eerste instantie dacht ik dat is knippen en plakken, maar daar was ik al gauw achter dat dat niet ging.
toen een Boek gekocht "sleutelen met VBA"
dus ik weet hoe ik de inputBox enz moet maken maar kom geen "progress bar" tegen en verder op internet kon ik het ook niet vinden.
Ik zal nog eens zoeken naar progess bar. Misschien dat ik er dan wel uitkom.

Dat WP script heb ik er bij gedaan om een beeld te geven wat ongeveer de bedoeling is.

specs werkpaard Youngtimer Touring Car Campionship


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

Een progress bar in 3 stappen:

1. Maak de werkbalk "Control Toolbox" zichtbaar
2. Klik op de onderste knop (More controls)
3. Selecteer een van de mogelijkheden om een progress bar te maken (Bijvoorbeeld Microsoft ProgressBar Control)

Klaaaaaar! ;)

[ Voor 8% gewijzigd door OZ-Gump op 11-09-2003 15:27 ]

My personal website


  • ronny
  • Registratie: Februari 2001
  • Laatst online: 16-02-2024

ronny

Trotse vader

Topicstarter
Ik maak vanavond thuis wel een paar schermafdrukken om het een en ander duidelijk te maken

specs werkpaard Youngtimer Touring Car Campionship


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 26-06 10:37

OZ-Gump

terug van weggeweest

ronny schreef op 11 September 2003 @ 15:43:
Ik maak vanavond thuis wel een paar schermafdrukken om het een en ander duidelijk te maken
Als je nou eerst eens probeert wat ik in mijn vorige post heb gezet? Op die manier kan ik hier dus redelijk simpel een progressbar vinden. Jij geeft aan dat je hem niet kunt vinden, ik geef aan waar hij staat. Logische volgende stap lijkt me dat jij gaat kijken of je hem daar ook kunt vinden?

My personal website


  • slm
  • Registratie: Januari 2003
  • Laatst online: 25-06 12:45

slm

Lijkt me beetje raar om de TS te gaan wijzen op een standaard progressbar terwijl hij (of liever gezegd zijn vriendin) daar waarschijnlijk niets aan heeft. Zo'n standaard bar kleurt niet groen, daarna oranje en daarna rood. Bovendien hoeft het gezien de macro niet eens flashy realtime te wijzigen, maar aan de hand van met de hand ingevoerde data een plaatje opleveren.

Je kan dit dan ook beter gewoon 1 op 1 overnemen in de Word VBA macro. Lees de WP macro als pseudo code en je komt er prima uit denk ik.

/Edit:
Nou vooruit, ik had toch even niets te doen... Hier dan een quick & dirty macrootje om je op weg te helpen. Misschien kan je het zelf nog verbeteren door tekens te gebruiken ipv tablecolumns. Je moet nu namelijk een enter zetten na de tabel anders denkt Word dat het bij de vorige tabel hoort. ('denkt Word' 8)7 )

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim Waarde, B, X As Integer
Waarde = InputBox("Waarde", "Geef de waarde (0 - 750)", 0)
B = Round(Waarde / 23)
If B >= 2 Then
 ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=1, _
 NumColumns:=1, DefaultTableBehavior:=wdWord9TableBehavior, _
 AutoFitBehavior:=wdAutoFitFixed
 Selection.Tables(1).Columns.PreferredWidth = CentimetersToPoints(0.29)
 Selection.Tables(1).Shading.BackgroundPatternColor = wdColorBrightGreen
End If
For X = 2 To B
 Selection.InsertColumnsRight
 If X = 5 Then Selection.Cells.Shading.BackgroundPatternColor = wdColorLightOrange
 If X = 8 Then Selection.Cells.Shading.BackgroundPatternColor = wdColorRed
Next X
Selection.MoveDown Unit:=wdLine, Count:=1
B = 0
X = 0
Waarde = 0

[ Voor 52% gewijzigd door slm op 11-09-2003 21:28 ]

To study and not think is a waste. To think and not study is dangerous.


  • ronny
  • Registratie: Februari 2001
  • Laatst online: 16-02-2024

ronny

Trotse vader

Topicstarter
OZ-Gump:
Ik had het al geprobeerd op het werk. Alleen zoals slm zei
was het niet helemaal wat ik zocht. dus dacht ik zal wel een plaatje maken om duidelijk te maken.
Maar volgens mij heeft slm mijn probleem al grotendeels op gelost. _/-\o_

Alleen ik had eerst hier de macro gemaakt en een schreenshot dus zal hem nog wel ff plaatsen

Afbeeldingslocatie: http://217.123.211.234/voorbeeld.bmp

sorry voor de kwaliteit maar ik krijg hem op dit momen niet beter
in paint lijkt het goed maar als ik hem op de server zet blijt er niets van over
want als ik hem in GGlimp open is het ook niet om aan te zien
zal morgen nog eens proberen
nu eerst een kijken of ik er met de code van slm uit kom.

specs werkpaard Youngtimer Touring Car Campionship

Pagina: 1