100% found this document useful (12 votes)
76 views

Excel 2007 VBA Programming for Dummies 1st Edition John Walkenbach 2024 Scribd Download

Dummies

Uploaded by

solgajathokf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (12 votes)
76 views

Excel 2007 VBA Programming for Dummies 1st Edition John Walkenbach 2024 Scribd Download

Dummies

Uploaded by

solgajathokf
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

Download the full version of the ebook at ebookname.

com

Excel 2007 VBA Programming for Dummies 1st Edition


John Walkenbach

https://ebookname.com/product/excel-2007-vba-programming-
for-dummies-1st-edition-john-walkenbach/

OR CLICK BUTTON

DOWNLOAD EBOOK

Download more ebook instantly today at https://ebookname.com


Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Excel VBA Programming for Dummies 3rd Edition John


Walkenbach

https://ebookname.com/product/excel-vba-programming-for-dummies-3rd-
edition-john-walkenbach/

ebookname.com

Excel 2002 Power Programming with VBA EXCEL POWER


PROGRAMMING WITH VBA 1st Edition Walkenbach

https://ebookname.com/product/excel-2002-power-programming-with-vba-
excel-power-programming-with-vba-1st-edition-walkenbach/

ebookname.com

Excel 2010 formulas 1st Edition John Walkenbach

https://ebookname.com/product/excel-2010-formulas-1st-edition-john-
walkenbach/

ebookname.com

Business Strategy and Corporate Governance in the Chinese


Consumer Electronics Sector 1st Edition Hailan Yang And
Stephen Morgan (Auth.)
https://ebookname.com/product/business-strategy-and-corporate-
governance-in-the-chinese-consumer-electronics-sector-1st-edition-
hailan-yang-and-stephen-morgan-auth/
ebookname.com
Careers for Tech Girls in Video Game Development 1st
Edition Laura La Bella

https://ebookname.com/product/careers-for-tech-girls-in-video-game-
development-1st-edition-laura-la-bella/

ebookname.com

Immigration and Refugee Law and Policy 5th University


Casebooks 5th Edition Stephen H. Legomsky

https://ebookname.com/product/immigration-and-refugee-law-and-
policy-5th-university-casebooks-5th-edition-stephen-h-legomsky/

ebookname.com

Retreat into the Mind Victorian Poetry and the Rise of


Psychiatry Ekbert Faas

https://ebookname.com/product/retreat-into-the-mind-victorian-poetry-
and-the-rise-of-psychiatry-ekbert-faas/

ebookname.com

Word By Word Picture Dictionary Intermediate Vocabulary


Workbook 2nd Edition Steven J. Molinsky

https://ebookname.com/product/word-by-word-picture-dictionary-
intermediate-vocabulary-workbook-2nd-edition-steven-j-molinsky/

ebookname.com

Strong and Hard Women An Ethnography of Female


Bodybuilding 1st Edition Tanya Bunsell

https://ebookname.com/product/strong-and-hard-women-an-ethnography-of-
female-bodybuilding-1st-edition-tanya-bunsell/

ebookname.com
Preserving Electronic Evidence for Trial A Team Approach
to the Litigation Hold Data Collection and Evidence
Preservation 1st Edition Ann D. Zeigler
https://ebookname.com/product/preserving-electronic-evidence-for-
trial-a-team-approach-to-the-litigation-hold-data-collection-and-
evidence-preservation-1st-edition-ann-d-zeigler/
ebookname.com
®
Excel 2007 VBA
Programming
FOR

DUMmIES

by John Walkenbach

Revised by Jan Karel Pieterse


Excel® 2007 VBA Programming For Dummies®
Published by
Wiley Publishing, Inc.
111 River Street
Hoboken, NJ 07030-5774
www.wiley.com
Copyright © 2007 by Wiley Publishing, Inc., Indianapolis, Indiana
Published by Wiley Publishing, Inc., Indianapolis, Indiana
Published simultaneously in Canada
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or
by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permit-
ted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written
permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the
Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600.
Requests to the Publisher for permission should be addressed to the Legal Department, Wiley Publishing,
Inc., 10475 Crosspoint Blvd., Indianapolis, IN 46256, (317) 572-3447, fax (317) 572-4355, or online at
http://www.wiley.com/go/permissions.
Trademarks: Wiley, the Wiley Publishing logo, For Dummies, the Dummies Man logo, A Reference for the
Rest of Us!, The Dummies Way, Dummies Daily, The Fun and Easy Way, Dummies.com, and related trade
dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates in the United
States and other countries, and may not be used without written permission. Microsoft and Excel are reg-
istered trademarks of Microsoft Corporation in the United States and/or other countries. All other trade-
marks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any
product or vendor mentioned in this book.

LIMIT OF LIABILITY/DISCLAIMER OF WARRANTY: THE PUBLISHER AND THE AUTHOR MAKE NO REP-
RESENTATIONS OR WARRANTIES WITH RESPECT TO THE ACCURACY OR COMPLETENESS OF THE CON-
TENTS OF THIS WORK AND SPECIFICALLY DISCLAIM ALL WARRANTIES, INCLUDING WITHOUT
LIMITATION WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE. NO WARRANTY MAY BE CRE-
ATED OR EXTENDED BY SALES OR PROMOTIONAL MATERIALS. THE ADVICE AND STRATEGIES CON-
TAINED HEREIN MAY NOT BE SUITABLE FOR EVERY SITUATION. THIS WORK IS SOLD WITH THE
UNDERSTANDING THAT THE PUBLISHER IS NOT ENGAGED IN RENDERING LEGAL, ACCOUNTING, OR
OTHER PROFESSIONAL SERVICES. IF PROFESSIONAL ASSISTANCE IS REQUIRED, THE SERVICES OF A
COMPETENT PROFESSIONAL PERSON SHOULD BE SOUGHT. NEITHER THE PUBLISHER NOR THE
AUTHOR SHALL BE LIABLE FOR DAMAGES ARISING HEREFROM. THE FACT THAT AN ORGANIZATION
OR WEBSITE IS REFERRED TO IN THIS WORK AS A CITATION AND/OR A POTENTIAL SOURCE OF FUR-
THER INFORMATION DOES NOT MEAN THAT THE AUTHOR OR THE PUBLISHER ENDORSES THE INFOR-
MATION THE ORGANIZATION OR WEBSITE MAY PROVIDE OR RECOMMENDATIONS IT MAY MAKE.
FURTHER, READERS SHOULD BE AWARE THAT INTERNET WEBSITES LISTED IN THIS WORK MAY HAVE
CHANGED OR DISAPPEARED BETWEEN WHEN THIS WORK WAS WRITTEN AND WHEN IT IS READ.

For general information on our other products and services, please contact our Customer Care
Department within the U.S. at 800-762-2974, outside the U.S. at 317-572-3993, or fax 317-572-4002.
For technical support, please visit www.wiley.com/techsupport.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may
not be available in electronic books.
Library of Congress Control Number: 2006939593
ISBN: 978-0-470-04674-6
Manufactured in the United States of America
10 9 8 7 6 5 4 3 2 1
About the Author
John Walkenbach is the author of more than 50 spreadsheet books and lives
in southern Arizona. Visit his Web site at http://j-walk.com.

Dedication
“This book is dedicated to Jim Kloss and Esther Golton — my two favorite
people in Matanuska-Susitna county. By putting their names in this book, I’m
ensured of at least one sale in Alaska.”

Author’s Acknowledgments
Thanks to all of the talented people at Wiley Publishing for making it so easy
to write these books. And special thanks to Jan Karel Pieterse for his assis-
tance with this edition.
Publisher’s Acknowledgments
We’re proud of this book; please send us your comments through our online registration form
located at www.dummies.com/register/.
Some of the people who helped bring this book to market include the following:

Acquisitions, Editorial, and Composition Services


Media Development Project Coordinator: Jennifer Theriot
Project Editor: Beth Taylor Layout and Graphics: Carl Byers, Stephanie D.
Executive Editor: Greg Croy Jumper, Barbara Moore,
Copy Editor: Beth Taylor Julie Trippetti

Technical Editor: Allen Wyatt Proofreaders: Laura Albert, John Greenough,


Techbooks
Editorial Manager: Jodi Jensen
Indexer: Techbooks
Media Development Coordinator:
Laura Atkinson
Media Project Supervisor: Laura Moss
Media Development Manager:
Laura VanWinkle
Media Development Associate Producer:
Richard Graves
Editorial Assistant: Amanda Foxworth
Sr. Editorial Assistant: Cherie Case
Cartoons: Rich Tennant
(www.the5thwave.com)

Publishing and Editorial for Technology Dummies


Richard Swadley, Vice President and Executive Group Publisher
Andy Cummings, Vice President and Publisher
Mary Bednarek, Executive Acquisitions Director
Mary C. Corder, Editorial Director
Publishing for Consumer Dummies
Diane Graves Steele, Vice President and Publisher
Joyce Pepple, Acquisitions Director
Composition Services
Gerry Fahey, Vice President of Production Services
Debbie Stailey, Director of Composition Services
Contents at a Glance
Introduction .................................................................1
Part I: Introducing VBA ................................................9
Chapter 1: What Is VBA?..................................................................................................11
Chapter 2: Jumping Right In............................................................................................21

Part II: How VBA Works with Excel..............................33


Chapter 3: Working In the Visual Basic Editor..............................................................35
Chapter 4: Introducing the Excel Object Model ...........................................................53
Chapter 5: VBA Sub and Function Procedures .............................................................67
Chapter 6: Using the Excel Macro Recorder .................................................................79

Part III: Programming Concepts...................................91


Chapter 7: Essential VBA Language Elements ..............................................................93
Chapter 8: Working with Range Objects......................................................................113
Chapter 9: Using VBA and Worksheet Functions .......................................................125
Chapter 10: Controlling Program Flow and Making Decisions .................................139
Chapter 11: Automatic Procedures and Events..........................................................157
Chapter 12: Error-Handling Techniques ......................................................................177
Chapter 13: Bug Extermination Techniques ...............................................................191
Chapter 14: VBA Programming Examples ...................................................................203

Part IV: Communicating with Your Users ....................221


Chapter 15: Simple Dialog Boxes..................................................................................223
Chapter 16: UserForm Basics........................................................................................239
Chapter 17: Using UserForm Controls .........................................................................255
Chapter 18: UserForm Techniques and Tricks ...........................................................275
Chapter 19: Accessing Your Macros Through the User Interface ............................299

Part V: Putting It All Together ...................................315


Chapter 20: Creating Worksheet Functions and Living to Tell about It...................317
Chapter 21: Creating Excel Add-Ins..............................................................................333
Part VI: The Part of Tens ...........................................345
Chapter 22: Ten VBA Questions (And Answers) ........................................................347
Chapter 23: (Almost) Ten Excel Resources.................................................................351

Index .......................................................................355
Table of Contents
Introduction ..................................................................1
Is This the Right Book?....................................................................................1
So You Want to Be a Programmer . . . ............................................................2
Why Bother? .....................................................................................................2
What I Assume about You ...............................................................................3
Obligatory Typographical Conventions Section ..........................................4
Check Your Security Settings..........................................................................4
How This Book Is Organized...........................................................................6
Part I: Introducing VBA ..........................................................................6
Part II: How VBA Works with Excel ......................................................6
Part III: Programming Concepts............................................................6
Part IV: Communicating with Your Users ............................................6
Part V: Putting It All Together...............................................................7
Part VI: The Part of Tens .......................................................................7
Marginal Icons ..................................................................................................7
Get the Sample Files.........................................................................................8
Now What? ........................................................................................................8

Part I: Introducing VBA .................................................9


Chapter 1: What Is VBA? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Okay, So What Is VBA?...................................................................................11
What Can You Do with VBA?.........................................................................12
Inserting a bunch of text ....................................................................13
Automating a task you perform frequently.......................................13
Automating repetitive operations ......................................................13
Creating a custom command ..............................................................13
Creating a custom button....................................................................14
Developing new worksheet functions................................................14
Creating complete, macro-driven applications ................................14
Creating custom add-ins for Excel .....................................................14
Advantages and Disadvantages of VBA.......................................................14
VBA advantages....................................................................................15
VBA disadvantages...............................................................................15
VBA in a Nutshell ...........................................................................................16
An Excursion into Versions...........................................................................18
viii Excel 2007 VBA Programming For Dummies

Chapter 2: Jumping Right In . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21


First Things First ............................................................................................21
What You’ll Be Doing .....................................................................................22
Taking the First Steps ....................................................................................23
Recording the Macro .....................................................................................23
Testing the Macro ..........................................................................................25
Examining the Macro .....................................................................................25
Modifying the Macro......................................................................................28
Saving Workbooks that Contain Macros .....................................................29
Understanding Macro Security.....................................................................29
More about the NameAndTime Macro ........................................................31

Part II: How VBA Works with Excel ..............................33


Chapter 3: Working In the Visual Basic Editor . . . . . . . . . . . . . . . . . . . .35
What Is the Visual Basic Editor? ..................................................................35
Activating the VBE ...............................................................................35
Understanding VBE components .......................................................36
Working with the Project Explorer...............................................................38
Adding a new VBA module..................................................................39
Removing a VBA module .....................................................................39
Exporting and importing objects .......................................................40
Working with a Code Window.......................................................................40
Minimizing and maximizing windows ................................................40
Creating a module ................................................................................42
Getting VBA code into a module ........................................................42
Entering code directly .........................................................................43
Using the macro recorder ...................................................................45
Copying VBA code................................................................................47
Customizing the VBA Environment .............................................................47
Using the Editor tab .............................................................................48
Using the Editor Format tab................................................................50
Using the General tab ..........................................................................52
Using the Docking tab..........................................................................52

Chapter 4: Introducing the Excel Object Model . . . . . . . . . . . . . . . . . . .53


Excel Is an Object? .........................................................................................54
Climbing the Object Hierarchy.....................................................................54
Wrapping Your Mind around Collections....................................................56
Referring to Objects.......................................................................................56
Navigating through the hierarchy ......................................................57
Simplifying object references..............................................................58
Diving into Object Properties and Methods ...............................................59
Object properties .................................................................................59
Object methods ....................................................................................62
Object events ........................................................................................63
Table of Contents ix
Finding Out More ...........................................................................................63
Using VBA’s Help system .....................................................................63
Using the Object Browser....................................................................64

Chapter 5: VBA Sub and Function Procedures . . . . . . . . . . . . . . . . . . . .67


Subs versus Functions...................................................................................67
Looking at Sub procedures .................................................................68
Looking at Function procedures.........................................................68
Naming Subs and Functions................................................................69
Executing Sub procedures ............................................................................69
Executing the Sub procedure directly ...............................................71
Executing the procedure from the Macro dialog box ......................72
Executing a macro by using a shortcut key ......................................72
Executing the procedure from a button or shape ............................74
Executing the procedure from another procedure ..........................76
Executing Function procedures ...................................................................76
Calling the function from a Sub procedure .......................................77
Calling a function from a worksheet formula....................................77

Chapter 6: Using the Excel Macro Recorder . . . . . . . . . . . . . . . . . . . . .79


Is It Live or Is It VBA?.....................................................................................79
Recording Basics............................................................................................80
Preparing to Record.......................................................................................82
Relative or Absolute?.....................................................................................82
Recording in absolute mode ...............................................................82
Recording in relative mode .................................................................83
What Gets Recorded? ....................................................................................85
Recording Options .........................................................................................86
Macro name...........................................................................................87
Shortcut key ..........................................................................................87
Store Macro In.......................................................................................87
Description............................................................................................87
Is This Thing Efficient? ..................................................................................88

Part III: Programming Concepts ...................................91


Chapter 7: Essential VBA Language Elements . . . . . . . . . . . . . . . . . . . .93
Using Comments in Your VBA Code ............................................................93
Using Variables, Constants, and Data Types ..............................................95
Understanding variables .....................................................................95
What are VBA’s data types?.................................................................97
Declaring and scoping variables ........................................................98
Working with constants .....................................................................103
Working with strings ..........................................................................105
Working with dates.............................................................................106
x Excel 2007 VBA Programming For Dummies

Using Assignment Statements ....................................................................106


Assignment statement examples......................................................107
About that equal sign.........................................................................107
Other operators..................................................................................108
Working with Arrays ....................................................................................109
Declaring arrays .................................................................................109
Multidimensional arrays....................................................................110
Dynamic arrays...................................................................................111
Using Labels..................................................................................................111

Chapter 8: Working with Range Objects . . . . . . . . . . . . . . . . . . . . . . . .113


A Quick Review.............................................................................................113
Other Ways to Refer to a Range .................................................................114
The Cells property .............................................................................115
The Offset property ...........................................................................116
Referring to entire columns and rows .............................................116
Some Useful Range Object Properties.......................................................117
The Value property ............................................................................117
The Text property ..............................................................................118
The Count property ...........................................................................118
The Column and Row properties .....................................................118
The Address property........................................................................119
The HasFormula property .................................................................119
The Font property ..............................................................................120
The Interior property.........................................................................120
The Formula property .......................................................................121
The NumberFormat property ...........................................................121
Some Useful Range Object Methods..........................................................122
The Select method .............................................................................122
The Copy and Paste methods...........................................................123
The Clear method...............................................................................123
The Delete method.............................................................................124

Chapter 9: Using VBA and Worksheet Functions . . . . . . . . . . . . . . . .125


What Is a Function?......................................................................................125
Using Built-in VBA Functions......................................................................126
VBA function examples......................................................................126
VBA functions that do more than return a value ...........................128
Discovering VBA functions ...............................................................129
Using Worksheet Functions in VBA ...........................................................132
Worksheet function examples ..........................................................133
Entering worksheet functions...........................................................136
More about Using Worksheet Functions ...................................................136
Using Custom Functions .............................................................................137
Table of Contents xi
Chapter 10: Controlling Program Flow and Making Decisions . . . . .139
Going with the Flow, Dude ..........................................................................139
The GoTo Statement ....................................................................................140
Decisions, decisions...........................................................................141
The If-Then structure .........................................................................141
The Select Case structure .................................................................146
Knocking Your Code for a Loop .................................................................149
For-Next loops.....................................................................................150
Do-While loop .....................................................................................153
Do-Until loop .......................................................................................154
Looping through a Collection .....................................................................155

Chapter 11: Automatic Procedures and Events . . . . . . . . . . . . . . . . . .157


Preparing for the Big Event.........................................................................157
Are events useful? ..............................................................................159
Programming event-handler procedures ........................................160
Where Does the VBA Code Go? ..................................................................160
Writing an Event-Handler Procedure .........................................................161
Introductory Examples................................................................................163
The Open event for a workbook.......................................................163
The BeforeClose event for a workbook ...........................................165
The BeforeSave event for a workbook.............................................165
Examples of Activation Events ...................................................................166
Activate and deactivate events in a sheet.......................................166
Activate and deactivate events in a workbook...............................167
Workbook activation events .............................................................168
Other Worksheet-Related Events ...............................................................169
The BeforeDoubleClick event ...........................................................169
The BeforeRightClick event ..............................................................169
The Change event...............................................................................170
Events Not Associated with Objects .........................................................172
The OnTime event..............................................................................172
Keypress events..................................................................................174

Chapter 12: Error-Handling Techniques . . . . . . . . . . . . . . . . . . . . . . . . .177


Types of Errors .............................................................................................177
An Erroneous Example ................................................................................178
The macro’s not quite perfect ..........................................................179
The macro is still not perfect............................................................180
Is the macro perfect yet?...................................................................180
Giving up on perfection .....................................................................181
Handling Errors Another Way.....................................................................182
Revisiting the EnterSquareRoot procedure ...................................182
About the On Error statement ..........................................................183
xii Excel 2007 VBA Programming For Dummies

Handling Errors: The Details ......................................................................184


Resuming after an error.....................................................................184
Error handling in a nutshell ..............................................................186
Knowing when to ignore errors ........................................................186
Identifying specific errors .................................................................187
An Intentional Error .....................................................................................188

Chapter 13: Bug Extermination Techniques . . . . . . . . . . . . . . . . . . . . .191


Species of Bugs.............................................................................................191
Identifying Bugs............................................................................................192
Debugging Techniques ................................................................................193
Examining your code .........................................................................193
Using the MsgBox function ...............................................................194
Inserting Debug.Print statements ....................................................195
Using the VBA debugger....................................................................196
About the Debugger.....................................................................................196
Setting breakpoints in your code .....................................................196
Using the Watch window ...................................................................199
Using the Locals Window ..................................................................201
Bug Reduction Tips......................................................................................201

Chapter 14: VBA Programming Examples . . . . . . . . . . . . . . . . . . . . . . .203


Working with Ranges ...................................................................................203
Copying a range ..................................................................................204
Copying a variable-sized range.........................................................205
Selecting to the end of a row or column..........................................206
Selecting a row or column.................................................................207
Moving a range ...................................................................................207
Looping through a range efficiently.................................................208
Prompting for a cell value .................................................................209
Determining the selection type .......................................................210
Identifying a multiple selection ........................................................211
Changing Excel Settings ..............................................................................211
Changing Boolean settings................................................................212
Changing non-Boolean settings ........................................................212
Working with Charts ....................................................................................213
Modifying the chart type...................................................................214
Looping through the ChartObjects collection................................214
Modifying chart properties ...............................................................215
Applying chart formatting.................................................................215
VBA Speed Tips ............................................................................................216
Turning off screen updating..............................................................216
Turning off automatic calculation ....................................................217
Eliminating those pesky alert messages .........................................218
Simplifying object references............................................................219
Declaring variable types....................................................................219
Using the With-End With structure ............................................................220
Table of Contents xiii
Part IV: Communicating with Your Users.....................221
Chapter 15: Simple Dialog Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .223
Why Create UserForms?..............................................................................223
The MsgBox Function ..................................................................................224
Displaying a simple message box.....................................................225
Getting a response from a message box..........................................225
Customizing message boxes .............................................................226
The InputBox Function................................................................................229
InputBox syntax..................................................................................229
An InputBox example.........................................................................229
The GetOpenFilename Method...................................................................231
The syntax...........................................................................................232
A GetOpenFilename example............................................................232
Selecting multiple files.......................................................................234
The GetSaveAsFilename Method ...............................................................235
Getting a Folder Name .................................................................................236
Displaying Excel’s Built-in Dialog Boxes....................................................236

Chapter 16: UserForm Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239


Knowing When to Use a UserForm ............................................................239
Creating UserForms: An Overview.............................................................240
Working with UserForms.............................................................................241
Inserting a new UserForm .................................................................241
Adding controls to a UserForm ........................................................242
Changing properties for a UserForm control..................................243
Viewing the UserForm Code window...............................................244
Displaying a UserForm.......................................................................245
Using information from a UserForm ................................................245
A UserForm Example ...................................................................................246
Creating the UserForm.......................................................................246
Adding the CommandButtons ..........................................................247
Adding the OptionButtons ................................................................248
Adding event-handler procedures....................................................250
Creating a macro to display the dialog box ....................................251
Making the macro available ..............................................................252
Testing the macro...............................................................................253

Chapter 17: Using UserForm Controls . . . . . . . . . . . . . . . . . . . . . . . . . .255


Getting Started with Dialog Box Controls .................................................255
Adding controls ..................................................................................255
Introducing control properties.........................................................257
Dialog Box Controls: The Details ...............................................................259
CheckBox control ...............................................................................259
ComboBox control .............................................................................260
CommandButton control...................................................................261
xiv Excel 2007 VBA Programming For Dummies

Frame control......................................................................................262
Image control ......................................................................................262
Label control .......................................................................................263
ListBox control ...................................................................................264
MultiPage control ...............................................................................265
OptionButton control.........................................................................266
RefEdit control ....................................................................................267
ScrollBar control.................................................................................267
SpinButton control .............................................................................268
TabStrip control..................................................................................269
TextBox control ..................................................................................269
ToggleButton control .........................................................................270
Working with Dialog Box Controls .............................................................270
Moving and resizing controls............................................................270
Aligning and spacing controls ..........................................................271
Accommodating keyboard users......................................................272
Testing a UserForm ............................................................................273
Dialog Box Aesthetics..................................................................................274

Chapter 18: UserForm Techniques and Tricks . . . . . . . . . . . . . . . . . . .275


Using Dialog Boxes.......................................................................................275
A UserForm Example ...................................................................................275
Creating the dialog box......................................................................276
Writing code to display the dialog box............................................278
Making the macro available ..............................................................279
Trying out your dialog box ...............................................................279
Adding event-handler procedures....................................................280
Validating the data..............................................................................282
Now the dialog box works.................................................................282
More UserForm Examples...........................................................................282
A ListBox example..............................................................................282
Selecting a range.................................................................................287
Using multiple sets of OptionButtons..............................................288
Using a SpinButton and a TextBox ...................................................289
Using a UserForm as a progress indicator ......................................291
Creating a tabbed dialog box ............................................................295
Displaying a chart in a dialog box ....................................................296
A Dialog Box Checklist.................................................................................297

Chapter 19: Accessing Your Macros


Through the User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .299
CommandBars and Excel 2007 ...................................................................299
Excel 2007 Ribbon Customization..............................................................301
Working with CommandBars ......................................................................304
Commanding the CommandBars collection ...................................304
Listing all shortcut menus.................................................................304
Exploring the Variety of Random
Documents with Different Content
Ruhtinas, jonka kohtalot isäni jakoi, matkusteli etelä-Saksassa
viipymättä missään paria kuukautta kauempaa. Me seurasimme
häntä ja niin ei meillä koskaan ollut aikaa alkaa säännöllisiä opintoja.
Lapsista olivat vain nuorin sisareni ja minä äitini luona. Hän ei
saattanut erota meistä ja lähettää meitä johonkin kasvatuslaitokseen.
Päätettiin ottaa ranskalainen kotiopettajatar, joka seuraisi meitä
kaikkialle. Me emme vielä puhuneet hyvin ranskankieltä ja tämä
seikka oli usein tuottanut minulle suuria nöyryytyksiä. Frankfurt am
Mainissa, jossa vietimme erään talven, eivät vanhempani, heillä kun
siellä oli paljon tuttavia, voineet vetäytyä pois seuraelämästä.
Myöskin sisareni ja minä jouduimme nuorten tuttaviemme piiriin ja
kerran m.m. kutsuttiin meidät lastentanssiaisiin erääseen kaupungin
rikkaimmista taloista, jossa elettiin tuhlaavan ylellisesti ja upeasti.
Kun astuimme vaunuista, oli meitä portaiden juuressa vastassa talon
kaksi meidän ikäistämme poikaa kiiltohansikkaissa ja hattu kädessä.
Heidän sisarensa, nuori emäntämme, oli hurmaavan kaunis, puhui
sujuvasti useampia kieliä, tanssi viehättävästi ja omasi jo
täydellisesti maailmannaisen varmuuden ja tavat. Hän otti meidät
vastaan ylhäisen kohteliaasti, kuten maailmannainen ainakin, ja esitti
meidät heti useille nuorille ystävättärilleen, jotka tosin eivät olleet niin
kauniita kuin hän, mutta yhtä hienostuneita käytökseltään. Tunsin
itseni niin mitättömäksi heidän rinnallaan, että olin kerrassaan
masentunut. Keskustelu oli melkein kokonaan ranskankielistä, sillä
nämä nuoret ihmiset, vaikka olivatkin saksalaisia, puhuivat ranskaa
sujuvammin kuin omaa äidinkieltään. Annoin yksikantaisia
vastauksia ja olin tuskallisesti vaiti, kun en uskaltanut tunnustaa, että
ranskankielen taitoni vielä oli niin huono. Mutta nöyryytykseni kohosi
huippuunsa tanssin alkaessa. En osannut ollenkaan kaikkia noita
uudenaikaisia tansseja, jotka oli merkitty hienoon, minulle tuotuun
ohjelmaan. Minusta tuntui mahdottomalta lähteä permannolle
muiden nuorten tyttöjen joukkoon, jotka suorittivat tanssiaskeleensa
täydellisellä taituruudella. Päätin senvuoksi olla kokonaan
tanssimatta, kun muka sain siitä päänsärkyä, ja istuin koko illan
surullisena paikallani kuin naulittu katsellen noita miekkosia, joiden
rinnalla tunsin masentavasti oman mitättömyyteni, minä, joka
unelmissani kykenin mitä sankarillisimpiin töihin, mitä jaloimpiin
uhrauksiin. Sisareni, joka oli välittömämpi, vähemmän
kunnianhimoinen ja tässä tapauksessa viisaampi, tanssi; sai aikaan
sotkua yhteistansseissa, nauroi sydämellisesti erehdyksiään, vastasi
saksaksi, kun häntä puhuteltiin ranskankielellä ja huvitteli
sydämensä pohjasta. Palasin kotiin pettyneenä ja surullisena,
sairaana halusta tulla osalliseksi muodinmukaisesta kasvatuksesta,
joka äkkiä oli saanut suunnattoman arvon silmissäni.

Olin senvuoksi aivan ihastuksissani kotiopettajattaren tulosta.


Sainhan silloin oppia ranskaa ja yleensä jälleen opiskella
säännöllisesti. Opettajatar saapui, mutta jo heti hänen ulkomuotonsa
oli erilainen kuin olin kuvitellut. Ja hän ei ollut ainoastaan
epämiellyttävän ruma, hänen kohteliaisuutensa oli niin sovinnaista,
niin täynnä sanahelinää ja niin kaukana sydämellisyydestä, että se
teki minuun perin epämiellyttävän vaikutuksen. Tuntoni sanoi, ettei
sellainen ollut hyvän käytöstavan mukaista. Pakottauduin kuitenkin
osoittamaan hänelle asianmukaista kunnioitusta ja olin onnellinen,
kun seuraavana päivänä laadittiin lukusuunnitelma ja aika jaettiin
säännöllisesti. Valitettavasti ei kestänyt kauan, ennenkuin olin
vakuutettu, ettei hänestä ollut tyydyttämään tiedonjanoani. Hänellä
oli joka opetusalalla määrätty kaavansa, muuta ei hän tietänyt. Jos
teki kysymyksen tuon kaavan ulkopuolelta, ei häneltä saanut
vastausta. Tunsin pian salaisesti kapinoivani hänen viheliäistä
opetustaan vastaan, ja rupesin lukemaan omin päin kahta
intohimoisemmin. Meidän täytyi päntätä päähämme kurssi, jota
jokainen ranskalainen kotiopettajatar siihen aikaan piti
välttämättömänä, nimittäin Mme Cottinin kirjat: Les enfants de
l'Abbaye, Caroline de Lichtfield j.n.e. Minä luin kaiken ja elin
liioiteltujen hyveiden, hirveiden vainojen ja rikosten kuvitellussa
maailmassa, jossa hyvä riemukkaasti voittaa pahan.

Äitini, joka oli menettänyt täysikasvuisten lastensa ja vanhojen


ystäviensä seuran, sulkeutui yhä enemmän itseensä. Nuorempi
sisareni, lempeä, rauhallinen olento, ei käsittänyt sisäistä
levottomuuttani ja tuskaani. En voinut kenellekään ilmaista
mielessäni liikkuvia polttavia kysymyksiä ja tulin niin kiihtyneeksi ja
hermostuneeksi, että terveyteni alkoi kärsiä. Olin omituisesti joutunut
mielikuvitukseni valtoihin, minulla oli melkein hallusinatsioneja.
Niinpä en voinut kuulla puhuttavan jostakin rikoksesta tai paheesta
joutumatta kokonaan suunniltani. Minusta tuntui, että kun
ihmisluonteessa yleensä voi piillä noin inhottavia mahdollisuuksia,
saattaa sellaisia myöskin varsin hyvin uinua oman olentoni pohjalla.
Tuollainen turha kauhu oli usein niin voimakasta, että se vei uneni ja
vaivasi minua kahta kauheammin, kun en voinut kenellekään siitä
puhua. Vain todellinen opiskelu olisi voinut sen hälventää. Tiedon
puhtaassa valossa, vapaasti käyttäen kykyjäni, olisin saavuttanut
rauhan.

Lopulta en enää voinut kestää opettajani hengetöntä


keskinkertaisuutta ja puhuin siitä eräänä iltana vakavasti äidilleni.
Hän oli kanssani samaa mieltä ja lupasi erottaa ranskalaisen neidin
palveluksestaan. Onnettomuudeksi oli kyseenalainen henkilö ollut
läheisessä huoneessa ja kuullut kaiken. Hän oli hyvin suuttunut ja
tahtoi silmänräpäyksessä jättää toimensa. Olin sangen tyytyväinen
tulokseen, vaikka pahoittelinkin menettelytapaani. En kenellekään
ihmiselle, kuka hyvänsä hän olikaan, olisi tahtonut ikipäivinäni
tuottaa tuskaa. Kun opettajatar sangen viileiden jäähyväisten jälkeen
oli matkustanut, kirjoitin hänelle kirjeen, jossa pyysin anteeksi.
9. JÄLLEEN PYSYVÄINEN ASUINSIJA.

Kuljeksija-elämämme täytyi vihdoin päättyä, meidän täytyi valita


paikka, mihin asettua. Mutta tämä saattoi tapahtua vain siten, että
ainakin joksikin ajaksi erosimme isästämme, hän kun ei voinut jättää
ruhtinasta, joka ei viipynyt kauan samassa paikassa. Äitini valitsi
kaupungin, jossa vanhin, naimisissa oleva sisareni asui, — hän, jota
aikaisimmassa lapsuudessani olin niin suuresti rakastanut. Se oli
Detmoldin, pienen Lippen ruhtinaskunnan pääkaupunki. Isä lupasi
aina joskus käydä meitä siellä tervehtimässä ja viipyä luonamme
pitemmän aikaa. Sitäpaitsi lupasi hän varmasti purkaa
sitoumuksensa ruhtinaan kanssa ja ainaiseksi yhtyä meihin, kun
kaikki pojat olivat päässeet riippumattomaan asemaan.

Jos eron tuskaa ei olisi ollut, olisin suuresti iloinnut asuinpaikan


valinnasta. Sisareni perhe Jälleen pysyväinen asuinsija elämä oli
hänen enkelimäisen luonteensa heijastusta. Lapset olivat yhtä
suloisia ja rakastettavia kuin hän itsekin. Ruhtinaskunta, jonka
pääkaupungissa hän asui, oli niin pieni, että englantilainen ylimys
olisi pitänyt sitä vain kohtalaisena maatilana. Kaupunki oli soma ja
siisti ja sijaitsi seudulla, joka oli pohjois-Saksan ihanimpia,
pyökkimetsää kasvavien kumpujen ympäröimänä. Lankoni oli
paikkakunnan ensimäisiä arvohenkilöitä; hänen perheensä kuului
pienen maan vanhimpaan ylimystöön. Lapsesta saakka oli hän ollut
hallitsevan ruhtinaan ystävä ja erottamaton toveri eikä häneltä
neuvoa kysymättä päätetty ainoatakaan yleistä asiaa.

Pienen valtion hallitsija oli kunnon mies ja hyväsydäminen


ihminen, mutta hänen järkensä oli jonkun verran rajoitettu ja hän oli
äärettömän arka, mikä johtui siitä, että äiti oli pitkät ajat pitänyt häntä
riippuvaisessa asemassa. Äiti, ruhtinatar Pauline, etevät
hengenlahjat ja miehisen sivistyksen omaava nainen, oli lähes
kaksikymmentä vuotta ollut hallitsijana, kun poika isän kuollessa oli
aivan pieni. Kaikista Saksan hallitsijoista uskalsi hän yksinään
nousta vierasta valloittajaa vastaan ja puhua hänelle järjen ja
inhimillisyyden kieltä. Joutuiko tuo peljätty ihmetyksen valtaan, kun
nainen uskalsi sen, mitä muut eivät rohjenneet? Oliko hänellä muita
vaikuttimia? Joka tapauksessa kohteli hän ruhtinatarta arvonannolla
ja sivuutti hänen pienen valtakuntansa jättäen rauhaan sekä sen että
sen urhean valtijattaren.

Hän oli tieteiden ja kirjallisuuden ystävä, kutsui useita eteviä


miehiä hoviinsa ja koetti levittää valistusta ja siveellisyyttä pieneen
valtakuntaansa. Jos hänen hallittavanaan olisi ollut suuri
kuningaskunta, olisi hän kohonnut Katarina II:sen vertaiseksi, mutta
ilman tämän paheita. Ainoa, jossa hän ei onnistunut, oli hänen
molempien poikiensa kasvatus. Istuttaakseen heihin ankaran
siveellisyyden periaatteita, oli hän pitänyt heitä niin kauan kurissa ja
kohdellut heitä niin kauan lapsina, että vanhemmasta pojasta, joka jo
luonnostaan oli arka ja ujo, oli tullut puolittain villi-ihminen. Toinen
poika, kevytmielinen, huikenteleva nuorukainen, oli, vapauduttuaan
äidin vaikutusvallasta, heittäytynyt irstailevaan elämään. Hän oli ollut
sotapalveluksessa kaikissa mahdollisissa maissa, mutta menettänyt
virkansa huonon käytöksensä vuoksi, ja veli oli useamman kuin
kerran lunastanut hänet velkavankilasta. Vanhin poika, joka äidin
kuoleman jälkeen oli saanut hallitusohjat käsiinsä, vietti todellista
erakon elämää. Hänen puolisonsa oli hyvä, lempeä olento ja täysin
alistunut miehensä eristettyyn elämään ja ankariin elintapoihin. Heillä
oli monta lasta ja he viettivät mallikelpoista perhe-elämää. Heidän
vanhaa, monitornista linnaansa ympäröivät vanhoille valleille
istutetut puutarhat ja näitä kierti leveä kaivanto, jossa ankat ja
joutsenet rauhallisesti uiskentelivat. Yleiseltä kävelypaikalta saattoi
nähdä ruhtinaallisen perheen kuljeskelevan näissä puutarhoissa,
mutta kaupungin kaduille eivät sen jäsenet koskaan laskeneet
jalkaansa. Yksi tai kaksi kertaa vuodessa pidettiin linnassa
juhlapäivälliset. Niille kutsuttiin myöskin naisia, joiden korkea asema
salli heidän päästä osalliseksi tästä kunniasta. Tuona suurena
päivänä ajoivat hovivaunut ympäri kaupunkia vallasnaisia
noutamassa, sillä heidän pukunsa olisivat muuten turmeltuneet.
Pienessä kaupungissa ei nimittäin ollut minkäänlaisia suljettuja
vaunuja ja kutsuihin, vieläpä tanssiaisiinkin oli mentävä jalan. Juhla
oli ruhtinas-paralle koettelemuksen hetki. Hänen täytyi silloin
tervehtien kulkea naisten ohi, jotka olivat asettuneet riviin, ja lausua
jokaiselle ainakin pari sanaa. Jäykkänä kuin puukapula hän
nyöritetyssä univormussaan, huulet yhteen puristettuina änkytti
jonkun tyhjänpäiväisen sanan ilmasta tai muusta yhtä
vähäpätöisestä seikasta. Ennättäen tuskin odottaa vastausta
porhalsi hän jo eteenpäin ja näytti vapautuneen kuin raskaasta
painosta saavuttuaan jälleen onnellisesti herrojen luo.

Hänellä oli kuitenkin kaksi intohimoa, jotka houkuttelivat hänet


luolastaan: metsästys ja teatteri.

Pientä pääkaupunkia ympäröivät ihanat metsät olivat täpötäynnä


riistaa, jonka ainoa laillinen metsästäjä hän oli. Talvella kului tuskin
päivääkään, jolloin ei nähnyt kahden tai kolmen ruhtinaallisen reen
kiitävän pitkin kaupungin katuja ja lumipeitteisiä maanteitä. Niissä
tuo Nimrod-perhe ajoi metsään, vanhemmat ja lapset yhdessä. He
viipyivät siellä koko päivän. Ruhtinas ja vanhemmat pojat
metsästivät; ruhtinatar ja toiset lapset joko odottelivat reessä
turkiksiin kääriytyneinä tai kävelivät lumihangella. Turhaan valittivat
opettajat, että ruhtinaallisten lasten opiskelu kärsi tällaisista
elämäntavoista. Lasten henkinen kehitys uhrattiin perhe-elämälle ja
metsänriistalle.

Ruhtinaan toinen intohimo, hänen mieltymyksensä teatteriin,


tyydytettiin valtiovarojen kustannuksella. Tosin kuiskailtiin, että nämä
menot olivat suhteellisesti liian suuret, mutta ruhtinas ei enää
koskaan kutsunut kokoon maan säätyjä, jotka hänen äitinsä
hallitessa olivat säännöllisesti kokoontuneet. Ruhtinaan ystävät
sanoivat, että tämä ainoa huvitus voitiin hänelle suoda, kun hän
muuten vietti niin yksinkertaista ja siveellistä elämää. Tunnustaa
täytyykin, että hänen teatterinsa oli Saksan parhaimpia ja että
suurimmatkin taiteilijat antoivat siellä mielellään näytäntöjä. Parhaita
näytelmäteoksia ja oopperoita esitettiin siellä harvinaisen
täyspitoisesti. Oli näin ollen luonnollista, että teatteri oli pienen
pääkaupungin harrastusten ja keskustelujen keskipisteenä
vaikuttaen ihmisten taiteelliseen ja henkiseen kasvatukseen niin että
sivistystaso täällä oli paljon korkeampi kuin muissa yhtä suurissa
maaseutukaupungeissa.

Paitsi teatteria oli vielä toinenkin laitos, jonka tarkoituksena oli


seurapiirin huvittaminen, mutta josta ruhtinas oli kokonaan erillään.
Se oli jonkinlainen klubi, jolle oli annettu ranskalainen nimi
»Ressource», vaikka sitä yksinkertaisesti olisi voitu nimittää
iltaseuraksi tai sentapaiseksi. Siellä kokoontuivat seurapiirin herrat ja
perheenisät, mutta varsinkin nuoret, naimattomat miehet viettivät
siellä suuren osan päivää ja melkein kaikki iltakaudet. He lukivat
sanomalehtiä, joivat viiniä ja olutta, seuloivat suuren ja pienen
maailman uutisia, pelasivat korttia ja biljardia sekä polttivat huoneet
uskomattoman täyteen tupakansavua. Sunnuntai-iltaisin pääsivät
naisetkin mukaan ja silloin oli kaikella aivan toinen leima. Herrat
esiintyivät hännystakeissa, piiput ja sikaarit pantiin piiloon,
vanhemmat herrat ja naiset pelasivat korttia, nuoriso huvittelihe
seuraleikeillä, keskustelulla ja tanssilla. Kerran kuukaudessa pidettiin
suuret tanssiaiset.

Tällaiseksi muodostui seura-elämä pienissä saksalaisissa


kaupungeissa. Niiden asukkailla ei ollut suuria omaisuuksia, ja
useimmat olivat palkattuja virkamiehiä, joiden varat riittivät vain
välttämättömimpiin. Tuollaisessa yhdistyksessä saattoivat kaikki,
pienen jäsenmaksun suoritettuaan, tavata tuttaviaan ja nauttia
seura-elämän iloja, elämättä yli varojensa. Näissä yhdistyksissä
vallitseva sävy ei tosin ollut hienostuneimman seuraelämän
sääntöjen mukaista, mutta kun tässä vähäisessä kaupungissa
kuitenkin oli pieni hovi, hyvä teatteri, mainio kimnaasi, hyvä
tyttökoulu ja muutamia henkisesti ja tieteellisesti arvokkaita miehiä,
oli yleinen ajatustaso verrattain korkea, mikä ilmeni myöskin
käytöstavassa ja keskustelussa.

Sisareni ja minä emme oikeastaan vielä kuuluneet seurapiiriin, kun


olimme ripilläkäymättömiä, sillä rippikoulu oli ainakin siihen aikaan
Saksassa nuorille tytöille merkkinä siitä, että he pääsivät aikuisten
pariin. Kulkuri-elämämme oli jonkun verran myöhästyttänyt tätä
asiaa ja meidän piti valmistuaksemme ottaa vielä kokonaisen
vuoden uskontotunteja. Saimme näitä kaupungin etevimmältä
papilta. Hän oli vielä nuori mies, kaunis kuin Kristus, huulilla
hyväntahtoinen hymy. Hän ei ollut jyrkästi puhdasoppinen, mutta
hyvin hyvä ja voitti lempeällä, tuntehikkaalla uskonnollisuudellaan
kaikkien rippilastensa sydämet; seurakunnan nuoret kävivät nimittäin
hänen edessään rippikoulun. Pastorin rouva oli sangen huomattava
henkilö, hänen isänsä oli Saksanmaan etevimpiä hengellisiä puhujia.
Hän oli puhdasoppisempi kuin miehensä, mutta myöskin
tarmokkaampi ja älykkäämpi. Samalla hän oli mallikelpoinen
perheenemäntä. Kun puolisoiden varat olivat hyvin niukat ja perhe
suurilukuinen, suoritti hän itse halvimpiakin koti-askareita hoitaen
yhden palvelustytön avulla koko talouden. Valmistaessaan taitavin
käsin päivällistä, lauloi hän saksalaisen laulun rintalapselle, joka
lepäsi pienissä korivaunuissaan hänen vieressään. Saatuaan keiton
niin valmiiksi, että tuli piti lopusta huolen, työnsi hän vaunut pieneen
aitaukseen, jota nimitettiin puutarhaksi. Siellä leikki toisia, hiukan
isompia lapsia pähkinäpuun ympärillä, joka oli tämän paikan ainoa
kaunistus. Puun oksat muodostivat viheriän katoksen erään toisessa
kerroksessa sijaitsevan akkunan eteen, jonka ääressä
akkunalaudalla kukoisti upea ruusu. Vähän väliä ilmestyivät papin
hyvät, kauniit kasvot ikkunaan, ja hän hymyili puutarhaan
rakkailleen.

Tässä toisen kerroksen huoneessa, johon mainittu ikkuna toi


valoa, alkoi nyt tärkeä jakso elämässäni. Se oli pastorin työhuone.
Kokonaisen vuoden kävimme sisareni ja minä siellä kaksi kertaa
viikossa saadaksemme tietoja protestanttisen kirkon opinkohdista.

Antauduin palavalla innolla tähän opiskeluun. Toivoin nyt


pääseväni osalliseksi totuuden ilmestyksestä ja tajuavani elämän
salaisuuden — löytäväni sanan, joka ikuisesti määräisi
olemassaoloni. Rauhallinen, pieni huone yksinkertaisine
sisustuksineen ja kirjoineen, iltapäivä-auringon säteet, jotka leikkivät
pähkinäpuun oksissa muodostaen pyhimyskehän opettajan pään
ympärille — kaikki tuo yhtyi suloiseksi, mystilliseksi sopusoinnuksi,
se oli kuin kajastusta uskon ensi ajoilta. Tunsin olevani toisessa
maailmassa, itse Jumalan läheisyydessä. Tunsin itseni voimakkaaksi
alottamaan taistelun perisyntiä vastaan, johon opin uskomaan,
maailmaa vastaan, joka tahtoo kukistaa hengen. Sieluni autuus oli
minulle syvästi vakava asia. En tahtonut pysähtyä sanoihin, vaan
todella harjoittaa kristillistä kieltäymystä ja saavuttaa hengen voiton
lihan yli, mikä dogmin mukaan oli täydellisyyden päämäärä. Mutta
samaan aikaan tunsin rakkauden elämään ja kaikkeen sen
kauneuteen voimakkaana heräävän itsessäni, aivankuin olisi
kiusaaja tahtonut asettaa minut koetukselle. Pahahenki vei minut
yhä uudelleen kukkuloille, näytti minulle elämän aarteet ja sanoi:
»Kaikesta tuostako tahdot luopua?»

Tähän aikaan pääsin kerran sisareni kanssa vasten tavallisuutta


tanssiaisiin. Muuan nuori mies, jonka ulkomuoto ja esiintyminen
tekivät sangen miellyttävän vaikutuksen, pyysi minua tanssiin. En
tiedä, miten se kävi, mutta hänen kuvansa sai tuosta illasta saakka
sijan mielikuvituksessani ja sekaantui unelmiini. Näin hänet hyvin
harvoin ja olin hänen kanssaan puheissa vielä harvemmin. Hän ei
kuuna päivänä voinut aavistaa asuvansa minun ajatuksissani, vielä
vähemmän, että minun joka päivä tämän mieltymykseni tähden täytyi
taistella ankara taistelu Jumalan kanssa, joka vaati koko sydämeni.
Eräänä päivänä sain sattumalta kuulla, että hän vasten isänsä tahtoa
liehitteli erästä sievää, mutta pintapuolista ja ikävää tyttöä. Olin
suuresti suruissani tästä tiedosta, mutta se ei muuttanut
epäitsekästä tunnettani. Rukoilin molempien onnen puolesta, ja sain
uuden tilaisuuden päästä voitolle kiusaajasta koettaessani kohdella
onnellista kilpailijatartani sydämellisen huomaavaisesti joka kerta
kun tapasimme. Samaan aikaan solmisin omituisen ystävyysliiton
huolimatta kaikista muista ikäistemme tyttöjen ja meidän välisistä
ystävyyssuhteista. Tämä ystävyys vastasi kiihtynyttä sieluntilaani ja
oli omiaan sitä yllyttämään. Viereisessä talossa, jonka vain puutarha
erotti meistä, asui perhe, johon kuului kaksi sisareni ja minun ikäistä
tyttöä. Nuorempi oli kaunotar. Isä, kelpo liikemies, kuului kaupungin
merkkihenkilöihin. Toinen sisar oli minua vuotta vanhempi ja
vastikään päässyt ripille. Hän oli kalpea, lempeä, vakava olento,
kotoisten hyveiden esikuva. Hän oli mielestäni kuin pyhimys. Kun
hän eräänä päivänä tuli luokseni ilmoittaen rakastavansa ja
ihailevansa minua, olin suuresti hämilläni. En katsonut ansaitsevani
sellaista tunnustusta ja olin mielestäni velvollinen ilmaisemaan
hänelle sieluntilani, kertomaan hänelle taisteluni ja sisäiset ristiriitani,
jotka vain liiankin usein eksyttivät minut tavottelemastani kristillisestä
ihanteesta. Tein nämä tunnustukseni kirjeessä, sillä minulla ei ollut
rohkeutta suullisesti esittää näin kauheita asioita. En huolinut hänen
kiintymyksestään niin kauan kuin hän luuli minua paremmaksi kuin
itse mielestäni olin. Pidin parempana ilmaista hänelle katkeran
totuuden heti kuin antaa hänen myöhemmin pettyä. Ajattelin heti
hänen ensi silmäyksestään huomaavani, miten olin luisunut alas.
Kuinka suuri olikaan hämmästykseni, kun sain häneltä vastaukseksi
samanlaisen tunnustuksen, vain vielä hentomielisemmän ja
epäselvemmän kuin omani oli ollut! Siitä hetkestä alkaen otin
empimättä vastaan hänen ystävyytensä. Tällaiset
sydämenpurkaukset lohduttivat minua suuresti samoinkuin sekin,
että sain katsella itseäni toisen omantunnon valossa kuin peilissä ja
löysin toisesta sielusta tukea omille heikkouksilleni. Käsitin silloin,
mikä mahti katolisen kirkon ripillä oli. Ihailin sitä, vaikkakin paheksuin
sen väärinkäyttämistä. Ihminen tarvitsi mielestäni niin paljon
siveellistä voimaa vapaasti sanoakseen, mitä hänen mielensä
sokkeloissa liikkui, että jo se yksinään riitti sovittamaan hänen
syntinsä.

Mutta siitä huolimatta huomasin joka päivä kauhulla uusia epäilyn


kuiluja itsessäni. Lunastusoppi antoi minulle paljon ajattelemisen
aihetta. Koettaessani selvittää sitä itselleni ja päästä siitä
varmuuteen, näin pelkkiä ristiriitaisuuksia. Jumala, jonka piti olla
korkein viisaus ja hyvyys — kuinka saattoi hän luoda vapaalla
tahdolla varustetun ihmisen ja tuomita hänet samalla sokeaan
kuuliaisuuteen, ikuiseen alistuvaisuuteen täydellisen auktoriteetin
edessä? Hän oli lahjoittanut ihmiselle paratiisin sillä ehdolla, että
tämä aina pysyisi orjana. Niin pian kuin ihminen tunnusti
yksilöllisyytensä ja toteutti ihmisyytensä käyttämällä omaa
arvostelukykyään, karkoitettiin hänet paratiisista, eikä ainoastaan
häntä, vaan myöskin viimeiseen polveen saakka kaikki hänen
jälkeläisensä, jotka eivät olleet mitään rikkoneet. Ja tämä kaikki oli
horjumattomalla ennakkomääräyksellä järjestetty näin siksi, että
muuan henki, joka oli Jumala eikä kuitenkaan Jumala, uhraisi
itsensä pelastaakseen ihmiskunnan synnistä, jota se ei ollut tehnyt.
Missä oli Kristuksen ansio, sillä eihän lyhyt maallinen kärsimys
voinut merkitä mitään hänen jumalallisen iankaikkisuutensa rinnalla,
kun hän astui ristiltä autuuteen Jumalan oikealle puolelle?
Viimemainittu ajatus oli jo lapsena hämmästyttänyt minua. En ollut
vielä koskaan tuntenut välittäjän ja lunastajan tarvetta. Olin aina ollut
sitä mieltä, että sydämen täytyi löytää Jumala ilman välittäjää, yhtyä
häneen välittömästi.

Miten nämä ristiriidat, nämä kysymykset ilman vastausta


painoivatkaan omaatuntoani! Miten onnettomaksi ja eksyneeksi
tunsinkaan itseni näissä ajatuksen sokkeloissa, näissä uskon ja
järjen välisissä taisteluissa! Makasin tuntimääriä polvillani ja rukoilin
kuumia kyyneliä vuodattaen Jumalaa, että hän auttaisi minua, antaisi
minulle oikean uskon, pelastaisi minut ajattelevan hengen
viheliäisyydestä ja logiikan synnistä, joka on niin turmiollinen
sokealle kuuliaisuudelle. Rukoilin häntä suomaan minulle armon
salaperäisen lahjan.

Ystävättärelleni ainoastaan kerroin syvistä mielenliikutuksistani ja


hämäristä taisteluistani, mutta aina kirjeellisesti. Palvelustytöt
ihmettelivät noita monia kirjeitä, joita he saivat kuljettaa
naapuritalojen välillä, kun me kirjoittamisen asemasta olisimme
voineet paljon lyhyemmässä ajassa tavata toisemme ja puhua
asiamme. Minun kirjeeni olivat usein runomittaisia, sillä runoileminen
oli minulle siihen aikaan helpompaa kuin suorasanainen tyyli. Näiden
runojen pääaiheena oli kuoleman kaipaus, halu kokonaan vajota
abstraktiseen täydellisyyteen, päästä irti maallisista siteistä ja
kantavin siivin kiitää ihannetta kohden. Kuoleman kaipaus oli
minussa toisinaan niin voimakas, että olin iloinen terveyteni
heikentymisestä, joka suuresti huolestutti äitiäni.

Mutta niin kauan kuin minun täytyi elää, päätin ankarasti


noudattaa kirkon määräyksiä. Kirkon oppi hengen ja maailman
välisestä dualismista oli minulle täyttä totta, ja päätin paeta
maailmaa ja sen kiusauksia. Aloin sillä, etten enää käynyt
teatterissa, jota intohimoisesti rakastin; kieltäydyin myöskin
seuraamasta omaisiani kutsuihin. He eivät voineet tätä ymmärtää ja
pitivät minua oikullisena, liioittelevana olentona. Keksin silloin
tekosyitä voidakseni jäädä kotiin ja salatakseni sieluni tila, jonka
paljastaminen olisi vain tuottanut minulle tuskaa, he kun olisivat
pitäneet sitä sairaloisena. Toisinaan taas rukoilin kyynelsilmin,
etteivät he olisi minulle vihoissaan, vaan uskoisivat, että minun tuli
enemmän kuulla Jumalaa kuin ihmisiä.
Joka sunnuntai kävin säännöllisesti kirkossa. Siellä ennen kaikkea
vaivuin tuohon yhteen suureen asiaan, joka täytti mieleni; unohdin
kaiken ympärilläni ja katseeni riippui saarnaajan huulissa.

Eräänä päivänä kiitti eräs hyvin maailmallinen nainen minua


hurskaudestani sanoen, että kasvojeni harras ilme oli rakennukseksi
koko seurakunnalle. Se koski minuun kovin, en voinut pitkään aikaan
olla välitön enkä vapaa. Siitä asti sekaantui hartauteeni
tahtomattanikin turhamaisuutta. Sain siihen aikaan kokea, miten
vahingollisia ajattelemattomat ja kevytmieliset sanat voivat olla.
Lankoni, joka ei tässä suhteessa paljoa arkaillut, pilkkasi minua
eräänä päivänä uskonnonopettajani ihailemisesta ja lisäsi ivallisesti
hymyillen, että se kyllä tiedetään, minkätähden nuoret tytöt niin
mielellään käyvät hänen luonaan. En vastannut mitään, mutta hänen
sanansa haavoittivat minua syvästi. Kunnioituksen tunnettuni
pastoria kohtaan oli mielestäni häväisty, enkä pitkään aikaan voinut
unohtaa noita ajattelemattomia sanoja.

Ystävyys, jota opettajani puoliso osoitti minulle, lohdutti minua


suuresti. Kaupungin kielikellot näkivät hänestä paljon vaivaa, etenkin
ne, joiden mielestä oli »ikuisesti naisellista» keskustella seurassa
lastenkammarista ja talousasioista, siitä yksinkertaisesta syystä, ettei
heillä ollut muita harrastuksia. Olen jo ennen maininnut, miten
mallikelpoinen perheenemäntä pastorin rouva oli, mutta se ei estänyt
häntä keskustelemasta muistakin asioista ystäviensä parissa. Häntä
syytettiin teeskentelystä, kun hän käytti sivistyneen henkilön
puhetapaa. Häntä sanottiin petolliseksi, kun hän oli kaikille kohtelias,
mutta vain harvoille avomielinen. En nähnyt hänessä näitä virheitä,
vaan nautin hänen luonaan viettämistäni hetkistä, jolloin tunsin
todella kehittyväni. Hän oli minulle hyvin hyvä ja kohteli minua kuin
vertaistaan älyn ja kokemuksen puolesta. Seurustelin siihen aikaan
vain vanhempien kanssa tässä kodissa, sillä vanhin tytär, joka oli
jokseenkin minun ikäiseni, täydensi kasvatustaan isoisänsä luona
toisessa kaupungissa, ja toinen tytär oli vielä lapsi. Saapuessani
äidin huoneeseen, näin siellä toisinaan kalpean ja aran nuoren
miehen, melkein pojan vielä, kirjoittavan pöydän ääressä. Tavallisesti
nousi hän ylös, kun tulin, tervehti kömpelösti, silmät maassa ja
hävisi. Hän oli vanhin poika.

Opettajamme toivoi, että me konfirmatsionin edellä nauttisimme


opetusta yhdessä muiden rippilasten kanssa. Tämä toivomus ilahutti
ja liikutti minua. En ollut koskaan saanut iloita yhteisestä opetuksesta
muiden kuin sisareni kanssa. Minusta oli hauskaa juuri tällä tavalla
joutua seuraan, jonka useimmat jäsenet olivat minua alemmassa
yhteiskunnallisessa asemassa, vaikkakin Jumalan edessä
samanarvoisia. Useimmat näistä kuudestakymmenestä pojasta ja
tytöstä olivat yksinkertaisia talonpoikaislapsia. Asetuin ilomielin
heidän rinnalleen puupenkille unohtaen täydellisesti, että huone oli
pieni ja ilma pilaantunutta noiden lapsiparkojen likaisten ja kosteiden
vaatteiden lemusta, he kun kaikenlaisilla ilmoilla saivat taivaltaa
tänne maaseudulta asti. Terveyteni oli, kuten jo mainitsin, heikko;
olisin kuitenkin halveksinut itseäni, jos en olisi voittanut heikkouttani
ja vastenmielisyyttäni. Täällä olin yhtä vapaa kuin muissa seuroissa
ujo ja arka. Epäilyni ja arveluni olivat eri asia; mitä opinkappaleihin ja
itse oppiin tulee, osasin ne täydellisesti. Pelkoa en myöskään
tuntenut, kun julkisen tutkinnon päivä koitti. Pidin pyhänä
velvollisuutenani todistaa kristilliselle seurakunnalle, että tunsin
kristillisen opin sisällyksen ja olin kelvollinen tuon seurakunnan
jäseneksi. Kirkko oli tungokseen asti täynnä ihmisiä; annoin
vastaukseni lujalla äänellä, ja minulle sanottiin jälkeenpäin, että
sanani olivat kuuluneet kirkon etäisimpään soppeen saakka. Kotona
iloittiin menestyksestäni. Minä en kuitenkaan tästä vielä tuntenut
tyydytystä. Sieluni oli halannut päästä käsitykseen äärettömyydestä,
saavuttaa ikuisen totuuden ilmestys ja muuttua jumalallisen armon
kautta uudeksi ihanteelliseksi olennoksi, virheettömäksi ja
tahrattomaksi, — tätä kaikkea olin kaivannut viimeisenä juhlallisena
viikkona ennen konfirmatsionia. Olisin ilman muuta ollut valmis
astumaan kuoleman salaperäisen sillan yli herätäkseni abstraktisen
täydellisyyden helmassa.

Pääjuhlallisuuden piti tapahtua sunnuntaina. Edellisenä


perjantaina oli meillä viimeinen tunti. Opettajamme oli syvästi
liikutettu. Hän puhui meille kyynelsilmin edessämme olevan
tilaisuuden pyhyydestä ja tärkeydestä. Vaikkakaan tuo kunnon mies
ei toisinaan voinut tyydyttää järkeäni, kykeni, hän aina liikuttamaan
sydäntäni. Intoni oli niin palava, että toivoin osalleni suuria taisteluita,
uhreja ja sankaritekoja voidakseni näyttää toteen, miten syvät olivat
uskonnolliset tunteeni.

Opettajamme vaati meitä tekemään kirjallisesti selvää


vakaumuksestamme. Kirjoitin oman tunnustukseni niin rehellisesti
kuin mahdollista. Mutta kuinka olisin viime hetkessä voinut ilmaista
hänelle kaiken? Kuinka olisin voinut paljastaa, että henkeni
syvyyksissä oli ääni, joka vastusti suurinta osaa siitä, mitä hän niin
suurella huolella oli meille opettanut, ja että innokkaista ja rehellisistä
pyrkimyksistäni huolimatta olin kenties mahdottomampi kirkon
hartaaksi jäseneksi kuin talonpoikaislapset, joiden
välinpitämättömyys suretti häntä? Toisaalta elin myöskin toivossa,
että Jumala ratkaisevalla hetkellä ilmaisisi itsensä minulle ja
lahjoittaisi minulle, kuten Paavalille, voitollisen uskon, jota minulla ei
vielä ollut.

Opettajani oli täysin tyytyväinen kirjoitukseeni.


Lauantaina menimme yhdessä kaikkien perheemme jäsenten
kanssa kirkkoon valmistuaksemme ehtoolliselle, josta sisareni ja
minä, heti konfirmatsionin jälkeen, pääsimme ensi kerran osallisiksi.
Tämä oli mielestäni koko toimituksen tärkein, mutta myöskin
salaperäisin osa. Epäilyn paholainen teki minulle lakkaamatta
kysymyksiä vaatien selitystä ehtoollisessa tapahtuvasta ihmeestä.
Tunsin hyvin, etten saanut kysyä — että ihmettä kesti vain niin kauan
kuin ei kysynyt, vaan uskoi.

Kuuntelin syvällä hartaudella varoittavaa valmistussaarnaa. Mutta


kun pappi luki kirkkokäsikirjan sanat: »Joka kelvottomasti syö tästä
leivästä ja juo tästä viinistä, hän syö ja juo itsellensä tuomion» —
valtasi minut kuolettava kauhu. Kun hän tämän jälkeen kysyi, katuiko
jokainen todella syntejään ja astui Herran pöytään toivoen tulevansa
lunastetuksi hänen verensä kautta, ja kaikki antoivat lujan,
myöntävän vastauksen, olin niin suunniltani, että sanat kuolivat
huulilleni. Värisin ja kärsin helvetillisiä tuskia. Me lähdimme kirkosta,
silmiäni hämärti kuin unessa. Äitini ja sisareni olivat rauhallisia ja
iloisia. Keskustelu oli illalla samanlaista kuin muinakin päivinä.
Äskeisestä kirkonmenosta ei puhuttu sanaakaan, vielä vähemmän
huomenna tapahtuvasta. Omaiseni näyttivät kokonaan unohtaneen
seisovansa hirvittävän tuomion edessä, jonka vaikutus saattoi
ratkaisevasti ulottua iankaikkisuuteen saakka, minun ollessani
kokonaan murtunut ja masentunut hirvittävän edesvastuun painosta,
joka oli sälytetty sieluuni. Olinko kelvollinen syömään tuosta leivästä,
juomaan tuosta viinistä? Oliko uskoni niin vahva kuin kirkko vaati?
Sata kertaa olin huutamaisillani: »Ei, ei, minä en ole kelvollinen;
minä rakastan maailmaa, aurinkoa, maata, kukkasia, huvituksia,
nuoruutta, kauneutta; minä janoan onnea! En tunne valittujen
salaisuutta, en käsitä, minkätähden minussa on kaksi olentoa, toinen
hyvä, jalo ja autuuteen kelvollinen — toinen turmeltunut ja ikuisen
kadotuksen oma.

Mutta olin vaiti, kun pelkäsin, ettei minua ymmärrettäisi, että minua
yksinkertaisesti pidettäisiin sairaana tai mielettömänä ja että
häiritsisin toisten rauhan. Sulkeuduin huoneeseeni, heittäydyin
polvilleni ja rukoilin Jumalalta apua; seuraavana aamuna heräsin
rauhallisempana.

Saksassa on tapana, että ylempien säätyluokkien tytöt ovat


mustassa silkkipuvussa käydessään ensi kerran ehtoollisella;
meilläkin oli sellaiset ja juhlallinen puku rauhoitti minua ja teki minulle
hyvää. Kamarineitomme valvoi tavallista suuremmalla huolella
pukeutumistamme aivan kuin olisi ollut kysymys maallisesta juhlasta,
ja lörpötteli entistä enemmän. Se oli minusta vastenmielistä, mutta
hälvensi väkisinkin ajatuksiani. Kun lähdön hetki tuli, sanoin äidilleni
hyvästi syvän liikutuksen vallassa ja pyysin häneltä anteeksi
virheitäni. Sisareni ja minun täytyi ennen kirkkoon menoamme käydä
pastorin luona. Siellä oli kaikkialla kukkia. Opettajamme otti meidät
vastaan pappiskauhtanassa ja puhui meille niin sydämellisesti ja
sattuvasti, että välinpitämättömimmätkin joukosta näyttivät
liikutetuilta. Kun läheisen kirkon kellot alkoivat soida, lähti
kulkueemme liikkeelle, opettaja edellä, ja me kaikki kaksittain hänen
jäljessään. Pappilasta kirkkoon johtavalle tielle oli siroiteltu kukkia ja
kirkkokin oli niillä koristettu. Kaupungin laulukuoro, johon kuului
muutamia parhaita ystävättäriämme, tervehti meitä kauniilla laululla.
Tunsin siipieni kasvavan ja rukoilin Jumalaa siunaamaan tämän
hetken koko elämäni varalle. Saarnaajan ääni, joka niin usein oli
liikuttanut sydäntäni pienessä vihreässä huoneessa, rauhoitti minua.
Kun pastori saarnan jälkeen kysyi meiltä uskontunnustustamme,
annoin vastaukseni lujalla vakaumuksella. Sitten polvistuin muiden
kanssa ottamaan vastaan hänen siunauksensa. Hän laski kätensä
jokaisen pään päälle, otti meidät protestanttisen kirkon jäseniksi ja
siunasi jokaista erityisellä raamatunlauseella. Minulle hän sanoi:
»Ole uskollinen kuolemaan asti, niin minä annan sinulle elämän
kruunun.» Sydämeni toisti juhlallisena lupauksena: Uskollinen
kuolemaan asti! Kuoro tervehti jälleen lehteriltä nuoria kristittyjä
riemukkaalla ylistyslaululla. Me emme enää palanneet rippilasten
penkkeihin, vaan vanhempiemme ja sukulaistemme luo odottamaan,
että ne, jotka eivät aikoneet ottaa osaa ehtoolliseen, poistuisivat
kirkosta.

Kun alotettiin virsi »Oi, Jumalan karitsa», joka valittavana ja


ikäänkuin väristen salaperäisen ihmeen edessä kaikui kirkossa,
palasi tuskani ja epäilyni. Ratkaiseva silmänräpäys oli tullut.
Sydämeni löi rajusti ja ääneni olisi pettänyt, jos olisin koettanut
huutaa: »Ei, ei, minä en voi, minulla ei ole oikeaa uskoa!»

Äidilleni ja vanhemmalle sisarelleni annettiin vaistomaisesti etusija,


sillä yhteiskunnallinen arvojärjestys pysyy yksinpä kirkossakin
voimassa. Nuorempi sisareni ja minä seurasimme heitä. Lähestyin
alttaria silmät maahan luotuina, ulkomaailma oli hälvennyt. Odotin
näkeväni ristin salaisuuden, kuoleman, josta tuli elämä, taivaallisen
kirkkauden loistossa. — Otin vastaan leivän opettajani kädestä ja
kuulin sanat: »Ottakaa ja syökää, tämä on minun ruumiini, joka
teidän edestänne annetaan syntien anteeksi saamiseksi.» —
Kosketin huulillani kalkkia, eräs ääni sanoi minulle: »Tämä on minun
vereni, joka teidän edestänne vuodatetaan syntien anteeksi
saamiseksi.» — Mutta sisimmässäni ei tapahtunut mitään muutosta,
ei paljastunut mitään salaisuutta, Jumala ei saapunut viemään minua
taivaan ihanuuteen, kutsumaan minua valittujen joukkoon!

You might also like