Hiding certain columns in UIX table

I want to hide certain colums of my UIX table based on VO at runtime depending on context.
I know that I can use the rendered property of a column but I believe there is a way to do it without dealing with UIX. The reason is that I have about 30 dynamic colums so specifying the property (and enabling the appropriate bindings) seems to be tiresome and unreasonable.
I have a method in AppModuleImpl.java that sets the VO query and I want this method to hide the unwanted colums somehow.
Any suggestions ?

What about in your UIX table adding a columnGroup containing the 30 odd columns, setting its rendered property to true/false through EL (expression language) based on whatever the context you refer to is (possibly a session variable previously set)? That way you wouldn't have to set the rendered property for each individual column.
CM.

Similar Messages

  • Hideing a Column in ALV Table which is Displaying the POWL Query data

    Hi SDNers,
    I want to hide a column of ALV Table which is displaying my POWL Query data in it and hideing should be based on the Role as well. i.e few of the role the column shoudl be hidden and few of the roles should have the Column visible.
    waiting for the Valueble Answers.
    Thanks & Regards,
    Govindu

    Hai Kris,
        I took help from ur link and i declared a global attribute request_number.
    and i created an event handler ON_ALV_INSERT and did the follwing coding for giving default value wen ever am inserting new row.
    FIELD-SYMBOLS: <wa_row> LIKE LINE OF r_param->t_inserted_rows.
      DATA bill_details TYPE REF TO zdom_bill_detail.
      LOOP AT r_param->t_inserted_rows ASSIGNING <wa_row>.
        bill_details ?= <wa_row>-r_value.
        IF bill_details->REQ_NUMBER IS INITIAL.
      DATA lo_nd_bill_detail TYPE REF TO if_wd_context_node.
      DATA lo_el_bill_detail TYPE REF TO if_wd_context_element.
      DATA ls_bill_detail TYPE wd_this->Element_bill_detail.
    navigate from <CONTEXT> to <BILL_DETAIL> via lead selection
      lo_nd_bill_detail = wd_context->get_child_node( name = wd_this->wdctx_bill_detail ).
    lo_el_bill_detail = lo_nd_bill_detail->get_element( index = <wa_row>-index ).
          lo_el_bill_detail->set_attribute(
            EXPORTING
              name  = 'REQ_NUMBER'
              value = wd_comp_controller->request_number
    Wen am  setting the value of wd_comp_controller->request_number to my context attribute am getting NULL object ref error.
    lo_el_bill_detail->set_attribute(
        name =  `REQ_NUMBER`
        value = wd_comp_controller->request_number ).
    Pls give some suggestions,
    Thanks in Advance,
    Nalla.B

  • Hiding the columns in data table in jsf

    Hi Guys,
    I have stuck one situation in my project . i.e i want to hide the columns in Data table in jsf.
    Please response this mail.
    Thanks
    Narne

    See this...
    [http://forum.java.sun.com/thread.jspa?threadID=5119514&messageID=9938606]

  • How to disable certain columns of a Table?

    hi all,
    I wish to fill a pattern of 8 digital signals (only 1's & 0's) in a Table.
    Is there any way to restrict the user from typing char or num other than a 1 or a 0?
    Since the table is a string, I'm having confusion how to do this.
    Secondly, the table would have by default 12 columns visible on the Front Panel, excluding both the headers.
    But the No. of Columns is based on a parameter called Duration that ranges between 4 & 256.
    What I want the user to do is to key in 1's & 0's for the Duration chosen.
    Since it'll be tedious to key in for large values of Duration, I've given the option of Set Row(s) & Reset Row(s),
    that will fill with either 1 or 0 respectively for the chosen Row Value.
    Is there any way to disable the remaining columns of the Table, ie, those unfilled columns,
    when the user scrolls horizontally? I don't know how to achieve this.
    I went thro' the Properties of the Table, I don't understand some of their functionalities,
    like SelStart, SelSize etc.
    I wonder why a Property like Disable Array Elements for Arrays is not provided for a Table
    to Disable the columns we want to do so, or is it my gross ignorance, I don't know.
    Experts pls clarify me & help me out.
    Regards,
    Partha.
    - Partha
    LabVIEW - Wires that catch bugs!
    Attachments:
    Set Eventframe1.vi ‏409 KB

    Another option is to do this:
    Slightly more elegant, but also more potential for bugs (e.g. the users can tab into the column).
    craigdobis wrote:
    You can lower your overhead by using these "professional" looking indicators and controls. They are limited in functions and properties, thereby causing a smaller VI in file size.
    Nice. I didn't think about that. Looks like a VI with a single system boolean takes ~20% less space than one with a standard boolean.
    P.S. In general, I would say there are considerably better arguments for using system controls than memory issues.
    Try to take over the world!
    Attachments:
    Disabled Column.png ‏5 KB

  • Need help in hiding particular column of a table depending upon value

    Hi experts,
    I have developed a custom smartform and Print program.
    My problem is ..depending upon the data i recieve,...i have to hide a particular column.
    For example ... i have a table with 2 rows...one header and main row..This table has 3 column.
    I have to hide one of the column depending upon the data i recieve. So my output should have 2 rows and 2 columns.
    Please help.

    well vishwa u r right it wont work for multiple columns,
    then i guess this shud work.
    @thendral
    U can try like this create the rows with single column
    then print all ur text elements with spaces inserted manually between them with text editor then in conditions tab of the text elements specify ur condition according to what all u want to print.
    кu03B1ятu03B9к

  • Restict read only users to certain columns

    Hi guys ,
    I want to restrict read-only users to read only certain columns on the table.How do I go about restricting?

    Always include the following information when asking a question:
    <ul>
    <li>Full APEX version</li>
    <li>Full DB/version/edition/host OS</li>
    <li>Web server architecture (EPG, OHS or APEX listener/host OS)</li>
    <li>Browser(s) and version(s) used</li>
    <li>Theme</li>
    <li>Template(s)</li>
    <li>Region/item type(s)</li>
    </ul>
    935462 wrote:
    Hi guys ,
    I want to restrict read-only users to read only certain columns on the table.How do I go about restricting?Who are readonly users? How are they determined?
    What exactly are you talking about?
    Is it a report, If then which report Interactive or Classic?
    In either of them you can do conditional display of column using the same login
    Look at this for options http://docs.oracle.com/cd/E23903_01/doc/doc.41/e21674/bldapp_rpt_att.htm#BCEBDIFA

  • Permissions to update certain columns only in SQL 2005 ?

    Is there a way to grant allow a user or role to update certain columns within a table?...or recommended way like involve creating a View or something else?
    Thanks in advance.

    GRANT|REVOKE|DENY <permission> ON <schema>.<table>(<column>) TO [User];
    Please click "Propose
    As Answer" if a post solves your problem, or "Vote
    As Helpful" if a post has been useful to you

  • Hiding columns in a table?

    Hi there,
    I wonder if any of you know of an easy way to hide columns in a table in InDesign CS5? To further explain, i have two documents currently, one is a price guide and the other is bascially identical but without the prices, lets call that the product guide. It seems daft to have to update the two (especialy when i actually have four as i have each in two languages!) every time there is a slight change to the product listing. So, i was thinking if i have the price guide, make a PDF of that, hide the column with the prices in, and then hey presto, I've got the product guide. Seems simple but i can't seem ot find a simple way of hiding the column.
    Is there such an option? Or any suggestions as to how best do it? I don't want to delete it as i will need to update this column occasionally, and i really want to avoid having lots of different InDesign documents as i have this situation for 5 different country's guides, each with a local language and english language version, making 20 in total if i keep them separate (10 if i don't, which is enough imho) - mental i know! But thats the way work want it
    Cheers!
    (On Mac OSX 10.6.4 and running InDesign CS5)

    linziloop wrote:
    Hi there,
    I wonder if any of you know of an easy way to hide columns in a table in InDesign CS5? To further explain, i have two documents currently, one is a price guide and the other is bascially identical but without the prices, lets call that the product guide. It seems daft to have to update the two (especialy when i actually have four as i have each in two languages!) every time there is a slight change to the product listing. So, i was thinking if i have the price guide, make a PDF of that, hide the column with the prices in, and then hey presto, I've got the product guide. Seems simple but i can't seem ot find a simple way of hiding the column.
    Is there such an option? Or any suggestions as to how best do it? I don't want to delete it as i will need to update this column occasionally, and i really want to avoid having lots of different InDesign documents as i have this situation for 5 different country's guides, each with a local language and english language version, making 20 in total if i keep them separate (10 if i don't, which is enough imho) - mental i know! But thats the way work want it
    Cheers!
    (On Mac OSX 10.6.4 and running InDesign CS5)
    * If you experiment with some table cell settings, you can probably find a design that works when the columns are exposed, and when they're set to their minimum width - 3pt.
    Setting the column width to its minimum may not conceal cell content if the cell side margins are so small as to allow content to touch the cell sides, so you may need to pay attention to the margin values. If the column has vertical rulings, you may also need to pay attention to their stroke width and color.
    * Conditional text won't hide a column, but if the column is the furthest left or right, you might achieve what you want by applying a condition to the text in each cell of the column and hiding or showing it as needed. The width will be preserved, but no text will appear when hidden.
    * Similar to conditionalizing the cell content, you can define a paragraph style for only the cells in the column, and redefine the character color to None or Paper to hide the content, and redefining the color to Black to show it.
    * It may be possible to script a solution. I'm not familiar enough with available scripts. Inqire on the scripting forum.
    HTH
    Regards,
    Peter
    Peter Gold
    KnowHow ProServices

  • HideShow  in table column in uix page

    Hi EveryBody,
    I am usin JDeveloper 9051+ adf+uix.
    In that i'm trying to put a <hide show /> component in a column.
    Hide and show is running but it does work for all the rows at a time since id of each <hideshow/> is same (i mean to say that all hideshows work at the same time) and i want it to work for the particular row in which the hide show is pressed.
    This is my code snippet kindly help in this:
    <hideShow id="hideshow1" disclosed="${'show'==uix.pageState.hideshow1}">
    <contents>
    <flowLayout>
    <contents>
    <labeledFieldLayout>
    <contents>
    <textInput model="${uix.current.Asset.KeyId}" columns="10" readOnly="true"/>
    </contents>
    </labeledFieldLayout>
    <labeledFieldLayout>
    <contents>
    <textInput model="${uix.current.Asset.Description}" columns="10" readOnly="true"/>
    </contents>
    </labeledFieldLayout>
    <labeledFieldLayout>
    <contents>
    <textInput model="${uix.current.Asset.Image}" columns="10" readOnly="true"/>
    </contents>
    </labeledFieldLayout>
    <labeledFieldLayout>
    <contents>
    <textInput model="${uix.current.Asset.ShortDescription}" columns="10" readOnly="true"/>
    </contents>
    </labeledFieldLayout>
    </contents>
    </flowLayout>
    </contents>
    </hideShow>
    <handlers>
    <event name="hide show">
    <set target="${uix.pageState}" property="${param.source}" value="${param.event}" />
    </event>
    </handlers>
    Thanks in advance.

    Use detailDisclosure. It handles (almost) everything for you.
    The LinkageError is not caused by the detailDisclosure.
    In your table:
                    <table model="${bindings.AppointmentInformationView1}"
                           detailDisclosure="${uix.eventResult.detailData}"
                           alternateText="${uix.data.nlsMed.NoRecordsFound_LABEL}">
                      <contents>
                        <column>
                        </column>
                      </contents>
                      <detail>
                        <rowLayout width="100%" vAlign="top">
                          <contents>
                              PUT YOUR DETAIL COMPONENTS HERE!
                          </contents>
                        </rowLayout>
                      </detail>
                      <tableSelection>
                      </tableSelection>
                    </table>You are telling the table that the information about which rows are to be expanded can be found in the event result in detailData.
    Now you need an event handler in that page:
        <event name="show hide">
          <!-- show the table details -->
          <method class="foo.bar.UixHelper" method="doHideShowEvent"/>
        </event>The show/hide events will go to a class (that you will provide) and the static method doHideShowEvent() will be called. That method must return the EventResult containing detailData.
    Simple so far: You tell the table that the hide/show information comes in the EventResult object. You route the show/hide events to your class so that you can create the detailData and the EventResult object.
    The next step takes a bit of coding. In your doHideShowEvent() method you must create the detailData object and return it wrapped in an EventResult.
    The code looks like this:
      public static EventResult doHideShowEvent( BajaContext context,
                                                 Page page,
                                                 PageEvent event ) {
        // "source" contains the id of the UIX table
        String dataSetName = event.getParameter( "source" );
        int tableLength = 0;
        boolean discloseAll = false;
        PageEventFlattenedDataSet tableRows = new PageEventFlattenedDataSet( event,
            dataSetName );
        tableLength = tableRows.getLength( );    // the number of displayed table rows per
                                                 // page (not the complete number of rows)
        // Remember the selected row for single selection tables (-1 means no selection)
        // Number of row in displayed page (independent from range)
        int selectedRowIndexOld = SelectionUtils.getSelectedIndex( tableRows );
        int selectedRowIndexNew;
        // Check if special row or show all
        String value = event.getParameter( UIConstants.VALUE_PARAM );
        int disclosureRowIndex;
        if( value.equals( UIConstants.VALUE_SHOW_ALL ) ) {
          disclosureRowIndex = tableLength;
          discloseAll = true;
        } else {
          // this is the row that must be (un)disclosed:
          disclosureRowIndex = Integer.parseInt( value );
        // decide whether we want to disclose or undisclose depending on the name
        // of the event (hide or show)
        boolean disclose = UIConstants.SHOW_EVENT.equals( event.getName( ) );
        if( discloseAll ) {
          // if all rows shall be processed, keep previous selected
          selectedRowIndexNew = selectedRowIndexOld;
        } else {
          if( disclose ) {
            // set the selected row automatically on the row where show event was issued by
            // the user.
            selectedRowIndexNew = disclosureRowIndex;
          } else {
            // If the user pressed "hide" the selection is only changed if no row is selected
            // not changed
            selectedRowIndexNew = disclosureRowIndex;
        DataObjectList detailData = new TableDetailData( tableRows, disclosureRowIndex,
            disclose, discloseAll );
        EventResult result = new EventResult( page );
        result.setProperty( "detailData", detailData );
        result.setProperty( "selectedRowIndex", new Integer( selectedRowIndexNew ) );
        return result;
      }    // end method doHideShowEventSascha

  • Column / Row Spanning in UIX table

    Hi There,
    Anybody know how to achieve column/row spanning when using the uix databound table?
    For example, i would like a table which looked similar to the following:
         | Cell1  | Cell2 | Cell3 |
         | A spanned cell         |
         --------------------------Is it also possible to combine this with row spanning in a UIX table and then further combine it with the single-selection bean, producing an output similar to the below (how complex can i make this :)) :
         | Select | Column 1 | Column 2 | Column 3 |
         |        |  Cell 1  |  Cell 2  |  Cell 3  |
         |   o    |---------------------------------
         |        |  A spanned cell                |
         |        |  Cell 1  |  Cell 2  |  Cell 3  |
         |   o    |---------------------------------
         |        |  A spanned cell                |
         -------------------------------------------I guess I should add that both rows on the same select line would come from the same row of the data source.
    I get the impression that spanning can be done from looking through the BLAF standards at http://www.oracle.com/technology/tech/blaf/specs/tables.html#banding_group_colrow, although maybe this just related to the table layouts (where spanning of this type is easy enough) and isn't applicable/implemented for the databound table itself?
    Anyway, thanks in advance for any help :)
    Cheers,
    Lee

    Hi ,
    I have updated the function and its working fine.
    alter
    FUNCTION [dbo].[fnGetFirstOcurrences]
    (@Text nvarchar(max),
    @Delimiter
    char(1),
    @StopAt
    smallint)
    RETURNS
    nvarchar(max)
    BEGIN
    DECLARE @Return
    nvarchar(max),
    @Final
    int = 0,
    @Times
    smallint = 1,
    @Delimiters
    smallint
    SELECT  @Delimiters
    = LEN(@Text)
    - LEN(replace(REPLACE(@text,'
    ','#'), @Delimiter,
    IF
    (@Delimiters
    >= @StopAt)
    BEGIN
    WHILE @Times
    <= @StopAt
    BEGIN
    SET @Final
    = CHARINDEX(@Delimiter, @Text
    + @Delimiter, @Final
    + 1)
    SET @Times
    = @Times + 1
    END
    SET @Final
    = @Final - 1
    SELECT  @Return
    = LEFT(@Text, @Final);
    END
    ELSE
    BEGIN
    SELECT @Return
    = @Text +
    REPLICATE('  '
    + @Delimiter,
    (@StopAt - @Delimiters)
    - 1)
    END
    RETURN
    ISNULL(@Return, @Text)
    END
    Thanks
    Thankx &amp; regards, Vipin jha MCP

  • Dynamically Hiding Column in a Table View in VC Model

    How to dynamacally hide the columns in a table view in a VC model. Through the expression in Control Property, Form element/field or table view as a whole can be made hidden, however, the individual column can not seem to be hidden.
    I am using VC server version 700.8.0.1.
    Any help would be much appreciated.
    Kind Regards
    Sanjoy

    In this scenario, if the source is SAP BI, you can use the webapi commands. If not, you would have to have 2 separate tables in different layers and you can show and hide those layers or UI elements...

  • Dynamic Table Columns in UIX

    I have searched for a bit in the forums and documentation for something like this, and have found nothing.
    I would like to be able to have Dynamic table columns, with dynamic content in the table.
    I would like the ability to add non-dynamic rows to the table, placed where I like them.
    Does anyone know how to do this?

    I am creating a report that counts a number of events per hour, each day.
    the layout will look like this:
    0 1 2 3 4 5 6 7 total
    day1 3 3 4 5 4 3 2 3 230
    day2 4 3 2 3 4 2 3 4 235
    day3 3 2 2 2 2 3 2 1 310
    total 9 9 9 9 9 9 9 9 1393
    The user must be able to select the range of days they can see (might be a week, might be a month, might be a year).
    Also, the user can select the range of hours that they want visibile.
    becaus they can select the number of hours, I need to be able to dynamically create the columns to the table, according to the user's selection.
    The report is a very processor consuming report, as there are thousands of events per hour, so I want to trim the atcual data crunching to a minimum.
    can anyone help with dynamic tables?

  • Changing the Column Header and Hiding the Column dynamically???

    Hi friends..
    I'm new to OBIEE field. I'm working in a OBIEE project that requires to dynamically change the column header, and dynamically hide the column depending on the prompt value.
    I know we can dynamically change the table header using the presentation variable but I couldn't do that same thing with column header.
    I searched some forums that suggest to use java script for this purpose but I'm not able to do the same also. If anyone had same issue before please help.

    toony, I'm not sure it's possible to do all that you want exactly the way you want, but here are some ideas you can pursue.
    To dynamically change column headers without javascript, check this blog out...
    http://oraclebizint.wordpress.com/2008/01/25/oracle-bi-ee-101332-dynamic-column-headers-using-presentation-variables-sets-and-conditional-formatting/
    As far as dynamically hiding a column, I don't think you can do this, but since you don't provide any details on how the PV is supposed to hide a column based on the value, are you talking about hiding a column for one PV value and another (different) column for a different PV value? Or are you talking about hiding one column when a PV has certain values and displaying it when the PV has a different set of values?
    I have managed to create both scenarios via a work-around, but the procedures require some writing so I don't want to put both. Please detail how you want your PV to "hide" a column or columns.
    P.S. I don't think column selectors will do the trick for you. Basically column selectors work like this: Say you have a report using Sales Region ID, Region Name, and Sales. Now let's say you want the user to choose if he/she wants to see annual sales, or quarter sales or weekly sales, etc. The column selector view would allow you to put the various columns (Year Sales, Quarter Sales, Weekly Sales) as an option the user can select. Once selected, the sales figure will change for the time period selected. For an example of how this is done, check out the section in this "Oracle by Example" link.
    Waited too long to publish this... Madan beat me to it, so there is some overlap here...
    http://www.oracle.com/technology/obe/obe_bi/bi_ee_1013/saw/saw.html
    Edited by: LC143 on Oct 27, 2008 9:21 AM

  • How to add description of a column of a table in SQL Azure

    Hi
    I have some tables in my application database where there are descriptions added against certain columns. Needless to say they were done by using sp_addextendedproperty.
    Now I am trying to migrate the Database to SQL Azure. SQL Azure does not support sp_addextendedproperty.
    Hence I am not able to figure out how to add descriptions to those columns.
    Any help would be much appreciated.
    Thanks
    Soumyadeb

    Hello,
    Just as Latheesh post above, Windows Azure SQL database are not support extended stored procedures. That’s one of the limitations on SQL database, and I don’t know there is another way to achieve the same on Azure.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • Shading certain columns depending on start day of week.

    Good Afternoon,
    I have reason to edit the calendar wizard to make it completely automated.  And before anyone says that this isn't used anymore, we've received 2 separate calendar files over the last made from our Finance departments, each making them with Word calendar
    wizard highlighting year end dates.  So believe me, the calendar wizard is still very much in use!
    Last September, I finally figured out how to automate the first day of the week, though.  I have 2 templates now, one for Monday as first day and one for Sunday being the first day of the week.
    The only thing missing is to automate the shading so that the columns for Saturday and Sunday are shaded with light grey, and since it's automation we're talking about, only those cells in the columns with a number in them.
    I know it's do-able, I'm just not a vb expert, only being able to handle editing simple macros.
    But I understand that since I had some help with the macros and they might have changed from the original to some degree, that I should post the code.  Is this correct?  I hope that it is.
    ' WORD 97 WIZARD
    ' Calendar Wizard Specific Code
    Option Explicit
    ' CONSTANT DECLARATIONS
    '=============================== LOCALIZATION BLOCK ===============================
    ' Localization Note: iWeekStartDay is the starting day of the week (Sun = 0, Mon = 1, ...Sat = 6)
    Public Const iWeekStartDay As Integer = 1
    ' Banter strings
    Public Const strWarnYearReq As String = "Both starting and ending years are required."
    Public Const strWarnMinExceeded As String = "The year can not be before 1900."
    Public Const strWarnMaxExceeded As String = "The year can not be after 4095."
    Public Const strWarnRangeExceeded As String = "The calendar is limited to 120 months (10 years)."
    Public Const strAppCaptionPart1 As String = "Calendar: "
    Public Const strAppCaptionPart1b As String = ""
    Public Const strAppCaptionPart2 As String = ", "
    Public Const strAppCaptionPart3 As String = " to "
    Public Const strAppCaptionPart4 As String = ", "
    ' Status messages
    Public Const strStatusIntro As String = "Creating Calendar..."
    Public Const strStatusPart1 As String = "Creating "
    Public Const strStatusPart2 As String = ", "
    Public Const strStatusPart3 As String = "..."
    ' Assistant
    Public Const strCallBackHeading As String = "Do more with the calendar?"
    'Margins for A4 size (if wizard changes pagesize to A4)
    Public Const sA4_SHORT_MARGIN As Single = 28.8
    Public Const sA4_LONG_MARGIN As Single = 57.6
    'Margins for Letter size (if wizard changes pagesize to Letter) in pts
    Public Const sLETTER_SHORT_MARGIN As Single = 36
    Public Const sLETTER_LONG_MARGIN As Single = 36
    '========== END LOCALIZATION BLOCK - DO NOT MAKE CHANGES BELOW THIS LINE ==========
    Public Const iYearMin As Integer = 1900
    Public Const iYearMax As Integer = 4095
    ' Bookmark Names - DO NOT LOCALIZE
    ' Note: No spaces allowed in bookmark names
    Public Const strBkMkMonth As String = "Month"
    Public Const strBkMkDays As String = "Days"
    Public Const strBkMkDayNames As String = "DayNames"
    Public Const strBkMkYear As String = "Year"
    ' Calendar Style Names and Constants
    Public Const wzBOXES As Integer = 0
    Public Const wzBANNER As Integer = 1
    Public Const wzJAZZY As Integer = 2
    ' Form Control
    Public Const wzPAGE_START As Integer = 0
    Public Const wzPAGE_STYLE As Integer = 1
    Public Const wzPAGE_DIRECTION As Integer = 2
    Public Const wzPAGE_MONTHS As Integer = 3
    Public Const wzPAGE_FINISH As Integer = 4
    'orientation
    Public Const iORTN_PORTRAIT As Integer = 0
    Public Const iORTN_LANDSCAPE As Integer = 1
    ' Assistant
    Public Const iMAX_PANEL As Integer = 4 ' Number of last panel in MultiPage (First=0)
    Public Const iCALL_BACK_COUNT As Integer = 3 ' Number of items in CallBackBalloon (First=1)
    'postwizard balloon document variable
    Public Const strPOST_WIZ_BLN As String = "Calendar post wizard balloon"
    ' VARIABLE DECLARATIONS
    ' General
    Public rgstrMonthName(11) As String
    Public rgstrDayName(6) As String
    Public rgiDaysInMonth(11) As String
    Public fDateError As Boolean
    Public fCheckValidity As Boolean 'if set then the dates are checked for validity
    'variables used in doc. creation
    Public str1_TO_28 As String
    Public rgsDaysHeight(2, 1, 1) As Single
    Public rgsMonthNamesHeight(2, 1, 1) As Single
    Public rgstrDaysStyle(2) As String
    Public rgstrMonthNamesStyle(2) As String
    Public strSTY_BANNER_HDG3 As String
    ' Assistant
    Public rgstrAssistantMsg(iMAX_PANEL + 1) As String
    Public rgstrCallBackMsg(iCALL_BACK_COUNT) As String
    Public rgstrCallBackTip(iCALL_BACK_COUNT) As String
    ' Page 1
    Public iCalendarStyle As Integer
    Public iSavedStyle As Integer
    ' Page 2
    ' Page 3
    ' Page 4
    Public Sub InitWizardName(fDummy As Boolean)
    strWizName = "Calendar Wizard"
    strWizLongName = strWizName
    strWizShortName = "Calendar"
    End Sub
    Public Sub InitWizardStrings(fDummy As Boolean)
    Dim i As Integer
    On Error GoTo FatalError
    '=============================== LOCALIZATION BLOCK ===============================
    ' Note: this list is indexed 0 - iMAX_PANEL
    rgstrAssistantMsg(0) = "The Calendar Wizard helps you create a monthly calendar that you can customize with pictures and events. If you want to track and be reminded of events, you should probably use Microsoft Outlook, Microsoft Schedule+, or Microsoft Exchange."
    rgstrAssistantMsg(1) = "Select the look you want for your calendar. The Jazzy style uses the Algerian font. If it is not installed on your system, copy alger.ttf from the Valupack folder on the Microsoft Office CD to your hard drive."
    rgstrAssistantMsg(2) = "If you leave room for a picture, Word will insert a placeholder picture that you can replace with any picture you want."
    rgstrAssistantMsg(3) = "Your calendar can start on any month, and you can make your calendar shorter than or longer than 12 months. Each month will appear on a different page."
    rgstrAssistantMsg(4) = "To change any settings, click Back."
    ' Note: change constant iCALL_BACK_COUNT if number of items in list changes
    rgstrCallBackMsg(0) = "Add, remove, or replace a picture"
    rgstrCallBackMsg(1) = "Enter information into the calendar"
    rgstrCallBackMsg(2) = "Get Help on Something Else..."
    rgstrCallBackTip(0) = "To remove a picture, click on it and then press Delete. To add a picture, click where you want to insert the picture, point to Picture on the Insert menu, and then click From File."
    rgstrCallBackTip(1) = "To enter information, click where you want to insert the text and start typing. To move between different dates in the calendar, press Tab to move forward or press Shift+Tab to move to the previous date."
    'Load Month Name array
    rgstrMonthName(0) = "January"
    rgstrMonthName(1) = "February"
    rgstrMonthName(2) = "March"
    rgstrMonthName(3) = "April"
    rgstrMonthName(4) = "May"
    rgstrMonthName(5) = "June"
    rgstrMonthName(6) = "July"
    rgstrMonthName(7) = "August"
    rgstrMonthName(8) = "September"
    rgstrMonthName(9) = "October"
    rgstrMonthName(10) = "November"
    rgstrMonthName(11) = "December"
    'Load Day Name array LOCALIZATION NOTE: DO NOT CHANGE THE ORDER IN WHICH THESE APPEAR!
    ' TO CHANGE THE WEEK START DAY, CHANGE THE CONSTANT iWeekStartDay
    rgstrDayName(0) = "Sun"
    rgstrDayName(1) = "Mon"
    rgstrDayName(2) = "Tue"
    rgstrDayName(3) = "Wed"
    rgstrDayName(4) = "Thu"
    rgstrDayName(5) = "Fri"
    rgstrDayName(6) = "Sat"
    'Load Days In Month array
    rgiDaysInMonth(0) = 31
    rgiDaysInMonth(1) = 28 'Will not be used - must be calculated for leap year accuracy
    rgiDaysInMonth(2) = 31
    rgiDaysInMonth(3) = 30
    rgiDaysInMonth(4) = 31
    rgiDaysInMonth(5) = 30
    rgiDaysInMonth(6) = 31
    rgiDaysInMonth(7) = 31
    rgiDaysInMonth(8) = 30
    rgiDaysInMonth(9) = 31
    rgiDaysInMonth(10) = 30
    rgiDaysInMonth(11) = 31
    rgstrDaysStyle(wzBOXES) = "Boxes"
    rgstrDaysStyle(wzBANNER) = "Banner"
    rgstrDaysStyle(wzJAZZY) = "Jazzy"
    rgstrMonthNamesStyle(wzBOXES) = "Boxes Heading2"
    rgstrMonthNamesStyle(wzBANNER) = "Banner Heading2"
    'we dont set the style for month names in Jazzy style
    'the Banner style landscape calendar with picture uses Banner Heading3 style for month names
    strSTY_BANNER_HDG3 = "Banner Heading3"
    rgsMonthNamesHeight(wzBOXES, iORTN_PORTRAIT, 0) = 55
    rgsMonthNamesHeight(wzBOXES, iORTN_PORTRAIT, 1) = 55
    rgsMonthNamesHeight(wzBOXES, iORTN_LANDSCAPE, 0) = 36
    rgsMonthNamesHeight(wzBOXES, iORTN_LANDSCAPE, 1) = 36
    rgsDaysHeight(wzBOXES, iORTN_PORTRAIT, 0) = 56
    rgsDaysHeight(wzBOXES, iORTN_PORTRAIT, 1) = 102
    rgsDaysHeight(wzBOXES, iORTN_LANDSCAPE, 0) = 72
    rgsDaysHeight(wzBOXES, iORTN_LANDSCAPE, 1) = 71
    rgsMonthNamesHeight(wzBANNER, iORTN_PORTRAIT, 0) = 60
    rgsMonthNamesHeight(wzBANNER, iORTN_PORTRAIT, 1) = 60
    rgsMonthNamesHeight(wzBANNER, iORTN_LANDSCAPE, 0) = 55
    rgsMonthNamesHeight(wzBANNER, iORTN_LANDSCAPE, 1) = 51
    rgsDaysHeight(wzBANNER, iORTN_PORTRAIT, 0) = 64
    rgsDaysHeight(wzBANNER, iORTN_PORTRAIT, 1) = 110
    rgsDaysHeight(wzBANNER, iORTN_LANDSCAPE, 0) = 81
    rgsDaysHeight(wzBANNER, iORTN_LANDSCAPE, 1) = 81
    rgsMonthNamesHeight(wzJAZZY, iORTN_PORTRAIT, 0) = 73
    rgsMonthNamesHeight(wzJAZZY, iORTN_PORTRAIT, 1) = 73
    rgsMonthNamesHeight(wzJAZZY, iORTN_LANDSCAPE, 0) = 62
    rgsMonthNamesHeight(wzJAZZY, iORTN_LANDSCAPE, 1) = 59
    rgsDaysHeight(wzJAZZY, iORTN_PORTRAIT, 0) = 40.5
    rgsDaysHeight(wzJAZZY, iORTN_PORTRAIT, 1) = 81.8
    rgsDaysHeight(wzJAZZY, iORTN_LANDSCAPE, 0) = 58.2
    rgsDaysHeight(wzJAZZY, iORTN_LANDSCAPE, 1) = 57.5
    str1_TO_28 = ""
    For i = 1 To 28
    str1_TO_28 = str1_TO_28 & CStr(i) & vbTab
    Next i
    'strip off last tab
    str1_TO_28 = Left$(str1_TO_28, Len(str1_TO_28) - 1)
    ' Location in registry DO NOT LOCALIZE
    strRegSettingsKey = strREG_SETTINGS_BASE_KEY & "Calendar Wizard"
    Exit Sub
    FatalError:
    ReportError Err
    End Sub ' InitWizardStrings
    Public Sub InitWizard(fDummy As Boolean)
    ' Global Vars
    fWizardCallBack = False
    fDateError = False
    iCurrentPanel = 0
    ' Initialize strings
    InitWizardStrings (True)
    ' Create a new instance of the form
    Set formWizard = New formWizDlg
    If formWizard Is Nothing Then GoTo FatalError
    formWizard.lblWizName1.Caption = " " & strWizLongName & " "
    Exit Sub
    FatalError:
    DisplayErrorMsg strERR_INIT_FORM
    ReportError Err
    End Sub
    ' fDummy prevents sub from appearing in Word Tools/Macro list
    Public Sub SaveDialogValues(fDummy As Boolean)
    On Error GoTo FatalError
    ' Display status
    Application.ScreenUpdating = False
    System.Cursor = wdCursorWait
    StatusBar = strSAVE_SETTINGS
    ' Assistant
    System.PrivateProfileString("", strREG_SETTINGS_BASE_KEY, strREG_ASSISTANT_TIME_STAMP) = Format$(Now, "General Date")
    StoreValPref strREG_ASSISTANT_HELP, iLocalState
    ' Page 1
    StoreValPref "iCalendarStyle", iCalendarStyle
    ' Page 2
    StoreValPref "optPortrait", formWizard.optPortrait.Value
    StoreValPref "optPictureYes", formWizard.optPictureYes.Value
    ' Page 3
    StatusBar = ""
    System.Cursor = wdCursorNormal
    fSettingsSaved = True
    Application.ScreenUpdating = True
    Exit Sub
    FatalError:
    ReportError Err
    End Sub
    Public Sub RestoreDialogValues(fDummy As Boolean)
    Dim i As Integer
    On Error GoTo FatalError
    ' Display status
    Application.ScreenUpdating = False
    StatusBar = strRST_SETTINGS
    System.Cursor = wdCursorWait
    ' Page 1
    iCalendarStyle = IRestorePref("iCalendarStyle", 0)
    Select Case iCalendarStyle
    Case wzBOXES
    formWizard.optBoxes.Value = True
    formWizard.shpShadowBoxes.Visible = True
    Case wzBANNER
    formWizard.optBanner.Value = True
    formWizard.shpShadowBanner.Visible = True
    Case wzJAZZY
    formWizard.optJazzy.Value = True
    formWizard.shpShadowJazzy.Visible = True
    Case Else
    iCalendarStyle = wzBOXES
    formWizard.optBoxes.Value = True
    formWizard.shpShadowBoxes.Visible = True
    End Select
    ' Page 2
    If FRestorePref("optPortrait", False) Then
    formWizard.optPortrait.Value = True
    formWizard.shpPortraitShadow.Visible = True
    formWizard.shpLandscapeShadow.Visible = False
    Else
    formWizard.optLandscape.Value = True
    formWizard.shpPortraitShadow.Visible = False
    formWizard.shpLandscapeShadow.Visible = True
    End If
    formWizard.optPictureYes.Value = FRestorePref("optPictureYes", False)
    ' Page 3
    formWizard.cboMonthStart.ListIndex = Month(Date) - 1
    formWizard.cboMonthEnd.ListIndex = Month(Date) - 1
    formWizard.txtYearStart = Year(Date)
    formWizard.txtYearEnd = Year(Date)
    fCheckValidity = False
    StatusBar = ""
    System.Cursor = wdCursorNormal
    fSettingsRestored = True
    Application.ScreenUpdating = True
    Exit Sub
    FatalError:
    ReportError Err
    Exit Sub
    End Sub ' RestoreDialogValues
    ' fDummy prevents sub from appearing in Word Tools/Macro list
    Public Sub CreateNewDoc(fDummy As Boolean)
    Dim iMonthCurr As Integer
    Dim iYearCurr As Integer
    Dim lYearMonthCurr As Long
    Dim lYearMonthEnd As Long
    Dim iDaysCnt As Integer
    Dim iDaysInMonth As Integer
    Dim iCnt As Integer
    Dim strAutoTextName As String
    Dim objTableDays As Table
    Dim iRow As Integer
    Dim iCol As Integer
    Dim ocboMonthStart As ComboBox
    Dim ocboMonthEnd As ComboBox
    Dim otxtYearStart As TextBox
    Dim otxtYearEnd As TextBox
    Dim strJazzyDayNames As String
    Dim objFps As PageSetup
    Dim objRng As Range
    Dim sShortMargin As Single
    Dim sLongMargin As Single
    Dim strCaptionTxt As String
    Dim iOrientation As Integer
    Dim iNoPicture As Integer
    Dim i As Integer
    Dim strDays As String
    On Error GoTo CreateNewDoc_Error
    System.Cursor = wdCursorWait
    Set ocboMonthStart = formWizard.cboMonthStart
    Set ocboMonthEnd = formWizard.cboMonthEnd
    Set otxtYearStart = formWizard.txtYearStart
    Set otxtYearEnd = formWizard.txtYearEnd
    With Application
    .ScreenUpdating = False
    .StatusBar = strStatusIntro
    End With
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    If (formWizard.optPortrait) Then
    iOrientation = iORTN_PORTRAIT
    Else
    iOrientation = iORTN_LANDSCAPE
    End If
    iNoPicture = Abs(formWizard.optPictureNo.Value)
    'the margins have to be changed if papersize was changed in Common
    If (fChangeToA4 Or fChangeToLetter) Then
    Set objFps = ActiveDocument.PageSetup
    If iOrientation = iORTN_LANDSCAPE Then
    objFps.Orientation = wdOrientLandscape 'setting paper size in common
    'resets orientation to Portrait
    If fChangeToA4 Then
    sShortMargin = sA4_SHORT_MARGIN
    sLongMargin = sA4_LONG_MARGIN
    Else
    sShortMargin = sLETTER_SHORT_MARGIN
    sLongMargin = sLETTER_LONG_MARGIN
    End If
    Else
    If fChangeToA4 Then
    sShortMargin = sA4_LONG_MARGIN
    sLongMargin = sA4_SHORT_MARGIN
    Else
    sShortMargin = sLETTER_LONG_MARGIN
    sLongMargin = sLETTER_SHORT_MARGIN
    End If
    End If
    With objFps
    .TopMargin = sShortMargin
    .BottomMargin = sShortMargin
    .LeftMargin = sLongMargin
    .RightMargin = sLongMargin
    End With
    End If
    strAutoTextName = StrBuildAutoTextName(True)
    objWizTemplate.AutoTextEntries(strAutoTextName).Insert objActiveRange, True
    If iCalendarStyle <> wzJAZZY Then
    Set objActiveRange = ActiveDocument.Bookmarks(strBkMkDays).Range
    Else
    Set objActiveRange = ActiveDocument.Bookmarks(strBkMkDayNames).Range
    End If
    strJazzyDayNames = ""
    For iCnt = iWeekStartDay To 6
    strJazzyDayNames = strJazzyDayNames & rgstrDayName(iCnt) & vbTab
    Next
    For iCnt = 0 To (iWeekStartDay - 1)
    strJazzyDayNames = strJazzyDayNames & rgstrDayName(iCnt) & vbTab
    Next
    'Strip trailing Tab
    strJazzyDayNames = Left$(strJazzyDayNames, Len(strJazzyDayNames) - 1)
    objActiveRange.Text = strJazzyDayNames
    If iCalendarStyle <> wzJAZZY Then
    If (iCalendarStyle = wzBANNER) And (iOrientation = iORTN_LANDSCAPE) And (iNoPicture = 0) Then
    objActiveRange.Style = strSTY_BANNER_HDG3
    Else
    objActiveRange.Style = rgstrMonthNamesStyle(iCalendarStyle)
    End If
    objActiveRange.Select
    Selection.ConvertToTable wdSeparateByTabs, 1, 7
    End If
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Copy
    iMonthCurr = CInt(ocboMonthStart.ListIndex) + 1
    iYearCurr = CInt(otxtYearStart.Text)
    lYearMonthCurr = (CLng(iYearCurr) * 100) + CLng(iMonthCurr)
    lYearMonthEnd = (CLng(otxtYearEnd.Text) * 100) + (CLng(ocboMonthEnd.ListIndex) + 1)
    'Create each month of the calendar
    Do Until lYearMonthCurr > lYearMonthEnd
    Application.StatusBar = strStatusPart1 & rgstrMonthName(iMonthCurr - 1) & strStatusPart2 & CStr(iYearCurr) & strStatusPart3
    'Set month
    If iCalendarStyle = wzJAZZY Then
    ActiveDocument.Bookmarks(strBkMkMonth).Range.Text = CStr(iMonthCurr)
    Else
    ActiveDocument.Bookmarks(strBkMkMonth).Range.Text = rgstrMonthName(iMonthCurr - 1)
    End If
    'Set year
    ActiveDocument.Bookmarks(strBkMkYear).Range.Text = CStr(iYearCurr)
    'Determine number of days in month
    If iMonthCurr = 2 Then
    iDaysInMonth = DateSerial(iYearCurr, 3, 1) - DateSerial(iYearCurr, 2, 1)
    Else
    iDaysInMonth = rgiDaysInMonth(iMonthCurr - 1)
    End If
    'Set Column of First Day Of Month by using Weekday function. The 8th
    'is used (to start with) instead of the 1st to allow for offsetting (via
    'iWeekStartDay) for localization since the 8th will always fall on the
    'same day (of the week) as the 1st.
    iCol = WeekDay(DateSerial(iYearCurr, iMonthCurr, 8 - iWeekStartDay))
    ActiveDocument.Bookmarks(strBkMkDays).Select
    If iCalendarStyle <> wzJAZZY Then _
    Selection.MoveDown wdLine 'the bookmark is now in the first cell of the table
    strDays = ""
    For i = 1 To iCol - 1
    strDays = strDays & vbTab
    Next i
    strDays = strDays & str1_TO_28
    For i = 29 To iDaysInMonth
    strDays = strDays & vbTab & CStr(i)
    Next i
    'to get a 6 * 7 table always
    For i = iDaysInMonth + iCol - 1 To 41
    strDays = strDays & vbTab
    Next i
    Set objActiveRange = Selection.Range
    objActiveRange.Text = strDays
    objActiveRange.Style = rgstrDaysStyle(iCalendarStyle) & iOrientation & iNoPicture
    objActiveRange.Select
    Selection.ConvertToTable wdSeparateByTabs, 6, 7
    Selection.Cells.Height = rgsDaysHeight(iCalendarStyle, iOrientation, iNoPicture)
    Selection.Tables(1).Rows(1).Height = rgsMonthNamesHeight(iCalendarStyle, iOrientation, iNoPicture)
    '========================================================
    ' Mn.Sept.01.2014; 08h21
    ' TABLE GRIDLINES CODE: Automatically creates printable gridlines in the table.
    With Selection.Tables(1).Borders
    .InsideLineStyle = wdLineStyleSingle
    .InsideLineWidth = wdLineWidth100pt
    .InsideColorIndex = wdAuto
    .OutsideLineStyle = wdLineStyleSingle
    .OutsideLineWidth = wdLineWidth100pt
    End With
    '========================================================
    ActiveDocument.Bookmarks(strBkMkDays).Delete
    'Advance the current month
    If iMonthCurr = 12 Then
    iMonthCurr = 1
    iYearCurr = iYearCurr + 1
    Else
    iMonthCurr = iMonthCurr + 1
    End If
    lYearMonthCurr = (CLng(iYearCurr) * 100) + CLng(iMonthCurr)
    If lYearMonthCurr <= lYearMonthEnd Then
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    'Insert Page Break
    objActiveRange.InsertBreak wdPageBreak
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    objActiveRange.Paste
    End If
    Loop
    Application.StatusBar = ""
    strCaptionTxt = ""
    'Set Application caption
    strCaptionTxt = " - " & strAppCaptionPart1 & strAppCaptionPart1b & ocboMonthStart.Text & strAppCaptionPart2 & otxtYearStart.Text & strAppCaptionPart3 & ocboMonthEnd.Text & strAppCaptionPart4 & otxtYearEnd.Text
    ActiveDocument.UndoClear
    With ActiveWindow
    .Caption = .Caption & strCaptionTxt
    With .View
    .TableGridlines = False
    .ShowDrawings = True
    End With
    End With
    'Position cursor at the top
    Selection.HomeKey wdStory
    CreateNewDoc_Exit:
    Exit Sub
    CreateNewDoc_Error:
    ReportError Err
    GoTo CreateNewDoc_Exit
    End Sub ' CreateNewDoc
    Public Sub InitCallBack(fDummy As Boolean)
    Dim i As Integer
    Dim objCallBackLabels As BalloonLabels
    On Error GoTo ErrorCallBack
    If Not (fBlnInitialized) Then
    Set objPostWizBln = Assistant.NewBalloon
    fBlnInitialized = True
    With objPostWizBln
    .Heading = strCallBackHeading
    .Mode = msoModeModeless
    .Button = msoButtonSetCancel
    .BalloonType = msoBalloonTypeButtons
    .Callback = "Calendar.fnCallBack"
    End With
    Set objCallBackLabels = objPostWizBln.Labels
    objCallBackLabels.Count = iCALL_BACK_COUNT
    For i = 1 To iCALL_BACK_COUNT
    objCallBackLabels.Item(i).Text = rgstrCallBackMsg(i - 1)
    Next i
    End If
    objPostWizBln.Show
    If (Assistant.BalloonError) Then GoTo ErrorCallBack
    fPostWizBlnOpen = True
    Set objDocBln = ActiveDocument
    Set clsBln.app = Application
    ActiveDocument.Variables.Add strPOST_WIZ_BLN, "1"
    Exit Sub
    ErrorCallBack:
    DisplayErrorMsg strERR_INIT_CALL_BACK
    fPostWizBlnOpen = False
    Set objDocBln = ActiveDocument
    Set clsBln.app = Application
    ActiveDocument.Variables.Add strPOST_WIZ_BLN, "0"
    End Sub
    Public Function fnCallBack(objBln As Balloon, iBtn As Integer, lPrivate As Long)
    On Error GoTo ErrorCallBack
    Select Case iBtn
    Case Is < 1 'Exit
    objBln.Close
    fPostWizBlnOpen = False
    ActiveDocument.Variables(strPOST_WIZ_BLN).Value = "0"
    RestoreAssistant (True)
    Case 1 'Remove existing picture
    DisplayTip rgstrCallBackTip(0)
    Case 2 'Enter information into calendar
    DisplayTip rgstrCallBackTip(1)
    Case 3 ' Get help
    Assistant.Help
    End Select
    Exit Function
    ErrorCallBack:
    DisplayErrorMsg Err.Description
    End Function
    Private Function StrBuildAutoTextName(fDummy As Boolean) As String
    Dim strATName As String
    On Error GoTo BuildAutoTextName_Error
    'Select base AutoText Name NOTE: DO NOT LOCALIZE
    Select Case iCalendarStyle
    Case wzBOXES
    strATName = "Boxes"
    Case wzBANNER
    strATName = "Banner"
    Case wzJAZZY
    strATName = "Jazzy"
    End Select
    strATName = strATName & CStr(Abs(formWizard.optLandscape.Value))
    strATName = strATName & CStr(Abs(formWizard.optPictureNo.Value))
    StrBuildAutoTextName = strATName
    BuildAutoTextName_Exit:
    Exit Function
    BuildAutoTextName_Error:
    StrBuildAutoTextName = ""
    Resume BuildAutoTextName_Exit
    End Function
    'displays a tip during post-wizard options
    'assumes that Assistant is present since it is called from post-wizard balloon
    Private Sub DisplayTip(strTip As String)
    Dim objBlnTip As Balloon
    On Error GoTo FatalError
    Set objBlnTip = Assistant.NewBalloon
    With objBlnTip
    .Mode = msoModeModal
    .Heading = strWizName
    .Text = strTip
    .Button = msoButtonSetOK
    End With
    objBlnTip.Show
    If Assistant.BalloonError <> msoBalloonErrorNone Then GoTo FatalError
    Exit Sub
    FatalError:
    Err.Clear
    End Sub
    The above is from the module labelled "Calendar".  I don't believe anything was altered in the module labelled "Common", but please let me know that I should post it.
    To recap, in this wizard file, the first day of the week is set for Monday.  So the Saturday and Sunday columns always fall as the last 2 columns in the calendar table (Sunday as first day has the 1st and last column as the ones that would need shading).
    How can that syntax be added to shade the last 2 columns in the Monday calendar wizard, and the 1st and last column for the Sunday calendar wizard and hopefully shading just those particular cells in either with numbers in them?
    Thank you!  Very much appreciated. 

    Thanks, Doug!  Works beautifully.  I tried them again this morning, really incredible!
    I'm going to keep the Monday and Sunday wizard files as separate files because I realized that I don't have the skills (or the time) to try to figure out how to modify it so the user is requested the starting day.  It'll be beyond my meager skills,
    I'm sure, especially since there are all those dialogue boxes to contend with at the wizard's start.  I was forgetting about those.  So leaving these as 2 separate files where one chooses the starting day as per the title, the Monday one for Monday
    and the other, the Sunday one, for a Sunday start day.
    However, the only difference between them at this point is that one has a "0" for Sunday and the other a "1" for Monday, at the appropriate spots in the code.  being the starting week day and the other a "1" for Monday. 
    That's it.  They're beautifully the same in the rest of the code.  And a further benefit is that only one module was touched at all for all of this, the Calendar module (leaving the one labelled "Common" untouched.
    So anyone with a calendar wizard file can just change the piece of code below (begging the group's indulgence, if I may, in posting the modified code (??):
    ' WORD 97 WIZARD
    ' Calendar Wizard Specific Code
    Option Explicit
    ' CONSTANT DECLARATIONS
    '=============================== LOCALIZATION BLOCK ===============================
    ' Localization Note: iWeekStartDay is the starting day of the week (Sun = 0, Mon = 1, ...Sat = 6)
    Public Const iWeekStartDay As Integer = 1
    ' Banter strings
    Public Const strWarnYearReq As String = "Both starting and ending years are required."
    Public Const strWarnMinExceeded As String = "The year can not be before 1900."
    Public Const strWarnMaxExceeded As String = "The year can not be after 4095."
    Public Const strWarnRangeExceeded As String = "The calendar is limited to 120 months (10 years)."
    Public Const strAppCaptionPart1 As String = "Calendar: "
    Public Const strAppCaptionPart1b As String = ""
    Public Const strAppCaptionPart2 As String = ", "
    Public Const strAppCaptionPart3 As String = " to "
    Public Const strAppCaptionPart4 As String = ", "
    ' Status messages
    Public Const strStatusIntro As String = "Creating Calendar..."
    Public Const strStatusPart1 As String = "Creating "
    Public Const strStatusPart2 As String = ", "
    Public Const strStatusPart3 As String = "..."
    ' Assistant
    Public Const strCallBackHeading As String = "Do more with the calendar?"
    'Margins for A4 size (if wizard changes pagesize to A4)
    Public Const sA4_SHORT_MARGIN As Single = 28.8
    Public Const sA4_LONG_MARGIN As Single = 57.6
    'Margins for Letter size (if wizard changes pagesize to Letter) in pts
    Public Const sLETTER_SHORT_MARGIN As Single = 36
    Public Const sLETTER_LONG_MARGIN As Single = 36
    '========== END LOCALIZATION BLOCK - DO NOT MAKE CHANGES BELOW THIS LINE ==========
    Public Const iYearMin As Integer = 1900
    Public Const iYearMax As Integer = 4095
    ' Bookmark Names - DO NOT LOCALIZE
    ' Note: No spaces allowed in bookmark names
    Public Const strBkMkMonth As String = "Month"
    Public Const strBkMkDays As String = "Days"
    Public Const strBkMkDayNames As String = "DayNames"
    Public Const strBkMkYear As String = "Year"
    ' Calendar Style Names and Constants
    Public Const wzBOXES As Integer = 0
    Public Const wzBANNER As Integer = 1
    Public Const wzJAZZY As Integer = 2
    ' Form Control
    Public Const wzPAGE_START As Integer = 0
    Public Const wzPAGE_STYLE As Integer = 1
    Public Const wzPAGE_DIRECTION As Integer = 2
    Public Const wzPAGE_MONTHS As Integer = 3
    Public Const wzPAGE_FINISH As Integer = 4
    'orientation
    Public Const iORTN_PORTRAIT As Integer = 0
    Public Const iORTN_LANDSCAPE As Integer = 1
    ' Assistant
    Public Const iMAX_PANEL As Integer = 4 ' Number of last panel in MultiPage (First=0)
    Public Const iCALL_BACK_COUNT As Integer = 3 ' Number of items in CallBackBalloon (First=1)
    'postwizard balloon document variable
    Public Const strPOST_WIZ_BLN As String = "Calendar post wizard balloon"
    ' VARIABLE DECLARATIONS
    ' General
    Public rgstrMonthName(11) As String
    Public rgstrDayName(6) As String
    Public rgiDaysInMonth(11) As String
    Public fDateError As Boolean
    Public fCheckValidity As Boolean 'if set then the dates are checked for validity
    'variables used in doc. creation
    Public str1_TO_28 As String
    Public rgsDaysHeight(2, 1, 1) As Single
    Public rgsMonthNamesHeight(2, 1, 1) As Single
    Public rgstrDaysStyle(2) As String
    Public rgstrMonthNamesStyle(2) As String
    Public strSTY_BANNER_HDG3 As String
    ' Assistant
    Public rgstrAssistantMsg(iMAX_PANEL + 1) As String
    Public rgstrCallBackMsg(iCALL_BACK_COUNT) As String
    Public rgstrCallBackTip(iCALL_BACK_COUNT) As String
    ' Page 1
    Public iCalendarStyle As Integer
    Public iSavedStyle As Integer
    ' Page 2
    ' Page 3
    ' Page 4
    Public Sub InitWizardName(fDummy As Boolean)
    strWizName = "Calendar Wizard"
    strWizLongName = strWizName
    strWizShortName = "Calendar"
    End Sub
    Public Sub InitWizardStrings(fDummy As Boolean)
    Dim i As Integer
    On Error GoTo FatalError
    '=============================== LOCALIZATION BLOCK ===============================
    ' Note: this list is indexed 0 - iMAX_PANEL
    rgstrAssistantMsg(0) = "The Calendar Wizard helps you create a monthly calendar that you can customize with pictures and events. If you want to track and be reminded of events, you should probably use Microsoft Outlook, Microsoft Schedule+, or Microsoft Exchange."
    rgstrAssistantMsg(1) = "Select the look you want for your calendar. The Jazzy style uses the Algerian font. If it is not installed on your system, copy alger.ttf from the Valupack folder on the Microsoft Office CD to your hard drive."
    rgstrAssistantMsg(2) = "If you leave room for a picture, Word will insert a placeholder picture that you can replace with any picture you want."
    rgstrAssistantMsg(3) = "Your calendar can start on any month, and you can make your calendar shorter than or longer than 12 months. Each month will appear on a different page."
    rgstrAssistantMsg(4) = "To change any settings, click Back."
    ' Note: change constant iCALL_BACK_COUNT if number of items in list changes
    rgstrCallBackMsg(0) = "Add, remove, or replace a picture"
    rgstrCallBackMsg(1) = "Enter information into the calendar"
    rgstrCallBackMsg(2) = "Get Help on Something Else..."
    rgstrCallBackTip(0) = "To remove a picture, click on it and then press Delete. To add a picture, click where you want to insert the picture, point to Picture on the Insert menu, and then click From File."
    rgstrCallBackTip(1) = "To enter information, click where you want to insert the text and start typing. To move between different dates in the calendar, press Tab to move forward or press Shift+Tab to move to the previous date."
    'Load Month Name array
    rgstrMonthName(0) = "January"
    rgstrMonthName(1) = "February"
    rgstrMonthName(2) = "March"
    rgstrMonthName(3) = "April"
    rgstrMonthName(4) = "May"
    rgstrMonthName(5) = "June"
    rgstrMonthName(6) = "July"
    rgstrMonthName(7) = "August"
    rgstrMonthName(8) = "September"
    rgstrMonthName(9) = "October"
    rgstrMonthName(10) = "November"
    rgstrMonthName(11) = "December"
    'Load Day Name array LOCALIZATION NOTE: DO NOT CHANGE THE ORDER IN WHICH THESE APPEAR!
    ' TO CHANGE THE WEEK START DAY, CHANGE THE CONSTANT iWeekStartDay
    rgstrDayName(0) = "Sun"
    rgstrDayName(1) = "Mon"
    rgstrDayName(2) = "Tue"
    rgstrDayName(3) = "Wed"
    rgstrDayName(4) = "Thu"
    rgstrDayName(5) = "Fri"
    rgstrDayName(6) = "Sat"
    'Load Days In Month array
    rgiDaysInMonth(0) = 31
    rgiDaysInMonth(1) = 28 'Will not be used - must be calculated for leap year accuracy
    rgiDaysInMonth(2) = 31
    rgiDaysInMonth(3) = 30
    rgiDaysInMonth(4) = 31
    rgiDaysInMonth(5) = 30
    rgiDaysInMonth(6) = 31
    rgiDaysInMonth(7) = 31
    rgiDaysInMonth(8) = 30
    rgiDaysInMonth(9) = 31
    rgiDaysInMonth(10) = 30
    rgiDaysInMonth(11) = 31
    rgstrDaysStyle(wzBOXES) = "Boxes"
    rgstrDaysStyle(wzBANNER) = "Banner"
    rgstrDaysStyle(wzJAZZY) = "Jazzy"
    rgstrMonthNamesStyle(wzBOXES) = "Boxes Heading2"
    rgstrMonthNamesStyle(wzBANNER) = "Banner Heading2"
    'we dont set the style for month names in Jazzy style
    'the Banner style landscape calendar with picture uses Banner Heading3 style for month names
    strSTY_BANNER_HDG3 = "Banner Heading3"
    rgsMonthNamesHeight(wzBOXES, iORTN_PORTRAIT, 0) = 55
    rgsMonthNamesHeight(wzBOXES, iORTN_PORTRAIT, 1) = 55
    rgsMonthNamesHeight(wzBOXES, iORTN_LANDSCAPE, 0) = 36
    rgsMonthNamesHeight(wzBOXES, iORTN_LANDSCAPE, 1) = 36
    rgsDaysHeight(wzBOXES, iORTN_PORTRAIT, 0) = 56
    rgsDaysHeight(wzBOXES, iORTN_PORTRAIT, 1) = 102
    rgsDaysHeight(wzBOXES, iORTN_LANDSCAPE, 0) = 72
    rgsDaysHeight(wzBOXES, iORTN_LANDSCAPE, 1) = 71
    rgsMonthNamesHeight(wzBANNER, iORTN_PORTRAIT, 0) = 60
    rgsMonthNamesHeight(wzBANNER, iORTN_PORTRAIT, 1) = 60
    rgsMonthNamesHeight(wzBANNER, iORTN_LANDSCAPE, 0) = 55
    rgsMonthNamesHeight(wzBANNER, iORTN_LANDSCAPE, 1) = 51
    rgsDaysHeight(wzBANNER, iORTN_PORTRAIT, 0) = 64
    rgsDaysHeight(wzBANNER, iORTN_PORTRAIT, 1) = 110
    rgsDaysHeight(wzBANNER, iORTN_LANDSCAPE, 0) = 81
    rgsDaysHeight(wzBANNER, iORTN_LANDSCAPE, 1) = 81
    rgsMonthNamesHeight(wzJAZZY, iORTN_PORTRAIT, 0) = 73
    rgsMonthNamesHeight(wzJAZZY, iORTN_PORTRAIT, 1) = 73
    rgsMonthNamesHeight(wzJAZZY, iORTN_LANDSCAPE, 0) = 62
    rgsMonthNamesHeight(wzJAZZY, iORTN_LANDSCAPE, 1) = 59
    rgsDaysHeight(wzJAZZY, iORTN_PORTRAIT, 0) = 40.5
    rgsDaysHeight(wzJAZZY, iORTN_PORTRAIT, 1) = 81.8
    rgsDaysHeight(wzJAZZY, iORTN_LANDSCAPE, 0) = 58.2
    rgsDaysHeight(wzJAZZY, iORTN_LANDSCAPE, 1) = 57.5
    str1_TO_28 = ""
    For i = 1 To 28
    str1_TO_28 = str1_TO_28 & CStr(i) & vbTab
    Next i
    'strip off last tab
    str1_TO_28 = Left$(str1_TO_28, Len(str1_TO_28) - 1)
    ' Location in registry DO NOT LOCALIZE
    strRegSettingsKey = strREG_SETTINGS_BASE_KEY & "Calendar Wizard"
    Exit Sub
    FatalError:
    ReportError Err
    End Sub ' InitWizardStrings
    Public Sub InitWizard(fDummy As Boolean)
    ' Global Vars
    fWizardCallBack = False
    fDateError = False
    iCurrentPanel = 0
    ' Initialize strings
    InitWizardStrings (True)
    ' Create a new instance of the form
    Set formWizard = New formWizDlg
    If formWizard Is Nothing Then GoTo FatalError
    formWizard.lblWizName1.Caption = " " & strWizLongName & " "
    Exit Sub
    FatalError:
    DisplayErrorMsg strERR_INIT_FORM
    ReportError Err
    End Sub
    ' fDummy prevents sub from appearing in Word Tools/Macro list
    Public Sub SaveDialogValues(fDummy As Boolean)
    On Error GoTo FatalError
    ' Display status
    Application.ScreenUpdating = False
    System.Cursor = wdCursorWait
    StatusBar = strSAVE_SETTINGS
    ' Assistant
    System.PrivateProfileString("", strREG_SETTINGS_BASE_KEY, strREG_ASSISTANT_TIME_STAMP) = Format$(Now, "General Date")
    StoreValPref strREG_ASSISTANT_HELP, iLocalState
    ' Page 1
    StoreValPref "iCalendarStyle", iCalendarStyle
    ' Page 2
    StoreValPref "optPortrait", formWizard.optPortrait.Value
    StoreValPref "optPictureYes", formWizard.optPictureYes.Value
    ' Page 3
    StatusBar = ""
    System.Cursor = wdCursorNormal
    fSettingsSaved = True
    Application.ScreenUpdating = True
    Exit Sub
    FatalError:
    ReportError Err
    End Sub
    Public Sub RestoreDialogValues(fDummy As Boolean)
    Dim i As Integer
    On Error GoTo FatalError
    ' Display status
    Application.ScreenUpdating = False
    StatusBar = strRST_SETTINGS
    System.Cursor = wdCursorWait
    ' Page 1
    iCalendarStyle = IRestorePref("iCalendarStyle", 0)
    Select Case iCalendarStyle
    Case wzBOXES
    formWizard.optBoxes.Value = True
    formWizard.shpShadowBoxes.Visible = True
    Case wzBANNER
    formWizard.optBanner.Value = True
    formWizard.shpShadowBanner.Visible = True
    Case wzJAZZY
    formWizard.optJazzy.Value = True
    formWizard.shpShadowJazzy.Visible = True
    Case Else
    iCalendarStyle = wzBOXES
    formWizard.optBoxes.Value = True
    formWizard.shpShadowBoxes.Visible = True
    End Select
    ' Page 2
    If FRestorePref("optPortrait", False) Then
    formWizard.optPortrait.Value = True
    formWizard.shpPortraitShadow.Visible = True
    formWizard.shpLandscapeShadow.Visible = False
    Else
    formWizard.optLandscape.Value = True
    formWizard.shpPortraitShadow.Visible = False
    formWizard.shpLandscapeShadow.Visible = True
    End If
    formWizard.optPictureYes.Value = FRestorePref("optPictureYes", False)
    ' Page 3
    formWizard.cboMonthStart.ListIndex = Month(Date) - 1
    formWizard.cboMonthEnd.ListIndex = Month(Date) - 1
    formWizard.txtYearStart = Year(Date)
    formWizard.txtYearEnd = Year(Date)
    fCheckValidity = False
    StatusBar = ""
    System.Cursor = wdCursorNormal
    fSettingsRestored = True
    Application.ScreenUpdating = True
    Exit Sub
    FatalError:
    ReportError Err
    Exit Sub
    End Sub ' RestoreDialogValues
    ' fDummy prevents sub from appearing in Word Tools/Macro list
    Public Sub CreateNewDoc(fDummy As Boolean)
    Dim iMonthCurr As Integer
    Dim iYearCurr As Integer
    Dim lYearMonthCurr As Long
    Dim lYearMonthEnd As Long
    Dim iDaysCnt As Integer
    Dim iDaysInMonth As Integer
    Dim iCnt As Integer
    Dim strAutoTextName As String
    Dim objTableDays As Table
    Dim iRow As Integer
    Dim iCol As Integer
    Dim ocboMonthStart As ComboBox
    Dim ocboMonthEnd As ComboBox
    Dim otxtYearStart As TextBox
    Dim otxtYearEnd As TextBox
    Dim strJazzyDayNames As String
    Dim objFps As PageSetup
    Dim objRng As Range
    Dim sShortMargin As Single
    Dim sLongMargin As Single
    Dim strCaptionTxt As String
    Dim iOrientation As Integer
    Dim iNoPicture As Integer
    Dim i As Integer
    Dim strDays As String
    On Error GoTo CreateNewDoc_Error
    System.Cursor = wdCursorWait
    Set ocboMonthStart = formWizard.cboMonthStart
    Set ocboMonthEnd = formWizard.cboMonthEnd
    Set otxtYearStart = formWizard.txtYearStart
    Set otxtYearEnd = formWizard.txtYearEnd
    With Application
    .ScreenUpdating = False
    .StatusBar = strStatusIntro
    End With
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    If (formWizard.optPortrait) Then
    iOrientation = iORTN_PORTRAIT
    Else
    iOrientation = iORTN_LANDSCAPE
    End If
    iNoPicture = Abs(formWizard.optPictureNo.Value)
    'the margins have to be changed if papersize was changed in Common
    If (fChangeToA4 Or fChangeToLetter) Then
    Set objFps = ActiveDocument.PageSetup
    If iOrientation = iORTN_LANDSCAPE Then
    objFps.Orientation = wdOrientLandscape 'setting paper size in common
    'resets orientation to Portrait
    If fChangeToA4 Then
    sShortMargin = sA4_SHORT_MARGIN
    sLongMargin = sA4_LONG_MARGIN
    Else
    sShortMargin = sLETTER_SHORT_MARGIN
    sLongMargin = sLETTER_LONG_MARGIN
    End If
    Else
    If fChangeToA4 Then
    sShortMargin = sA4_LONG_MARGIN
    sLongMargin = sA4_SHORT_MARGIN
    Else
    sShortMargin = sLETTER_LONG_MARGIN
    sLongMargin = sLETTER_SHORT_MARGIN
    End If
    End If
    With objFps
    .TopMargin = sShortMargin
    .BottomMargin = sShortMargin
    .LeftMargin = sLongMargin
    .RightMargin = sLongMargin
    End With
    End If
    strAutoTextName = StrBuildAutoTextName(True)
    objWizTemplate.AutoTextEntries(strAutoTextName).Insert objActiveRange, True
    If iCalendarStyle <> wzJAZZY Then
    Set objActiveRange = ActiveDocument.Bookmarks(strBkMkDays).Range
    Else
    Set objActiveRange = ActiveDocument.Bookmarks(strBkMkDayNames).Range
    End If
    strJazzyDayNames = ""
    For iCnt = iWeekStartDay To 6
    strJazzyDayNames = strJazzyDayNames & rgstrDayName(iCnt) & vbTab
    Next
    For iCnt = 0 To (iWeekStartDay - 1)
    strJazzyDayNames = strJazzyDayNames & rgstrDayName(iCnt) & vbTab
    Next
    'Strip trailing Tab
    strJazzyDayNames = Left$(strJazzyDayNames, Len(strJazzyDayNames) - 1)
    objActiveRange.Text = strJazzyDayNames
    If iCalendarStyle <> wzJAZZY Then
    If (iCalendarStyle = wzBANNER) And (iOrientation = iORTN_LANDSCAPE) And (iNoPicture = 0) Then
    objActiveRange.Style = strSTY_BANNER_HDG3
    Else
    objActiveRange.Style = rgstrMonthNamesStyle(iCalendarStyle)
    End If
    objActiveRange.Select
    Selection.ConvertToTable wdSeparateByTabs, 1, 7
    End If
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Copy
    iMonthCurr = CInt(ocboMonthStart.ListIndex) + 1
    iYearCurr = CInt(otxtYearStart.Text)
    lYearMonthCurr = (CLng(iYearCurr) * 100) + CLng(iMonthCurr)
    lYearMonthEnd = (CLng(otxtYearEnd.Text) * 100) + (CLng(ocboMonthEnd.ListIndex) + 1)
    'Create each month of the calendar
    Do Until lYearMonthCurr > lYearMonthEnd
    Application.StatusBar = strStatusPart1 & rgstrMonthName(iMonthCurr - 1) & strStatusPart2 & CStr(iYearCurr) & strStatusPart3
    'Set month
    If iCalendarStyle = wzJAZZY Then
    ActiveDocument.Bookmarks(strBkMkMonth).Range.Text = CStr(iMonthCurr)
    Else
    ActiveDocument.Bookmarks(strBkMkMonth).Range.Text = rgstrMonthName(iMonthCurr - 1)
    End If
    'Set year
    ActiveDocument.Bookmarks(strBkMkYear).Range.Text = CStr(iYearCurr)
    'Determine number of days in month
    If iMonthCurr = 2 Then
    iDaysInMonth = DateSerial(iYearCurr, 3, 1) - DateSerial(iYearCurr, 2, 1)
    Else
    iDaysInMonth = rgiDaysInMonth(iMonthCurr - 1)
    End If
    'Set Column of First Day Of Month by using Weekday function. The 8th
    'is used (to start with) instead of the 1st to allow for offsetting (via
    'iWeekStartDay) for localization since the 8th will always fall on the
    'same day (of the week) as the 1st.
    iCol = WeekDay(DateSerial(iYearCurr, iMonthCurr, 8 - iWeekStartDay))
    ActiveDocument.Bookmarks(strBkMkDays).Select
    If iCalendarStyle <> wzJAZZY Then _
    Selection.MoveDown wdLine 'the bookmark is now in the first cell of the table
    strDays = ""
    For i = 1 To iCol - 1
    strDays = strDays & vbTab
    Next i
    strDays = strDays & str1_TO_28
    For i = 29 To iDaysInMonth
    strDays = strDays & vbTab & CStr(i)
    Next i
    'to get a 6 * 7 table always
    For i = iDaysInMonth + iCol - 1 To 41
    strDays = strDays & vbTab
    Next i
    Set objActiveRange = Selection.Range
    objActiveRange.Text = strDays
    objActiveRange.Style = rgstrDaysStyle(iCalendarStyle) & iOrientation & iNoPicture
    objActiveRange.Select
    Selection.ConvertToTable wdSeparateByTabs, 6, 7
    Selection.Cells.Height = rgsDaysHeight(iCalendarStyle, iOrientation, iNoPicture)
    Selection.Tables(1).Rows(1).Height = rgsMonthNamesHeight(iCalendarStyle, iOrientation, iNoPicture)
    '================================================================================================================================
    ' Tu.Mar.11.2015; 17h56 - MVPEdits/MyEdits
    ' SATURDAY and SUNDAY cells get shaded in the table (no matter where they fall).
    ' Doug Robbins - Word MVP; https://social.msdn.microsoft.com/Forums/office/en-US/6ab55be0-adc0-4e37-9565-8cdff089d20a/shading-certain-columns-depending-on-start-day-of-week?forum=worddev
    Dim j As Long
    With Selection.Tables(1)
    If iWeekStartDay = 1 Then
    For i = 6 To 7
    With .Columns(i)
    ' For j = 1 To .Cells.Count ' 1 = Cells with SAT and SUN text are shaded
    For j = 2 To .Cells.Count ' 2 = Cells with SAT and SUN text are _ NOT_ shaded
    With .Cells(j).Range
    If Len(.Text) > 2 Then
    .Shading.BackgroundPatternColor = wdColorGray20 'wdColorGray_ _ _ (the number following gives the shade of gray, i.e., wdColorGray20 vs. wdColorGray50)
    End If
    End With
    Next j
    End With
    Next i
    Else
    For i = 1 To 7 Step 6
    With .Columns(i)
    ' For j = 1 To .Cells.Count ' 1 = Cells with SAT and SUN text are shaded
    For j = 2 To .Cells.Count ' 2 = Cells with SAT and SUN text are _ NOT_ shaded
    With .Cells(j).Range
    If Len(.Text) > 2 Then
    .Shading.BackgroundPatternColor = wdColorGray20 'wdColorGray_ _ _ (the number following gives the shade of gray, i.e., wdColorGray20 vs. wdColorGray50)
    End If
    End With
    Next j
    End With
    Next i
    End If
    End With
    '================================================================================================================================
    '================================================================================================================================
    ' Mn.Sept.01.2014; 08h21 - MVPEdits/MyEdits
    ' TABLE GRIDLINES CODE: Automatically creates printable gridlines in the table.
    With Selection.Tables(1).Borders
    .InsideLineStyle = wdLineStyleSingle
    .InsideLineWidth = wdLineWidth100pt
    .InsideColorIndex = wdAuto
    .OutsideLineStyle = wdLineStyleSingle
    .OutsideLineWidth = wdLineWidth100pt
    End With
    '================================================================================================================================
    ActiveDocument.Bookmarks(strBkMkDays).Delete
    'Advance the current month
    If iMonthCurr = 12 Then
    iMonthCurr = 1
    iYearCurr = iYearCurr + 1
    Else
    iMonthCurr = iMonthCurr + 1
    End If
    lYearMonthCurr = (CLng(iYearCurr) * 100) + CLng(iMonthCurr)
    If lYearMonthCurr <= lYearMonthEnd Then
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    'Insert Page Break
    objActiveRange.InsertBreak wdPageBreak
    Set objActiveRange = ActiveDocument.Content
    objActiveRange.Collapse wdCollapseEnd
    objActiveRange.Paste
    End If
    Loop
    Application.StatusBar = ""
    strCaptionTxt = ""
    'Set Application caption
    strCaptionTxt = " - " & strAppCaptionPart1 & strAppCaptionPart1b & ocboMonthStart.Text & strAppCaptionPart2 & otxtYearStart.Text & strAppCaptionPart3 & ocboMonthEnd.Text & strAppCaptionPart4 & otxtYearEnd.Text
    ActiveDocument.UndoClear
    With ActiveWindow
    .Caption = .Caption & strCaptionTxt
    With .View
    .TableGridlines = False
    .ShowDrawings = True
    End With
    End With
    'Position cursor at the top
    Selection.HomeKey wdStory
    CreateNewDoc_Exit:
    Exit Sub
    CreateNewDoc_Error:
    ReportError Err
    GoTo CreateNewDoc_Exit
    End Sub ' CreateNewDoc
    Public Sub InitCallBack(fDummy As Boolean)
    Dim i As Integer
    Dim objCallBackLabels As BalloonLabels
    On Error GoTo ErrorCallBack
    If Not (fBlnInitialized) Then
    Set objPostWizBln = Assistant.NewBalloon
    fBlnInitialized = True
    With objPostWizBln
    .Heading = strCallBackHeading
    .Mode = msoModeModeless
    .Button = msoButtonSetCancel
    .BalloonType = msoBalloonTypeButtons
    .Callback = "Calendar.fnCallBack"
    End With
    Set objCallBackLabels = objPostWizBln.Labels
    objCallBackLabels.Count = iCALL_BACK_COUNT
    For i = 1 To iCALL_BACK_COUNT
    objCallBackLabels.Item(i).Text = rgstrCallBackMsg(i - 1)
    Next i
    End If
    objPostWizBln.Show
    If (Assistant.BalloonError) Then GoTo ErrorCallBack
    fPostWizBlnOpen = True
    Set objDocBln = ActiveDocument
    Set clsBln.app = Application
    ActiveDocument.Variables.Add strPOST_WIZ_BLN, "1"
    Exit Sub
    ErrorCallBack:
    DisplayErrorMsg strERR_INIT_CALL_BACK
    fPostWizBlnOpen = False
    Set objDocBln = ActiveDocument
    Set clsBln.app = Application
    ActiveDocument.Variables.Add strPOST_WIZ_BLN, "0"
    End Sub
    Public Function fnCallBack(objBln As Balloon, iBtn As Integer, lPrivate As Long)
    On Error GoTo ErrorCallBack
    Select Case iBtn
    Case Is < 1 'Exit
    objBln.Close
    fPostWizBlnOpen = False
    ActiveDocument.Variables(strPOST_WIZ_BLN).Value = "0"
    RestoreAssistant (True)
    Case 1 'Remove existing picture
    DisplayTip rgstrCallBackTip(0)
    Case 2 'Enter information into calendar
    DisplayTip rgstrCallBackTip(1)
    Case 3 ' Get help
    Assistant.Help
    End Select
    Exit Function
    ErrorCallBack:
    DisplayErrorMsg Err.Description
    End Function
    Private Function StrBuildAutoTextName(fDummy As Boolean) As String
    Dim strATName As String
    On Error GoTo BuildAutoTextName_Error
    'Select base AutoText Name NOTE: DO NOT LOCALIZE
    Select Case iCalendarStyle
    Case wzBOXES
    strATName = "Boxes"
    Case wzBANNER
    strATName = "Banner"
    Case wzJAZZY
    strATName = "Jazzy"
    End Select
    strATName = strATName & CStr(Abs(formWizard.optLandscape.Value))
    strATName = strATName & CStr(Abs(formWizard.optPictureNo.Value))
    StrBuildAutoTextName = strATName
    BuildAutoTextName_Exit:
    Exit Function
    BuildAutoTextName_Error:
    StrBuildAutoTextName = ""
    Resume BuildAutoTextName_Exit
    End Function
    'displays a tip during post-wizard options
    'assumes that Assistant is present since it is called from post-wizard balloon
    Private Sub DisplayTip(strTip As String)
    Dim objBlnTip As Balloon
    On Error GoTo FatalError
    Set objBlnTip = Assistant.NewBalloon
    With objBlnTip
    .Mode = msoModeModal
    .Heading = strWizName
    .Text = strTip
    .Button = msoButtonSetOK
    End With
    objBlnTip.Show
    If Assistant.BalloonError <> msoBalloonErrorNone Then GoTo FatalError
    Exit Sub
    FatalError:
    Err.Clear
    End Sub
    Thank you once again for all your help!!  Very much appreciated.  :D

Maybe you are looking for

  • Start up disk full - doesn't add up!

    Hi, I'm a first time Mac user and, I am having trouble with a full start up disc. My iMac 1 TB hard disc only has 12 GB unused space. I've seen a number of questions posted, so it seems I'm not the only one experiencing this problem. However I've not

  • Different installation number sent from satellite system

    Hi there, I have a strange one. When I create a Support Desk Message in the satellite system, the message is correctly created in Solman Service Desk, but the installation number sent is different than the installation number displayed in SLICENSE (f

  • Hebrew / English Keyboard for 700 MHz eMac

    Does anyone know of a Hebrew English USB Keyboard for a 700 MHz eMac either made for a PC or Mac? If it's for a PC how do I get an ⌘ key besides using a decal?

  • Archiving MM_MATNR: dependencies check report available?

    Archiving MM_MATNR (Material master) requires all dependent objects to be archived in advance. If I do a test run for MM_MATNR it shows me why a material cannot be archived, e.g. because it is used in a BOM (SAP Note 900537). The problem is, that the

  • How to search apps in the popular mode only

    I would like to set my search for Apps to Most popular as a default. The other thing is every time I download an app and go back,I have to start at the beginning of the apps search, **** annoying!