I have owned MS 6.2 for years but have never really used it for any complex macros. Could someone please help me write a macro for this application?
PROBLEM: I have a WORD97 file (Table.doc) containing a table with 3 columns (A, B, and C) and 600 rows. The cells in Column A are initially all blank. Each cell in Columns C and D contains a 6-digit number.
I want the macro to:
1. Check to see if the number in cell B1 appears anywhere in Column C.
If it does, then I want to place a mark (X) in cell A1
If the number in B1 does not appear anywhere in Column C then I want to place a different mark (Y) in cell A1.
2. Then I want to repeat the check-and-mark operation for the numbers in cells B2, B3, …, B600.
In particular, what command do I use to tell MS to:
a. Goto cell B1 in file Table.Doc?
b. Highlight the number in that cell?
c. Then go to Column C and find that same number in Column C
d. Print an X or a Y in cell A1?
Thanks. …wdc
Macro for a WORD97 table
Moderators: Dorian (MJT support), JRL
I agree with Me_again. On the other hand I needed something else to think about over lunch today and this seemed like a good diversion.
This will work if the table is set up as you described. Column A is empty,
Column B has data and each column B item is compared to each column C item. If there is a match, an "X" is written in column A in the column B match row. If there is not a match found a "Y" is written in column A in the column B non-match row.
- Paste this script into a macro and assign a "hot key" to the macro.
- Open your Word document
- select a table item
- press the hot key combination
- Wait
- Be careful not to lose focus on the word document
With 600 items this will take a while. Excel would do this in seconds, this macro will take forever by comparison.
This will not work in Macro Scheduler version 6. You will need to upgrade or at least download the latest evaluation version.
Lunch hour is over.
Good Luck,
Dick
This will work if the table is set up as you described. Column A is empty,
Column B has data and each column B item is compared to each column C item. If there is a match, an "X" is written in column A in the column B match row. If there is not a match found a "Y" is written in column A in the column B non-match row.
- Paste this script into a macro and assign a "hot key" to the macro.
- Open your Word document
- select a table item
- press the hot key combination
- Wait
- Be careful not to lose focus on the word document
With 600 items this will take a while. Excel would do this in seconds, this macro will take forever by comparison.
This will not work in Macro Scheduler version 6. You will need to upgrade or at least download the latest evaluation version.
Lunch hour is over.
Good Luck,
Dick
Code: Select all
Press CTRL
Send>a
Release CTRL
Wait>0.5
Press CTRL
Send>c
Release CTRL
Wait>0.5
Press up
Wait>0.5
Press CTRL
Press HOME
Release CTRL
GCB>table
Separate>table,%CRLF%,row
Let>k=0
Repeat>k
add>k,1
Let>value=row_%k%
Separate>value,%TAB%,row_%k%_col
Until>k,row_count
Let>kk=0
Repeat>kk
add>kk,1
Let>kkk=0
Let>col_count=row_%kk%_col_count
If>%col_count%=0,done
Let>value=row_%kk%_col_2
Repeat>kkk
add>kkk,1
Let>find=row_%kkk%_col_3
If>%find%=%value%
//Let>row_%kk%_col_1=X
Send>X
Press Down
EndIf
Until>kkk,row_count
Let>value=row_%kk%_col_1
If>%value%=
//Let>row_%kk%_col_1=Y
Send>Y
Press Down
EndIf
Label>done
Until>kk,row_count