Objetos de Microsoft Excel


Objetos de Microsoft Excel (Worksheet)


Objetos de Microsoft Excel (Charts)


Objetos de Microsoft Excel (ChartGroups)


Tema de Ayuda no disponible

No se puede mostrar el tema de Ayuda porque no se ha encontrado o no se ha instalado la Ayuda de Visual Basic para aplicaciones.

Para instalar la Ayuda de Visual Basic para aplicaciones

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar o quitar.

2.	Haga clic en Microsoft Excel y, a continuación, en Cambiar opción.

3.	Haga clic en Ayuda y archivos de ejemplo y, a continuación, haga clic en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda para Visual Basic está activada.

5.	Continúe con el programa de instalación.


Tema de Ayuda no disponible

No se puede mostrar el tema de Ayuda porque no se ha encontrado o no se ha instalado la Ayuda de Visual Basic para Microsoft Office.

Para instalar la Ayuda de Visual Basic para Microsoft Office

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar o quitar.

2.	Haga clic en Microsoft Excel y, a continuación, en Cambiar opción.

3.	Haga clic en Ayuda y archivos de ejemplo y, a continuación, haga clic en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda para Visual Basic está activada.

5.	Continúe con el programa de instalación.


Tema de Ayuda no disponible

No se puede mostrar el tema de Ayuda porque no se ha encontrado o no se ha instalado la Ayuda de Microsoft Excel.

Para instalar la Ayuda de Microsoft Excel

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar o quitar.

2.	Haga clic en Microsoft Excel y, a continuación, en Cambiar opción.

3.	Haga clic en Ayuda y archivos de ejemplo y, a continuación, haga clic en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda para Microsoft Excel está activada.

5.	Continúe con el programa de instalación.


Tema de Ayuda no disponible

No se puede mostrar el tema de Ayuda porque no se ha encontrado o no se ha instalado la Ayuda para Objetos de acceso a datos.

Para instalar la Ayuda para Objetos de acceso a datos

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar o quitar.

2.	Haga clic en Microsoft Access y, a continuación, en Cambiar opción.

3.	Haga clic en Ayuda y, a continuación, haga clic en Cambiar opción.

4.	Asegúrese de que la casilla Referencia del lenguaje está activada.

5.	Continúe con el programa de instalación.


Cambios del modelo de objeto de Microsoft Excel 97

Se han realizado grandes cambios al modelo de objetos de Visual Basic para Microsoft Excel 97, para que la aplicación admita funciones nuevas y mejoradas. Se han reemplazado muchos objetos, propiedades y métodos. Para evitar problemas de compatibilidad, se han ocultado la mayoría de los componentes reemplazados en lugar de eliminarlos. Esto significa que, de forma predeterminada, no se mostrarán en el explorador de objetos, pero el antiguo código utilizado por los componentes ocultos funcionará correctamente sin necesidad de realizar modificaciones. Sin embargo, cuando escriba código nuevo, debe utilizar los objetos, propiedades y métodos nuevos.

En la siguiente tabla se muestran los principales cambios de funciones realizados en Visual Basic para Microsoft Excel 97.

Función	Descripción
Shapes	Reemplaza el nivel de dibujo (arcos, elipses, líneas, etc.) por un modelo de objetos mejorado y uniforme en todas las aplicaciones de Microsoft Office.
Controles UserForms, ActiveX	Proporcionan un interfaz de controles y cuadros de diálogo uniforme y ampliable en todas las aplicaciones de Microsoft Office.
CommandBars	Proporciona un interfaz de menús y barras de herramientas uniforme y ampliable en todas las aplicaciones de Microsoft Office.
Para más información, consulte los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por objeto)

Nuevas propiedades y métodos (por orden alfabético)

Objetos ocultos

Propiedades y métodos ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95


Objetos ocultos

En la siguiente tabla se muestran los objetos que se han ocultado en el modelo de objetos de Visual Basic para Microsoft Excel 97. Estos objetos sólo se admiten por motivos de compatibilidad; en el nuevo código debe utilizar las nuevas funciones incluidas en Microsoft Excel 97. Para ver los objetos ocultos en el Explorador de objetos, con el botón secundario del mouse (ratón), haga clic en Mostrar miembros ocultos en el menú contextual. Para obtener más información acerca de los cambios realizados en el modelo de objetos de Microsoft Excel 97, consulte uno de los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por objeto)

Nuevas propiedades y métodos (por orden alfabético)

Propiedades y métodos ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95

Objetos ocultos	Sustituto
Arc, Arcs, Drawing, DrawingObjects, Drawings, Label, Labels, Line, Lines, Oval, Ovals, Picture, Pictures, Rectangle, Rectangles	Nueva capa de dibujo de formas Shapes
Button, Buttons, CheckBox, CheckBoxes, DialogFrame, DropDown, DropDowns, EditBox, EditBoxes, GroupBox, GroupBoxes, GroupObject, GroupObjects, ListBox, ListBoxes, OptionButton, OptionButtons, ScrollBar, ScrollBars, Spinner, Spinners, TextBox, TextBoxes	Controles ActiveX
Menu, MenuBar, MenuBars, MenuItem, MenuItems, Menus, Toolbar, ToolbarButton, ToolbarButtons, Toolbars	CommandBars
Module, Modules	Modelo de objeto de extensión VBE
DialogSheet, DialogSheets	Formularios personalizados


Nuevos objetos

En la siguiente tabla se muestran los objetos agregados a Visual Basic para Microsoft Excel 97. Para obtener más información acerca de los cambios realizados en el modelo de objetos de Microsoft Excel 97, consulte uno de los siguientes temas:

Nuevas propiedades y métodos (por objeto)

Nuevas propiedades y métodos (por orden alfabético)

Objetos ocultos

Propiedades y métodos ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95

Objeto	Descripción
CalculatedFields, CalculatedItems	Nueva función de tablas dinámicas
Comment, Comments	Nueva función de comentario; reemplaza las notas de celdas
ControlFormat, LinkFormat, OLEFormat	Expone los antiguos controles y objetos OLE de Microsoft Excel en el conjunto Shapes.
CustomView, CustomViews	Nueva función de vista personalizada
DataTable	Tabla de datos de gráficos
ChartFillFormat, FillFormat	Formato de relleno de gráficos y formas
FormatCondition, FormatConditions	Nueva función de formato condicional
HPageBreak, HPageBreaks, VPageBreak, VPageBreaks	Nuevas funciones de salto de página horizontal y vertical
Hyperlink, HyperLinks	Hipervínculos de intervalos y formas
LeaderLines	Líneas guía de gráficos que conectan rótulos de datos con puntos
ODBCError, ODBCErrors, Parameter, Parameters, QueryTable, QueryTables,	Nuevas funciones de consultas con parámetros
PivotCache, PivotCaches, PivotFormula, PivotFormulas	Nuevas funciones de tablas dinámicas
RecentFile, RecentFiles	Lista de los archivos recientemente utilizados
Adjustments, CalloutFormat, ChartColorFormat, ColorFormat, ConnectorFormat, FreeformBuilder, GroupShapes, LineFormat, PictureFormat, ShadowFormat, Shape, ShapeNode, ShapeNodes, Shapes, TextEfectFormat, TextFrame, ThreeDFormat	Nueva capa de dibujo y relleno de gráficos
Validation	Validación de intervalos de datos


Nuevas propiedades y métodos (por objeto)

En la siguiente tabla se muestran, ordenados por nombre de objeto, las propiedades y métodos agregados a los objetos existentes en Microsoft Excel 97. Para obtener más información acerca de los cambios realizados en el modelo de objetos de Microsoft Excel 97, consulte uno de los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por orden alfabético)

Objetos ocultos

Métodos y propiedades ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95

Objeto	Nuevas propiedades y métodos
Application	Propiedades Assistant, CommandBars, ControlCharacters, CursorMovement, DefaultSaveFormat, DefaultSheetDirection, DisplayCommentIndicator, EnableEvents, EnableSound, FileFind, FileSearch, ODBCErrors, ODBCTimeout, PivotTableSelection, RecentFiles, RollZoom, SaveWorkspace, ShowChartTipNames, ShowChartTipValues, UILanguage, UserControl, VBE y WorksheetFunction
AutoCorrect	Propiedades CorrectCapsLock y CorrectSentenceCap
Axis	Propiedades BaseUnit, BaseUnitIsAuto, CategoryType, Height, Left, MajorUnitScale, MinorUnitScale, Top y Width
AxisTitle	Propiedades AutoScaleFont, Fill y ReadingOrder
Chart	Métodos ApplyCustomType, Location, Export, GetChartElement, Refresh y SetSourceData, y propiedades BarShape, ChartType, CodeName, DataTable, HasDataTable, Hyperlinks, PlotBy, ProtectData, ProtectFormatting, ProtectGoalSeek, ProtectSelection, Shapes y ShowWindow
ChartArea	Propiedades AutoScaleFont y Fill
ChartGroup	Propiedades BubbleScale, Has3DShading, Index, SecondPlotSize, ShowNegativeBubbles, SizeRepresents, SplitType y SplitValue
ChartObject	Propiedades ProtectChartObject y ShapeRange
ChartObjects	Propiedad ShapeRange
Charts	Propiedades HPageBreaks y VPageBreaks
ChartTitle	Propiedades AutoScaleFont, Fill y ReadingOrder
DataLabel	Propiedades AutoScaleFont, Fill, Position y ReadingOrder
DataLabels	Propiedades AutoScaleFont, Fill, Position y ReadingOrder
DownBars	Propiedad Fill
Floor	Propiedades Fill y PictureType, y método Paste
Interior	Propiedad InvertIfNegative
Legend	Propiedades AutoScaleFont y Fill y método Clear
LegendEntry	Propiedades AutoScaleFont, Height, Left, Top y Width
LegendKey	Propiedades Fill, Height, Left, MarkerSize, PictureType, PictureUnit, Shadow, Top y Width
OLEObject	Propiedades LinkedCell, ListFillRange, ProgId, ShapeRange y SourceName
OLEObjects	Propiedades AutoLoad, ShapeRange y SourceName
PageSetup	Propiedades PrintComments
PivotField	Métodos AutoShow, AutoSort, CalculatedItems y Delete y propiedades AutoShowCount, AutoShowField, AutoShowRange, AutoShowType, AutoSortField, AutoSortOrder, DragToColumn, DragToHide, DragToPage, DragToRow, Formula, IsCalculated, MemoryUsed, ServerBased y ShowAllItems
PivotItem	Método Delete y propiedades Formula, IsCalculated y RecordCount
PivotItems	Método Add
PivotTable	Propiedades CacheIndex, DisplayErrorString, DisplayNullString, EnableDrilldown, EnableFieldDialog, EnableWizard, ErrorString, ManualUpdate, MergeLabels, NullString, PageFieldOrder, PageFieldStyle, PageFieldWrapCount, PageRangeCells, PivotSelection, PreserveFormatting, SelectionMode, SubtotalHiddenPageItems, TableStyle, Tag y VacatedStyle, y métodos CalculatedFields, GetData, ListFormulas, PivotCache, PivotFormulas, PivotSelect, PivotTableWizard y Update
PlotArea	Propiedades Fill, InsideHeight, InsideLeft, InsideTop y InsideWidth
Point	Propiedades ApplyPictToEnd, ApplyPictToFront, ApplyPictToSides, Fill, MarkerSize, SecondaryPlot y Shadow
Range	Propiedades Comment, FormatConditions, FormulaLabel, Hyperlinks, IndentLevel, MergeArea, MergeCells, QueryTable, ReadingOrder, ShrinkToFit, Validation y Value2 y métodos AddComment, ClearComments, InsertIndent, Merge, UnMerge
Series	Método ApplyCustomType y propiedades ApplyPictToEnd, ApplyPictToFront, ApplyPictToSides, BarShape, BubbleSizes, ChartType, Fill, Has3DEffect, HasLeaderLines, LeaderLines, MarkerSize y Shadow
SeriesCollection	Método NewSeries
Sheets	Propiedades HPageBreaks y VPageBreaks
Style	Propiedades BuiltIn, IndentLevel, MergeCells, ReadingOrder y ShrinkToFit
TickLabels	Propiedades AutoScaleFont y ReadingOrder
UpBars	Propiedad Fill
Walls	Propiedades Fill, PictureType, y PictureUnit y método Paste
Window	Propiedades EnableResize y View
Workbook	Propiedades AcceptLabelsInFormulas, AutoUpdateFrequency, AutoUpdateSaveChanges, ChangeHistoryDuration, CodeName, CommandBars, ConflictResolution, CustomViews, HighlightChangesOnScreen, IsAddin, KeepChangeHistory, ListChangesOnNewSheet, PersonalViewListSettings, PersonalViewPrintSettings, TemplateRemoveExtData, UserControl y VBProject y métodos AcceptAllChanges, AddToFavorites, FollowHyperlink, HighlightChangesOptions, MergeWorkbook, PivotCaches, ProtectSharing, PurgeChangeHistoryNow, RefreshAll, RejectAllChanges, Reload, RemoveUser, ResetColors y UnprotectSharing
Worksheet	Propiedades CodeName, Comments, DisplayPageBreaks, DisplayRightToLeft, EnableCalculation, EnableSelection, HPageBreaks, Hyperlinks, QueryTables, ScrollArea, Shapes y VPageBreaks y métodos CircleInvalid, ClearCircles, ResetAllPageBreaks
Worksheets	Propiedades HPageBreaks y VPageBreaks


Nuevas propiedades y métodos (por orden alfabético)

En la siguiente tabla se muestran, ordenados por nombre de método o propiedad, los métodos y propiedades agregados a los objetos existentes en Microsoft Excel 97. Para obtener más información acerca de los cambios realizados en el modelo de objetos de Microsoft Excel 97, consulte uno de los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por objeto)

Objetos ocultos

Propiedades y métodos ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95

Nueva propiedad o método	Objetos
AcceptAllChanges, método	Workbook
AcceptLabelsInFormulas, propiedad	Workbook
Add, método	PivotItems
AddComment, método	Range
AddToFavorites, método	Workbook
ApplyCustomType, método	Chart, Series
ApplyPictToEnd, propiedad	Point, Series
ApplyPictToFront, propiedad	Point, Series
ApplyPictToSides, propiedad	Point, Series
Assistant, propiedad	Application
AutoLoad, propiedad	OLEObjects
AutoScaleFont, propiedad	AxisTitle, ChartArea, ChartTitle, DataLabel, DataLabels, Legend, LegendEntry, TickLabels
AutoShow, método	PivotField
AutoShowCount, propiedad	PivotField
AutoShowField, propiedad	PivotField
AutoShowRange, propiedad	PivotField
AutoShowType, propiedad	PivotField
AutoSort, método	PivotField
AutoSortField, propiedad	PivotField
AutoSortOrder, propiedad	PivotField
AutoUpdateFrequency, propiedad	Workbook
AutoUpdateSaveChanges, propiedad	Workbook
BarShape, propiedad	Chart, Series
BaseUnit, propiedad	Axis
BaseUnitIsAuto, propiedad	Axis
BubbleScale, propiedad	ChartGroup
BubbleSizes, propiedad	Series
BuiltIn, propiedad	Style
CacheIndex, propiedad	PivotTable
CalculatedFields, método	PivotTable
CalculatedItems, método	PivotField
CategoryType, propiedad	Axis
ChangeHistoryDuration, propiedad	Workbook
ChartType, propiedad	Chart, Series
CircleInvalid, método	Worksheet
Clear, método	Legend
ClearCircles, método	Worksheet
ClearComments, método	Range
CodeName, propiedad	Chart, Workbook, Worksheet
CommandBars, propiedad	Application, Workbook
Comment, propiedad	Range
Comments, propiedad	Worksheet
ConflictResolution, propiedad	Workbook
ControlCharacters, propiedad	Application
CorrectCapsLock, propiedad	AutoCorrect
CorrectSentenceCap, propiedad	AutoCorrect
CursorMovement, propiedad	Application
CustomViews, propiedad	Workbook
DataTable, propiedad	Chart
DefaultSaveFormat, propiedad	Application
DefaultSheetDirection, propiedad	Application
Delete, método	PivotField, PivotItem
DisplayCommentIndicator, propiedad	Application
DisplayErrorString, propiedad	PivotTable
DisplayNullString, propiedad	PivotTable
DisplayPageBreaks, propiedad	Worksheet
DisplayRightToLeft, propiedad	Worksheet
DragToColumn, propiedad	PivotField
DragToHide, propiedad	PivotField
DragToPage, propiedad	PivotField
DragToRow, propiedad	PivotField
EnableCalculation, propiedad	Worksheet
EnableDrilldown, propiedad	PivotTable
EnableEvents, propiedad	Application
EnableFieldDialog, propiedad	PivotTable
EnableResize, propiedad	Window
EnableSelection, propiedad	Worksheet
EnableSound, propiedad	Application
EnableWizard, propiedad	PivotTable
ErrorString, propiedad	PivotTable
Export, método	Chart
FileFind, propiedad	Application
FileSearch, propiedad	Application
Fill, propiedad	AxisTitle, ChartArea, ChartTitle, DataLabel, DataLabels, DownBars, Floor, Legend, LegendKey, PlotArea, Point, Series, UpBars, Walls
FollowHyperlink, método	Workbook
FormatConditions, propiedad	Range
Formula, propiedad	PivotField, PivotItem
FormulaLabel, propiedad	Range
GetChartElement, método	Chart
GetData, método	PivotTable
Has3DEffect, propiedad	Series
Has3DShading, propiedad	ChartGroup
HasDataTable, propiedad	Chart
HasLeaderLines, propiedad	Series
Height, propiedad	Axis, LegendEntry, LegendKey
HighlightChangesOnScreen, propiedad	Workbook
HighlightChangesOptions, método	Workbook
HPageBreaks, propiedad	Charts, Sheets, Worksheet, Worksheets
Hyperlinks, propiedad	Chart, Range, Worksheet
IndentLevel, propiedad	Range, Style
Index, propiedad	ChartGroup
InsertIndent, método	Range
InsideHeight, propiedad	PlotArea
InsideLeft, propiedad	PlotArea
InsideTop, propiedad	PlotArea
InsideWidth, propiedad	PlotArea
InvertIfNegative, propiedad	Interior
IsAddin, propiedad	Workbook
IsCalculated, propiedad	PivotField, PivotItem
KeepChangeHistory, propiedad	Workbook
LeaderLines, propiedad	Series
Left, propiedad	Axis, LegendEntry, LegendKey
LinkedCell, propiedad	OLEObject
ListChangesOnNewSheet, propiedad	Workbook
ListFillRange, propiedad	OLEObject
ListFormulas, método	PivotTable
Location, método	Chart
MajorUnitScale, propiedad	Axis
ManualUpdate, propiedad	PivotTable
MarkerSize, propiedad	LegendKey, Point, Series
MemoryUsed, propiedad	PivotField
Merge, método	Range
MergeArea, propiedad	Range
MergeCells, propiedad	Range, Style
MergeLabels, propiedad	PivotTable
MergeWorkbook, método	Workbook
MinorUnitScale, propiedad	Axis
NewSeries, método	SeriesCollection
NullString, propiedad	PivotTable
ODBCErrors, propiedad	Application
ODBCTimeout, propiedad	Application
PageFieldOrder, propiedad	PivotTable
PageFieldStyle, propiedad	PivotTable
PageFieldWrapCount, propiedad	PivotTable
PageRangeCells, propiedad	PivotTable
Paste, método	Floor, Walls
PersonalViewListSettings, propiedad	Workbook
PersonalViewPrintSettings, propiedad	Workbook
PictureType, propiedad	Floor, LegendKey, Walls
PictureUnit, propiedad	LegendKey, Walls
PivotCache, método	PivotTable
PivotCaches, método	Workbook
PivotFormulas, método	PivotTable
PivotSelect, método	PivotTable
PivotSelection, propiedad	PivotTable
PivotTableSelection, propiedad	Application
PivotTableWizard, método	PivotTable
PlotBy, propiedad	Chart
Position, propiedad	DataLabel, DataLabels
PreserveFormatting, propiedad	PivotTable
PrintComments, propiedad	PageSetup
ProgId, propiedad	OLEObject
ProtectChartObject, propiedad	ChartObject
ProtectData, propiedad	Chart
ProtectFormatting, propiedad	Chart
ProtectGoalSeek, propiedad	Chart
ProtectSelection, propiedad	Chart
ProtectSharing, método	Workbook
PurgeChangeHistoryNow, método	Workbook
QueryTable, propiedad	Range
QueryTables, propiedad	Worksheet
ReadingOrder, propiedad	AxisTitle, ChartTitle, DataLabel, DataLabels, Range, Style, TickLabels
RecentFiles, propiedad	Application
RecordCount, propiedad	PivotItem
Refresh, método	Chart
RefreshAll, método	Workbook
RejectAllChanges, método	Workbook
Reload, método	Workbook
RemoveUser, método	Workbook
ResetAllPageBreaks, método	Worksheet
ResetColors, método	Workbook
RollZoom, propiedad	Application
SaveWorkspace, método	Application
ScrollArea, propiedad	Worksheet
SecondaryPlot, propiedad	Point
SecondPlotSize, propiedad	ChartGroup
SelectionMode, propiedad	PivotTable
ServerBased, propiedad	PivotField
SetSourceData, método	Chart
Shadow, propiedad	LegendKey, Point, Series
ShapeRange, propiedad	ChartObject, ChartObjects, OLEObject, OLEObjects
Shapes, propiedad	Chart, Worksheet
ShowAllItems, propiedad	PivotField
ShowChartTipNames, propiedad	Application
ShowChartTipValues, propiedad	Application
ShowNegativeBubbles, propiedad	ChartGroup
ShowWindow, propiedad	Chart
ShrinkToFit, propiedad	Range, Style
SizeRepresents, propiedad	ChartGroup
SourceName, propiedad	OLEObject, OLEObjects
SplitType, propiedad	ChartGroup
SplitValue, propiedad	ChartGroup
SubtotalHiddenPageItems, propiedad	PivotTable
TableStyle, propiedad	PivotTable
Tag, propiedad	PivotTable
TemplateRemoveExtData, propiedad	Workbook
Top, propiedad	Axis, LegendEntry, LegendKey
UILanguage, propiedad	Application
UnMerge, método	Range
UnprotectSharing, método	Workbook
Update, método	PivotTable
UserControl, propiedad	Application, Workbook
VacatedStyle, propiedad	PivotTable
Validation, propiedad	Range
Value2, propiedad	Range
VBE, propiedad	Application
VBProject, propiedad	Workbook
View, propiedad	Window
VPageBreaks, propiedad	Charts, Sheets, Worksheet, Worksheets
Width, propiedad	Axis, LegendEntry, LegendKey
WorksheetFunction, propiedad	Application


Propiedades y métodos ocultos

En la siguiente tabla se muestran los métodos y propiedades ocultos de objetos visibles. La mayoría de las propiedades y métodos ocultos han sido reemplazados por nuevas funciones en Microsoft Excel 97. Estas propiedades y métodos sólo se admiten por motivos de compatibilidad; en el nuevo código, debe utilizar la nueva función incluida en Microsoft Excel 97. Para obtener más información acerca de los cambios realizados al modelo de objeto de Microsoft Excel, consulte uno de los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por objeto)

Nuevas propiedades y métodos (por orden alfabético)

Objetos ocultos

Métodos con nuevos argumentos

Cambios en VBA en Microsoft Excel para Windows 95

Objeto	Propiedad o método ocultos	Sustituto
Application	ActiveDialog	Controles ActiveX
Application	ActiveMenuBar	CommandBars
Chart, Worksheet	Arcs	Shapes
AddIn, Workbook	Autor	DocumentProperties
Chart	AutoFormat	ApplyCustomType, método
Chart, Worksheet	Buttons	Controles ActiveX
Chart, Worksheet	CheckBoxes	Controles ActiveX
Application	ColorButtons	sin reemplazar
AddIn, Workbook	Comments	DocumentProperties
Application, Workbook	DialogSheets	Controles Custom Forms y ActiveX
Worksheet	DisplayAutomaticPageBreaks	DisplayPageBreaks, propiedad
Application	DisplayInfoWindow	sin reemplazar
Chart, Worksheet	DrawingObjects	Shapes
Chart, Worksheet	Drawings	Shapes
Chart, Worksheet	DropDowns	Controles ActiveX
Application	EnableTipWizard	Assistant
ChartObjects, OLEObjects	Group	Shapes
Chart, Worksheet	GroupBoxes	Shapes
Chart, Worksheet	GroupObjects	Shapes
AddIn, Workbook	Keywords	DocumentProperties
Chart, Worksheet	Labels	Shapes
Application	LargeButtons	sin reemplazar
Chart, Worksheet	Lines	Shapes
Chart, Worksheet	ListBoxes	Controles ActiveX
Application	MenuBars	CommandBars
Application, Workbook	Modules	VBE
ChartObject, ChartObjects, OLEObject, OLEObjects	OnAction	Evento Change o SheetChange
Application, Worksheet	OnCalculate	Evento Calculate
Application, Worksheet	OnData	Evento Change o SheetChange
Application, Chart, Worksheet	OnDoubleClick	Evento BeforeDoubleClick
Application, Worksheet	OnEntry	Evento Change
Workbook	OnSave	Evento BeforeSave
Application, Chart, Workbook, Worksheet	OnSheetActivate	Evento Activate o SheetActivate
Application, Chart, Workbook, Worksheet	OnSheetDeactivate	Eventos Deactivate o SheetDeactivate
Chart, Worksheet	OptionButtons	Controles ActiveX
Chart, Worksheet	Ovals	Controles ActiveX
Chart, Worksheet	Pictures	Shapes
Chart, Worksheet	Rectangles	Shapes
Application	ResetTipWizard	Ayudante
Application	Save	SaveWorkspace, método
Chart, Worksheet	ScrollBars	Controles ActiveX
Window	SetInfoDisplay	sin reemplazar
Application	ShortcutMenus	CommandBars
Chart, Worksheet	Spinners	Controles ActiveX
AddIn, Workbook	Subject	DocumentProperties
Chart, ChartGroup	SubType	ChartType, propiedad
Chart, Worksheet	TextBoxes	Controles ActiveX
AddIn, Workbook	Title	DocumentProperties
Application	Toolbars	CommandBars
Chart, ChartGroup	Type	ChartType, propiedad


Métodos con nuevos argumentos

En la siguiente tabla se muestran los métodos con nuevos argumentos agregados a Microsoft Excel 97. Para obtener más información acerca de los cambios realizados en el modelo de objetos de Microsoft Excel 97, consulte uno de los siguientes temas:

Nuevos objetos

Nuevas propiedades y métodos (por objeto)

Nuevas propiedades y métodos (por orden alfabético)

Objetos ocultos

Propiedades y métodos ocultos

Cambio en Visual Basic en Microsoft Excel para Windows 95

Método	Objetos	Nuevos argumentos
Add	OLEObjects	Left, Top, Width, Height
ApplyDataLabels	Chart, Series	AutoText, HasLeaderLines
ApplyDataLabels	Point	AutoText
AutoFilter	Range	VisibleDropDown
CheckSpelling	Chart, Range, Worksheet	IgnoreInitialAlefHamza, IgnoreFinalYaa, SpellScript (estos argumentos no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel)
Find	Range	MatchControlCharacters, MatchDiacritics, MatchKashida, MatchAlefHamza (estos argumentos no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel)
Open	Workbooks	AddToMru
OpenText	Workbooks	TextVisualLayout (no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel)
PivotTableWizard	Worksheet	BackgroundQuery, OptimizeCache, PageFieldOrder, PageFieldWrapCount, ReadData, Connection
PrintPreview	Chart, Charts, Range, Sheets, Window, Workbook, Worksheet, Worksheets	EnableChanges
RegisteredFunctions	Application	Index1, Index2
Replace	Range	MatchControlCharacters, MatchDiacritics, MatchKashida, MatchAlefHamza (estos argumentos no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel)
Run	Application	Ahora se utiliza una matriz de argumentos de longitud variable
SaveAs	Chart, Workbook, Worksheet	AddToMru, TextCodepage, TextVisualLayout (los últimos dos argumentos no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel)
SetDefaultChart	Application	Gallery
Sort	Range	SortMethod, IgnoreControlCharacters, IgnoreDiacritics, IgnoreKashida (los últimos tres argumentos no se utilizan en la versión ingles para EE.UU. de Microsoft Excel)


Cambios en VBA en Microsoft Excel para Windows 95

         Arriba

Este tema trata las diferencias entre el modelo de objetos de Visual Basic de la versión 5.0 de Microsoft Excel y el de Microsoft Excel para Windows 95. Para obtener más información acerca de las diferencias entre Microsoft Excel para Windows 95 y Microsoft Excel 97, vea Cambios del modelo de objeto de Microsoft Excel 97.

Se han cambiado propiedades y métodos existentes y se han agregado nuevas propiedades, métodos y objetos a Visual Basic de Microsoft Excel para Windows 95. Para obtener más información acerca de estos cambios, seleccione uno de los elementos de la siguiente lista, o desplácese hasta este tema para buscar la información.

Propiedades y métodos modificados

Soporte para Autocorrección

Soporte para propiedades de documento OLE

Soporte para Autocompletar

Control de protección

Control de la presentación

Miscelánea

Propiedades y métodos modificados

Se han modificado las siguientes propiedades y métodos para que admitan las nuevas funciones de Microsoft Excel o mejorar las funciones existentes.

Tema	Descripción
Método GetOpenFileName	El nuevo argumento multiSelect permite seleccionar más de un nombre de archivo en el cuadro de diálogo Abrir.
Propiedad Names	Se ha agregado al objeto Worksheet para controlar nombres con ámbito de hoja.
Método PasteSpecial	En el objeto Range, una nueva constante del argumento paste permite pegar el contenido y el formato de un rango pero sin formato de borde.
Método Protect	El nuevo argumento userInterfaceOnly permite especificar protección contra los cambios realizados por el usuario, aunque sigue permitiendo los cambios realizados por el código de Visual Basic.
Método SaveAs	Nuevos argumentos permiten especificar el acceso en modo compartido y cómo se resuelven los conflictos producidos por los cambios.
Propiedad StatusBar	Se ha agregado al objeto ToolbarButton.
Soporte para Autocorrección

Se han agregado los métodos, propiedades y objetos siguientes para permitir la corrección automática.

Tema	Descripción
Método AddReplacement	Agrega una fila a la matriz de sustituciones de Autocorrección devuelta por el método ReplacementList.
Objeto AutoCorrect	Contiene atributos de Autocorrección (uso de mayúsculas en los nombres de los días, corrección de dos mayúsculas iniciales, lista de corrección automática, etc.).
Propiedad AutoCorrect	Devuelve un objeto AutoCorrect que representa los atributos de Autocorrección.
Propiedad CapitalizeNamesOfDays	True si se escribe automáticamente con mayúsculas la primera letra de los nombres y abreviaturas de los días.
Método DeleteReplacement	Elimina una fila de la matriz de sustituciones de Autocorrección devuelta por el método ReplacementList.
Método ReplacementList	Devuelve o establece la matriz completa o una fila de la matriz de sustituciones de Autocorrección.
Propiedad ReplaceText	True si el texto de la columna uno de la matriz de sustituciones de Autocorrección se sustituye automáticamente por el texto de la columna dos.
Propiedad TwoInitialCapitals	True si se corrigen automáticamente dos letras mayúsculas iniciales.
Soporte para propiedades de documento OLE

Se han agregado las nuevas propiedades, métodos y objetos siguientes para admitir las propiedades de documento OLE. Las propiedades de documento permiten a Microsoft Excel exponer un conjunto estándar de propiedades de documento integradas y otras personalizadas agregadas por el usuario.

Tema	Descripción
Propiedad BuiltinDocumentProperties	Devuelve un objeto del conjunto DocumentProperties que contiene las propiedades de documento integradas del objeto.
Propiedad CustomDocumentProperties	Devuelve un objeto del conjunto DocumentProperties que contiene las propiedades de documento personalizadas del objeto.
Objeto DocumentProperties	Representa el conjunto de propiedades de documento, integradas o personalizadas.
Objeto DocumentProperty	Representa una sola propiedad de documento.
Propiedad LinkedToContent	True si el valor de la propiedad personalizada está vinculado al contenido del documento en el que se encuentra; False si la propiedad es un valor estático
Propiedad LinkSource	Especifica el origen de una propiedad de documento personalizada que está vinculada al contenido del documento.
Soporte para Autocompletar

Se han agregado el método y la propiedad siguientes para admitir la función Autocompletar.

Tema	Descripción
Método AutoComplete	Devuelve una cadena rellena de la lista, o una cadena vacía si no se ha rellenado o si coinciden varios elementos de la lista.
Propiedad EnableAutoComplete	True si está habilitada la característica Autocompletar.
Control de protección

Se han agregado las siguientes propiedades para permitir el control de la capacidad del usuario para cambiar barras de herramientas, listas filtradas, tablas dinámicas y esquemas.

Tema	Descripción
Propiedad EnableAutoFilter	True si están habilitadas las flechas de Autofiltro cuando se activa la protección de sólo interfaz de usuario.
Propiedad EnableOutlining	True si están habilitados los símbolos de esquema (mostrar u ocultar detalle) cuando se activa la protección de sólo interfaz de usuario.
Propiedad EnablePivotTable	True si están habilitados los controles y acciones de tabla dinámica cuando se activa la protección de sólo interfaz de usuario
Control de la presentación

Se han agregado las propiedades y los métodos siguientes para controlar la presentación aspecto del puntero del mouse (ratón), activar y desactivar la inserción y eliminación animadas, crear un cuadro de edición de contraseñas y establecer el gráfico de fondo para una hoja de cálculo o gráfico.

Tema	Descripción
Propiedad Cursor	Establece la presentación del puntero del mouse (ratón) en Microsoft Excel.
Propiedad EnableAnimation	True si están habilitadas la inserción y la eliminación animadas.
Método SetBackgroundPicture	Establece el gráfico de fondo para una hoja de cálculo o un gráfico.
Miscelánea

Tema	Descripción
Propiedad AutoLoad	True si el objeto OLE se carga automáticamente cuando se abre el libro que contiene el objeto.
Método CopyFromRecordset	Copia el contenido de un objeto DAO Recordset en las celdas de una hoja de cálculo, comenzando en la primera celda del rango especificado.
Propiedad ListHeaderRows	Devuelve el número de filas de encabezado para el rango especificado.
Propiedad MoveAfterReturnDirection	Controla la dirección en el que se mueve la celda activa cuando el usuario presiona la tecla ENTRAR.
Propiedad NetworkTemplatesPath	Devuelve la ruta de acceso a la red en la que están almacenadas las plantillas. Si no existe la ruta de acceso a la red, la propiedad devuelve una cadena vacía.
Método Post	Envía el libro especificado a una carpeta pública de Microsoft Exchange o una base de datos de Lotus Notes.
Propiedad ProtectionMode	True si está activada la protección de sólo interfaz de usuario.
Propiedad RangeSelection	Devuelve un objeto Range que representa las celdas seleccionadas de la hoja de cálculo en la ventana especificada, aunque un objeto gráfico esté activo o seleccionado en la hoja de cálculo.
Propiedad RefersToRange	Devuelve el objeto Range al que se hace referencia un objeto Name.
Propiedad TemplatesPath	Devuelve la ruta de acceso local en que están almacenadas las plantillas.


Método RunAutoMacros

Ejecuta la macro Auto_abrir, Auto_cerrar, Auto_activar o Auto_desactivar adjunta al libro. Este método se incluye por motivos de compatibilidad con versiones anteriores. En el nuevo código de Visual Basic debería utilizar los eventos Open, Close, Activate y Deactivate en lugar de las macros anteriores.

Sintaxis

expresión.RunAutoMacros(Which)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Which   Requerido. Las macros que se ejecutarán. Puede ser una de las siguientes constantes XlRunAutoMacro:

Constante	Descripción
xlAutoOpen	Macros Auto_abrir
xlAutoClose	Macros Auto_cerrar
xlAutoActivate	Macros Auto_activar
xlAutoDeactivate	Macros Auto_desactivar


Ejemplo del método RunAutoMacros

Este ejemplo abre el libro Analisis.xls y, a continuación, ejecuta la macro Auto_abrir.

Workbooks.Open "ANALISIS.XLS"

ActiveWorkbook.RunAutoMacros xlAutoOpen

Este ejemplo ejecuta la macro Auto_cerrar para el libro activo y, a continuación, cierra el libro.

With ActiveWorkbook

.RunAutoMacros xlAutoClose

.Close

End With


Evento Activate

Ocurre cuando se activa un libro, una hoja de cálculo, una hoja de gráfico o un gráfico incrustado.

Sintaxis

Private Sub objeto_Activate()

objeto   Chart, Workbook o Worksheet. Para obtener información acerca del uso de eventos con el objeto Chart, véase Utilizar eventos con el objeto Chart.

Comentarios

Al alternar entre dos ventanas que muestran el mismo libro, ocurrirá el evento WindowActivate, pero no ocurrirá el evento Activate del libro.

Este evento no ocurre al crear una ventana nueva.


Ejemplo del evento Activate

Este ejemplo ordena el rango A1:A10 al activar la hoja de cálculo.

Private Sub Worksheet_Activate()

Range("a1:a10").Sort Key1:=Range("a1"), Order:=xlAscending

End Sub


Evento AddinInstall

Ocurre al instalar el libro como macro automática

Sintaxis

Private Sub Workbook_AddinInstall()


Ejemplo del evento AddinInstall

Este ejemplo agrega un control a la barra de herramientas estándar cuando el libro se instala como macro automática.

Private Sub Workbook_AddinInstall()

With Application.Commandbars("Standard").Controls.Add

.Caption = "El elemento de menú de la macro automática"

.OnAction = "'EstaMacroAutomática.xls'!Unamacro"

End With

End Sub


Evento AddinUninstall

Ocurre al desinstalar el libro como macro automática

Sintaxis

Private Sub Workbook_AddinUninstall()

Comentarios

La macro automática no se cierra automáticamente al ser desinstalada.


Ejemplo del evento AddinUninstall

Este ejemplo minimiza Microsoft Excel al desinstalar el libro como macro automática.

Private Sub Workbook_AddinUninstall()

Application.WindowState = xlMinimized

End Sub


Evento AfterRefresh

Ocurre después de que se haya completado o cancelado una consulta.

Sintaxis

Private Sub QueryTable_AfterRefresh(Success As Boolean)

Success   True si la consulta se ha completado con éxito.


Ejemplo del evento AfterRefresh

Este ejemplo utiliza el argumento Success para determinar qué parte del código debe ejecutarse.

Private Sub QueryTable_AfterRefresh(Success As Boolean)

If Success

' Consulta completada con éxito

Else

' Consulta fallida o cancelada

End If

End Sub


Evento BeforeClose

Ocurre antes de que el libro se cierre. Si el libro ha sido modificado, este evento ocurre antes de pedir al usuario que guarde las modificaciones.

Sintaxis

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la operación de cierre se detiene y el libro permanece abierto.


Ejemplo del evento BeforeClose

Este ejemplo siempre guarda el libro, si ha sido modificado.

Private Sub Workbook_BeforeClose(Cancel as Boolean)

If Me.Saved = False Then Me.Save

End Sub


Evento BeforeDoubleClick

Ocurre al hacer doble clic en un gráfico incrustado o en una hoja de cálculo incrustada, antes de la acción predeterminada para el doble clic.

Sintaxis 1

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

Sintaxis 2

Private Sub objeto_BeforeDoubleClick(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long, Cancel As Boolean)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

Target   La celda más cercana al puntero del mouse (ratón) al hacer doble clic.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la acción predeterminada del doble clic no se efectuará al finalizar el procedimiento.

ElementID   El objeto en el que se ha hecho doble clic. El significado de Arg1 y Arg2 depende del valor de ElementID, como se aprecia en la siguiente tabla.

ElementID	Arg1	Arg2
xlChartArea	Ninguno	Ninguno
xlChartTitle	Ninguno	Ninguno
xlPlotArea	Ninguno	Ninguno
xlLegend	Ninguno	Ninguno
xlFloor	Ninguno	Ninguno
xlWalls	Ninguno	Ninguno
xlCorners	Ninguno	Ninguno
xlDataTable	Ninguno	Ninguno
xlSeries	SeriesIndex	PointIndex
xlDataLabel	SeriesIndex	PointIndex
xlTrendline	SeriesIndex	TrendLineIndex
xlErrorBars	SeriesIndex	Ninguno
xlXErrorBars	SeriesIndex	Ninguno
xlYErrorBars	SeriesIndex	Ninguno
xlLegendEntry	SeriesIndex	Ninguno
xlLegendKey	SeriesIndex	Ninguno
xlAxis	AxisIndex	AxisType
xlMajorGridlines	AxisIndex	AxisType
xlMinorGridlines	AxisIndex	AxisType
xlAxisTitle	AxisIndex	AxisType
xlUpBars	GroupIndex	Ninguno
xlDownBars	GroupIndex	Ninguno
xlSeriesLines	GroupIndex	Ninguno
xlHiLoLines	GroupIndex	Ninguno
xlDropLines	GroupIndex	Ninguno
xlRadarAxisLabels	GroupIndex	Ninguno
xlShape	ShapeIndex	Ninguno
xlNothing	Ninguno	Ninguno
La siguiente tabla describe el significado de los argumentos.

Argumento	Descripción
SeriesIndex	Especifica el índice de una serie determinada dentro del conjunto Series.
PointIndex	Especifica el índice de un punto determinado dentro del conjunto Points. El valor  – 1 indica que todos los puntos de datos están seleccionados.
TrendLineIndex	Especifica el índice de una línea de tendencia determinada dentro del conjunto Trendlines.
AxisIndex	Especifica si el eje es primario (0) o secundario (1).
AxisType	Especifica el tipo de eje: categoría (0), valor (1) o serie (2).
GroupIndex	Especifica el índice de un grupo de gráficos determinado dentro del conjunto ChartGroups.
ShapeIndex	Especifica el índice de una forma determinada dentro del conjunto Shapes.
Comentarios

El método DoubleClick no ejecuta este evento.

Este evento no ocurre cuando el usuario hace doble clic en el borde de una celda.


Ejemplo del evento BeforeDoubleClick

Este ejemplo cambia el comportamiento predeterminado del doble clic del plano inferior de un gráfico.

Private Sub Chart_BeforeDoubleClick(ByVal ElementID As Long, _

ByVal Arg1 As Long, ByVal Arg2 As Long, Cancel As Boolean)

If ElementID = xlFloor Then

Cancel = True

MsgBox "El formato de gráfico de este elemento está restringido."

End If

End Sub


Evento BeforePrint

Ocurre antes de que se imprima el libro o cualquiera de sus partes.

Sintaxis

Private Sub Workbook_BeforePrint(Cancel As Boolean)

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, el libro no se imprimirá al finalizar el procedimiento.


Ejemplo del evento BeforePrint

Este ejemplo recalcula todas las hojas de cálculo del libro activo antes de imprimir.

Private Sub Workbook_BeforePrint(Cancel As Boolean)

For Each hoja In Worksheets

hoja.Calculate

Next

End Sub


Evento BeforeRefresh

Ocurre antes de realizar cualquier actualización en la tabla de consulta. Incluye actualizaciones producidas por llamadas al método Refresh, por acciones del usuario y por la apertura del libro que contiene la tabla de consulta.

Sintaxis

Private Sub QueryTable_BeforeRefresh(Cancel As Boolean)

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la actualización no se efectuará al finalizar el procedimiento.


Ejemplo del evento BeforeRefresh

Este ejemplo se ejecuta antes de que se actualice la tabla de consulta.

Private Sub QueryTable_BeforeRefresh(Cancel As Boolean)

    a = MsgBox("¿Actualizar ahora?", vbYesNoCancel)

    If a = vbNo Then Cancel = True

    MsgBox Cancel

End Sub


Evento BeforeRightClick

Ocurre al hacer clic con el botón secundario en un gráfico incrustado o en una hoja de cálculo incrustada, antes de la acción predeterminada.

Sintaxis 1

Private Sub objeto_BeforeRightClick(Cancel As Boolean)

Sintaxis 2

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

Target   La celda más cercana al puntero del mouse (ratón) cuando se hace clic con el botón secundario.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la acción predeterminada del clic con el botón secundario no se efectuará al finalizar el procedimiento.

Comentarios

Al igual que otros eventos de hoja de cálculo, este evento no ocurre si, al hacer clic, el puntero del mouse (ratón) se encuentra sobre una forma o una barra de comandos (una barra de herramientas o una barra de menús).


Ejemplo del evento BeforeRightClick

Este ejemplo agrega un elemento nuevo al menú contextual de las celdas B1:B10.

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, _

        Cancel As Boolean)

    For Each icbc In Application.CommandBars("cell").Controls

        If icbc.Tag = "brccm" Then icbc.Delete

    Next icbc

    If Not Application.Intersect(Target, Range("b1:b10")) _

        Is Nothing Then

            With Application.CommandBars("cell").Controls _

                .Add(Type:=msoControlButton, before:=6, _

                temporary:=True)

           .Caption = "Nuevo elemento de menú contextual"

           .OnAction = "MiMacro"

           .Tag = "brccm"

        End With

    End If

End Sub


Evento BeforeSave

Ocurre antes de que el libro se guarde.

Sintaxis

Private Sub Workbook_BeforeSave(ByVal SaveAsUi As Boolean, Cancel As Boolean)

SaveAsUi   True si se va a mostrar el cuadro de diálogo Guardar como.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, el libro no se guardará al finalizar el procedimiento.


Ejemplo del evento BeforeSave

Este ejemplo pide confirmación al usuario antes de guardar el libro.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _

Cancel As Boolean)

a = MsgBox("¿De verdad desea guardar el libro?", vbYesNo)

If a = vbNo Then Cancel = True

End Sub


Evento Calculate

Objeto Chart: Ocurre después de que el gráfico trace datos nuevos o modificados.

Objeto Worksheet: Ocurre después de que se recalcule la hoja de cálculo.

Sintaxis

Private Sub objeto_Calculate()

objeto   Chart o Worksheet. Para obtener más información acerca del uso de eventos con el objeto Chart, véase Utilizar eventos con el objeto Chart.


Ejemplo del evento Calculate

Este ejemplo ajusta el tamaño de las columnas A a F, cada vez que se recalcula la hoja de cálculo.

Private Sub Worksheet_Calculate()

Columns("A:F").AutoFit

End Sub


Evento Change

Ocurre cuando alguna celda de la hoja de cálculo es modificada por el usuario o por un vínculo externo.

Sintaxis

Private Sub Worksheet_Change(ByVal Target As Range)

Target   El rango modificado. Puede ser más de una celda.

Comentarios

Este evento no ocurre si las celdas se modifican durante un recálculo. Utilice el evento Calculate para detectar el recálculo de una hoja.

Al eliminar celdas no se desencadena este evento.


Ejemplo del evento Change

Este ejemplo cambia a azul el color de las celdas modificadas.

Private Sub Worksheet_Change(ByVal Target as Range)

Target.Font.ColorIndex = 5

End Sub


Evento Deactivate

Ocurre cuando se desactiva el gráfico, la hoja de cálculo o el libro.

Sintaxis

Private Sub objeto_Deactivate()

objeto   Chart, Workbook o Worksheet. Para obtener información acerca del uso de eventos con el objeto Chart, véase Utilizar eventos con el objeto Chart.


Ejemplo del evento Deactivate

Este ejemplo organiza todas las ventanas abiertas, al desactivar el libro.

Private Sub Workbook_Deactivate()

Application.Windows.Arrange xlArrangeStyleTiled

End Sub


Evento DragOver

Ocurre al arrastrar un rango de celdas sobre un gráfico.

Sintaxis

Private Sub objeto_DragOver()

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.


Ejemplo del evento DragOver

Este ejemplo muestra la dirección de un rango de celdas que se han arrastrado sobre un gráfico.

Private Sub Chart_DragOver()

MsgBox Selection.Address

End Sub


Evento DragPlot

Ocurre al arrastrar y colocar un rango de celdas sobre un gráfico.

Sintaxis

Private Sub objeto_DragPlot()

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.


Ejemplo del evento DragPlot

Este ejemplo cambia el tipo de un gráfico al arrastrar y colocar sobre él un rango de celdas.

Private Sub Chart_DragPlot()

Me.ChartType = xlLine

End Sub


Evento MouseDown

Ocurre al presionar un botón del mouse (ratón) cuando el puntero está sobre un gráfico.

Sintaxis

Private Sub objeto_MouseDown(ByVal Button As Long, ByVal Shift As Long, ByVal X As Long, ByVal Y As Long)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

Button   El botón del mouse (ratón) que se ha presionado. Puede ser una de las siguientes constantes XlMouseButton: xlNoButton, xlPrimaryButton, xlSecondaryButton o xlMiddleButton.

Shift   El estado de las teclas MAYÚS, CTRL y ALT al ocurrir el evento. Puede ser uno de los siguientes valores o bien una suma de ellos.

Valor	Significado
0 (cero)	Ninguna tecla
1	La tecla SHIFT
2	La tecla CTRL
4	La tecla ALT
X   La coordenada X del puntero del mouse en coordenadas cliente del objeto gráfico.

Y   La coordenada Y del puntero del mouse en coordenadas cliente del objeto gráfico.


Ejemplo del evento MouseDown

Este ejemplo se ejecuta al presionar un botón del mouse (ratón) cuando el puntero está sobre un gráfico.

Private Sub Chart_MouseDown(ByVal Button As Long, _

ByVal Shift As Long, ByVal X As Long, ByVal Y As Long)

MsgBox "Botón = " & Button & chr$(13) & _

"Mayús = " & Shift & chr$(13) & _

"X = " & X & " Y = " & Y

End Sub


Evento MouseMove

Ocurre al cambiar la posición del puntero del mouse (ratón) sobre un gráfico.

Sintaxis

Private Sub objeto_MouseMove(ByVal X As Long, ByVal Y As Long)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

X   La coordenada X del puntero del mouse en coordenadas cliente del objeto gráfico.

Y   La coordenada Y del puntero del mouse en coordenadas cliente del objeto gráfico.


Ejemplo del evento MouseMove

Este ejemplo se ejecuta al cambiar la posición del puntero del mouse (ratón) sobre un gráfico.

Private Sub Chart_MouseMove(ByVal X As Long, ByVal Y As Long)

MsgBox "X = " & X & " Y = " & Y

End Sub


Evento MouseUp

Ocurre al soltar un botón del mouse (ratón) cuando el puntero está sobre un gráfico.

Sintaxis

Private Sub objeto_MouseUp(ByVal Button As Long, ByVal Shift As Long, ByVal X As Long, ByVal Y As Long)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

Button   El botón del mouse que se ha soltado. Puede ser una de las siguientes constantes XlMouseButton: xlNoButton, xlPrimaryButton, xlSecondaryButton o xlMiddleButton.

Shift   El estado de las teclas MAYÚS, CTRL y ALT al ocurrir el evento. Puede ser uno de los siguientes valores o bien una suma de ellos.

Valor	Significado
0 (cero)	Ninguna tecla
1	La tecla SHIFT
2	La tecla CTRL
4	La tecla ALT
X   La coordenada X del puntero del mouse en coordenadas cliente del objeto gráfico.

Y   La coordenada Y del puntero del mouse en coordenadas cliente del objeto gráfico.


Ejemplo del evento MouseUp

Este ejemplo se ejecuta al soltar un botón del mouse (ratón) cuando el puntero está sobre un gráfico.

Private Sub Chart_MouseUp(ByVal Button As Long, _

ByVal Shift As Long, ByVal X As Long, ByVal Y As Long)

MsgBox "Botón = " & Button & chr$(13) & _

"Mayús = " & Shift & chr$(13) & _

"X = " & X & " Y = " & Y

End Sub


Evento NewSheet

Ocurre al crear una hoja nueva en el libro.

Sintaxis

Private Sub Workbook_NewSheet(ByVal Sh As Object)

Sh   La nueva hoja. Puede ser un objeto Worksheet o Chart.


Ejemplo del evento NewSheet

Este ejemplo mueve las hojas nuevas al final del libro.

Private Sub Workbook_NewSheet(ByVal Sh as Object)

Sh.Move After:= Sheets(Sheets.Count)

End Sub


Evento NewWorkbook

Ocurre al crear un nuevo libro.

Sintaxis

Private Sub objeto_NewWorkbook(ByVal Wb As Workbook)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Application.

Wb   El nuevo libro.


Ejemplo del evento NewWorkbook

Este ejemplo organiza las ventanas abiertas cuando se crea un nuevo libro.

Private Sub App_NewWorkbook(ByVal Wb As Workbook)

Application.Windows.Arrange xlArrangeStyleTiled

End Sub


Evento SeriesChange

Ocurre cuando el usuario modifica el valor de un punto de datos del gráfico.

Sintaxis

Private Sub objeto_SeriesChange(ByVal SeriesIndex As Long, ByVal PointIndex As Long)

objeto   Un objeto de tipo Chart declarado con eventos en un módulo de clase. Para obtener más información véase Utilizar eventos con el objeto Chart.

SeriesIndex   Especifica el índice de la serie modificada dentro del conjunto Series.

PointIndex   Especifica el índice del punto modificado, dentro del conjunto Points.


Ejemplo del evento SeriesChange

Este ejemplo modifica el color del borde de un punto cuando el usuario modifica el valor de dicho punto.

Private Sub Chart_SeriesChange(ByVal SeriesIndex As Long, _

ByVal PointIndex As Long)

    Set p = Me.SeriesCollection(SeriesIndex).Points(PointIndex)

    p.Border.ColorIndex = 3

End Sub


Evento SheetActivate

Ocurre cuando se activa una hoja.

Sintaxis

Private Sub objeto_SheetActivate(ByVal Sh As Object)

objeto   Application o Workbook.

Sh   La hoja activada. Puede ser un objeto Chart o WorkSheet.


Ejemplo del evento SheetActivate

Este ejemplo muestra el nombre de cada hoja activada.

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

MsgBox Sh.Name

End Sub


Evento SheetBeforeDoubleClick

Ocurre al hacer doble clic en una hoja de cálculo, antes de la acción predeterminada para el doble clic.

Sintaxis

Private Sub objeto_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, ByVal Cancel As Boolean)

objeto   Application o Workbook. Para obtener información acerca del uso de eventos con el objeto Application, véase Utilizar eventos con el objeto Application.

Sh   Un objeto Worksheet que representa la hoja de cálculo.

Target   La celda más cercana al puntero del mouse (ratón) al ocurrir el doble clic.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la acción predeterminada del doble clic no se efectuará al finalizar el procedimiento.

Comentarios

Este evento no ocurre en hojas de gráficos.


Ejemplo del evento SheetBeforeDoubleClick

Este ejemplo inhabilita la acción predeterminada para el doble clic.

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, _

ByVal Target As Range, ByVal Cancel As Boolean)

Cancel = True

End Sub


Evento SheetBeforeRightClick

Ocurre al hacer clic con el botón secundario del mouse (ratón) en una hoja de cálculo, antes de la acción predeterminada.

Sintaxis

Private Sub objeto_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, ByVal Cancel As Boolean)

objeto   Application o Workbook. Para obtener información acerca del uso de eventos con el objeto Application, véase Utilizar eventos con el objeto Application.

Sh   Un objeto Worksheet que representa la hoja de cálculo.

Target   La celda más cercana al puntero del mouse al ocurrir el clic con el botón secundario.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, la acción predeterminada del clic con el botón secundario no se efectuará al finalizar el procedimiento.

Comentarios

Este evento no ocurre en hojas de gráficos.


Ejemplo del evento SheetBeforeRightClick

Este ejemplo inhabilita la acción predeterminada para el clic con el botón secundario del mouse (ratón). Véase el ejemplo para el evento BeforeRightClick.

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, _

ByVal Target As Range, ByVal Cancel As Boolean)

Cancel = True

End Sub


Evento SheetCalculate

Ocurre después de recalcular una hoja de cálculo o de trazar los datos modificados de un gráfico.

Sintaxis

Private Sub objeto_SheetCalculate(ByVal Sh As Object)

objeto   Application o Workbook. Para obtener información acerca del uso de eventos con el objeto Application, véase Utilizar eventos con el objeto Application.

Sh   La hoja. Puede ser un objeto Chart o WorkSheet.


Ejemplo del evento SheetCalculate

Este ejemplo ordena el rango A1:A100 de la hoja de cálculo uno, cuando se recalcula cualquier hoja del libro.

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)

With Worksheets(1)

.Range("a1:a100").Sort Key1:=.Range("a1")

End With

End Sub


Evento SheetChange

Ocurre cuando una celda de cualquier hoja de cálculo es modificada por el usuario o por un vínculo externo.

Sintaxis

Private Sub objeto_SheetChange(ByVal Sh As Object, ByVal Source As Range)

objeto   Application o Workbook. Para obtener información acerca del uso de eventos con el objeto Application, véase Utilizar eventos con el objeto Application.

Sh   Un objeto Worksheet que representa la hoja de cálculo.

Source   El rango modificado.

Comentarios

Este evento no ocurre en hojas de gráficos.


Ejemplo del evento SheetChange

Este ejemplo se ejecuta cuando se modifica cualquier hoja de cálculo.

Private Sub Workbook_SheetChange(ByVal Sh As Object, _

ByVal Source As Range)

' Se ejecuta cuando se modifica una hoja

End Sub


Evento SheetDeactivate

Ocurre cuando se desactiva cualquier hoja.

Sintaxis

Private Sub objeto_SheetDeactivate(ByVal Sh As Object)

objeto   Application o Workbook.

Sh   La hoja. Puede ser un objeto Chart o WorkSheet.


Ejemplo del evento SheetDeactivate

Este ejemplo muestra el nombre de cada hoja desactivada.

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)

MsgBox Sh.Name

End Sub


Evento WorkbookActivate

Ocurre cuando se activa cualquier libro.

Sintaxis

Private Sub ap_WorkbookActivate(ByVal Wb As Workbook)

ap   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro activado.


Ejemplo del evento WorkbookActivate

Este ejemplo organiza las ventanas abiertas, al ser activado un libro.

Private Sub App_WorkbookActivate(ByVal Wb As Workbook)

Application.Windows.Arrange xlArrangeStyleTiled

End Sub


Evento WorkbookAddinInstall

Ocurre al instalar un libro como macro automática

Sintaxis

Private Sub objeto_WorkbookAddinInstall(ByVal Wb As Workbook)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro instalado.


Ejemplo del evento WorkbookAddinInstall

Este ejemplo maximiza la ventana de Excel, cuando se instala un libro como macro automática.

Private Sub App_WorkbookAddinInstall(ByVal Wb As Workbook)

Application.WindowState = xlMaximized

End Sub


Evento WorkbookAddinUninstall

Ocurre al desinstalar cualquier libro que esté instalado como macro automática.

Sintaxis

Private Sub objeto_WorkbookAddinUninstall(ByVal Wb As Workbook)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro desinstalado.


Ejemplo del evento WorkbookAddinUninstall

Este ejemplo minimiza la ventana de Excel, cuando se desinstala un libro instalado como macro automática.

Private Sub App_WorkbookAddinUninstall(ByVal Wb As Workbook)

Application.WindowState = xlMinimized

End Sub


Evento WorkbookBeforeClose

Ocurre antes de que se cierre cualquier libro.

Sintaxis

Private Sub objeto_WorkbookBeforeClose(ByVal Wb As Workbook, ByVal Cancel As Boolean)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro que está siendo cerrado.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, el libro no se cerrará al finalizar el procedimiento.


Ejemplo del evento WorkbookBeforeClose

Este ejemplo pide confirmación al usuario antes de cerrar el libro.

Private Sub App_WorkbookBeforeClose(ByVal Wb as Workbook, _

Cancel as Boolean)

a = MsgBox("¿De verdad desea cerrar el libro?", vbYesNo)

If a = vbNo Then Cancel = True

End Sub


Evento WorkbookBeforePrint

Ocurre antes de que se imprima cualquier libro abierto.

Sintaxis

Private Sub objeto_WorkbookBeforePrint(ByVal Wb As Workbook, ByVal Cancel As Boolean)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, el libro no se imprimirá al finalizar el procedimiento.


Ejemplo del evento WorkbookBeforePrint

Este ejemplo recalcula todas las hojas de cálculo del libro antes de imprimir.

Private Sub App_WorkbookBeforePrint(ByVal Wb As Workbook, _

Cancel As Boolean)

For Each hoja in Wb.Worksheets

hoja.Calculate

Next

End Sub


Evento WorkbookBeforeSave

Ocurre antes de que se guarde cualquier libro abierto.

Sintaxis

Private Sub objeto_WorkbookBeforeSave(ByVal Wb As Workbook, ByVal SaveAsUi As Boolean, ByVal Cancel As Boolean)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro.

SaveAsUi   True si se va a mostrar el cuadro de diálogo Guardar como.

Cancel   False al ocurrir el evento. Si el procedimiento de evento establece el valor de este argumento en True, el libro no se guardará al finalizar el procedimiento.


Ejemplo del evento WorkbookBeforeSave

Este ejemplo pide confirmación al usuario antes de guardar cualquier libro.

Private Sub App_WorkbookBeforeSave(ByVal Wb As Workbook, _

ByVal SaveAsUI As Boolean, Cancel as Boolean)

a = MsgBox("¿De verdad desea guardar el libro?", vbYesNo)

If a = vbNo Then Cancel = True

End Sub


Evento WorkbookDeactivate

Ocurre antes de que se desactive cualquier libro abierto.

Sintaxis

Private Sub objeto_WorkbookDeactivate(ByVal Wb As Workbook)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro.


Ejemplo del evento WorkbookDeactivate

Este ejemplo organiza todas las ventanas abiertas, al ser desactivado un libro.

Private Sub App_WorkbookDeactivate(ByVal Wb As Workbook)

Application.Windows.Arrange xlArrangeStyleTiled

End Sub


Evento WorkbookNewSheet

Ocurre al crear una hoja nueva en cualquier libro abierto.

Sintaxis

Private Sub objeto_WorkbookNewSheet(ByVal Wb As Workbook, ByVal Sh As Object)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro.

Sh   La nueva hoja.


Ejemplo del evento WorkbookNewSheet

Este ejemplo mueve la hoja nueva al final del libro.

Private Sub App_WorkbookNewSheet(ByVal Wb As Workbook, _

ByVal Sh As Object)

Sh.Move After:=Wb.Sheets(Wb.Sheets.Count)

End Sub


Evento WorkbookOpen

Ocurre al abrir un libro.

Sintaxis

Private Sub objeto_WorkbookOpen(ByVal Wb As Workbook)

objeto   Un objeto de tipo Application declarado con eventos en un módulo de clase. Para obtener más información, véase Utilizar eventos con el objeto Application.

Wb   El libro.


Ejemplo del evento WorkbookOpen

Este ejemplo organiza todas las ventanas abiertas, cuando se abre un libro.

Private Sub  App_WorkbookOpen(ByVal Wb As Workbook)

Application.Windows.Arrange xlArrangeStyleTiled

End Sub


Utilizar eventos con el objeto Application

Para poder utilizar eventos con el objeto Application, debe crear un nuevo módulo de clase y declarar un objeto de tipo Application con eventos. El siguiente ejemplo asume que hemos creado un nuevo módulo de clase y lo hemos llamado EventClassModule. El nuevo módulo de clase contiene el siguiente código.

Public WithEvents Aplicación As Application

Después de haber declarado el nuevo objeto con eventos, aparecerá en el cuadro de lista desplegable Objeto del módulo de clase y podrá escribir procedimientos de evento para el nuevo objeto. (Al seleccionar un nuevo objeto del cuadro Objeto, los eventos válidos para dicho objeto se mostrarán en la lista desplegable Procedimiento.)

Antes de poder ejecutar los procedimientos, debe conectar el objeto declarado en el módulo de clase con el objeto Application. Para ello puede utilizar el siguiente código desde cualquier módulo.

Dim X As New EventClassModule

Sub InicializarAplicación()

Set X.Aplicación = Application

End Sub

Después de ejecutar el procedimiento InitializeApp, el objeto Aplicación del módulo de clase hace referencia al objeto Application de Excel y los procedimientos de evento del módulo de clase se ejecutarán cuando ocurra un evento.


Evento GotFocus

Se produce cuando un control ActiveX obtiene un foco de entrada.

Sintaxis

Private Sub objeto_GotFocus()

objeto   Nombre de un control ActiveX.


Ejemplo del evento GotFocus

Este ejemplo se ejecuta cuando ListBox1 obtiene el foco.

Private Sub ListBox1_GotFocus()

' se ejecuta cuando el cuadro de lista obtiene el foco

End Sub


Evento LostFocus

Se produce cuando un control ActiveX pierde el foco de entrada.

Sintaxis

Private Sub objeto_LostFocus()

objeto   Nombre de un control ActiveX.


Ejemplo del evento LostFocus

Este ejemplo se ejecuta cuando ListBox1 pierde el foco.

Private Sub ListBox1_LostFocus()

' se ejecuta cuando el cuadro de lista pierde el foco

End Sub


Evento Open

Se produce cuando el libro se abre.

Sintaxis

Private Sub Workbook_Open()


Ejemplo del evento Open

Este ejemplo maximiza Microsoft Excel siempre que se abre el libro.

Private Sub Workbook_Open()

Application.WindowState = xlMaximized

End Sub


Evento Resize

Se produce al cambiar el tamaño del gráfico.

Sintaxis

Private Sub objeto_Resize()

objeto   Chart o un objeto del tipo Chart declarado con eventos en un módulo de clase. Para obtener más información, vea Uso de eventos en gráficos incrustados.


Ejemplo del evento Resize

Este ejemplo mantiene la esquina superior izquierda del gráfico en la misma ubicación cuando se cambia el tamaño del gráfico.

Private Sub myChartClass_Resize()

    With ActiveChart.Parent

        .Left = 100

        .Top = 150

    End With

End Sub


Evento Select

Se produce cuando se selecciona un elemento de gráfico.

Sintaxis

Private Sub objeto_Select(ByVal ElementID As Long, ByVal Arg1 As Long, ByVal Arg2 As Long)

objeto   Chart o un objeto del tipo Chart declarado con eventos en un módulo de clase. Para obtener más información, vea Uso de eventos en gráficos incrustados.

ElementID, Arg1, Arg2   Elemento de gráfico seleccionado. Para obtener más información acerca de estos argumentos, vea el evento BeforeDoubleClick.


Ejemplo del evento Select

Este ejemplo muestra un cuadro de mensaje si el usuario selecciona el título del gráfico.

Private Sub Chart_Select(ByVal ElementID As Long, _

ByVal Arg1 As Long, ByVal Arg2 As Long)

If ElementId = xlChartTitle Then

MsgBox "por favor, no cambie el título del gráfico"

End If

End Sub


Evento SelectionChange

Se produce cuando la selección de un libro cambia.

Sintaxis

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)

Target   Nuevo rango seleccionado.


Ejemplo del evento SelectionChange

Este ejemplo se desplaza en la ventana del libro hasta que la selección se encuentra en la esquina superior izquierda de la ventana.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

With ActiveWindow

.ScrollRow = Target.Row

.ScrollColumn = Target.Column

End Sub


Evento SheetSelectionChange

Se produce cuando la selección cambia el cualquier libro (no se produce si la selección está en una hoja de gráfico.

Sintaxis

Private Sub objeto_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Excel.Range)

objeto   Application o Workbook. Para obtener más información acerca de cómo utilizar eventos con el objeto Application, ver Usar eventos con el objeto Application.

Sh   Hoja de cálculo que contiene la nueva selección.

Target   Nuevo rango seleccionado.


Ejemplo del evento SheetSelectionChange

Este ejemplo muestra, en la barra de estado, el nombre de hoja y la dirección del rango seleccionado.

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, _

ByVal Target As Excel.Range)

Application.StatusBar = Sh.Name & ":" & Target.Address

End Sub


Evento WindowActivate

Se produce cuando se activa cualquier ventana de libro.

Sintaxis

Private Sub objeto_WindowActivate(ByVal Wb As Excel.Workbook, ByVal Wn As Excel.Window)

objeto   Application o Workbook. Para obtener más información acerca de cómo utilizar eventos con el objeto Application, ver Usar eventos con el objeto Application.

Wb   Sólo se utiliza con el objeto Application. Libro mostrado en la ventana activada.

Wn   Ventana activada.


Ejemplo del evento WindowActivate

Este ejemplo maximiza las ventanas de libro al activarlas.

Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)

Wn.WindowState = xlMaximized

End Sub


Evento WindowDeactivate

Se produce cuando se desactiva cualquier ventana de libro.

Sintaxis

Private Sub objeto_WindowDeactivate(ByVal Wb As Excel.Workbook, ByVal Wn As Excel.Window)

objeto   Application o Workbook. Para obtener más información acerca de cómo utilizar eventos con el objeto Application, ver Usar eventos con el objeto Application.

Wb   Sólo se utiliza con el objeto Application. Libro mostrado en la ventana desactivada.

Wn   Ventana desactivada.


Ejemplo del evento WindowDeactivate

Este ejemplo minimiza las ventanas de libro al desactivarlas.

Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)

Wn.WindowState = xlMinimized

End Sub


Evento WindowResize

Se produce cuando se cambia el tamaño de cualquier ventana de libro.

Sintaxis

Private Sub objeto_WindowResize(ByVal Wb As Excel.Workbook, ByVal Wn As Excel.Window)

objeto   Application o Workbook. Para obtener más información acerca de cómo utilizar eventos con el objeto Application, ver Usar eventos con el objeto Application.

Wb   Sólo se utiliza con el objeto Application. Libro mostrado en la ventana cuyo tamaño ha cambiado.

Wn   Ventana cuyo tamaño ha cambiado.


Ejemplo del evento WindowResize

Este ejemplo se ejecuta cuando se cambia el tamaño de cualquier ventana de libro.

Private Sub Workbook_WindowResize(ByVal Wn As Excel.Window)

Application.StatusBar = Wn.Caption & " ha cambiado su tamaño"

End Sub


Uso de eventos en gráficos incrustados

De forma predeterminada, los eventos están habilitados en hojas de gráfico. Para poder utilizar eventos con un objeto Chart que representa un gráfico incrustado, debe crear un nuevo módulo de clase y declarar un objeto de tipo Chart con eventos. El siguiente ejemplo asume que se ha creado un nuevo módulo de clase denominado "EventClassModule". El nuevo módulo de clase contiene el siguiente código.

Public WithEvents miClaseGráfico As Chart

Después de haber declarado el nuevo objeto con eventos, aparecerá en el cuadro de lista desplegable Objeto del módulo de clase y podrá escribir procedimientos de evento para el nuevo objeto. (Al seleccionar el nuevo objeto en el cuadro Objeto, los eventos válidos para dicho objeto se mostrarán en el cuadro de lista desplegable Procedimiento.)

Sin embargo, antes de poder ejecutar los procedimientos debe conectar el objeto declarado en el módulo de clase con el gráfico incrustado. Para ello puede usar el siguiente código desde cualquier módulo.

Dim miMóduloClase As New EventClassModule

Sub InicializarGráfico()

Set miMóduloClase.miClaseGráfico = _

Worksheets(1).ChartObjects(1).Chart

End Sub

Después de ejecutar el procedimiento InitializeChart, el objeto miClaseGráfico del módulo de clase hace referencia al gráfico uno de la hoja de cálculo uno, y los procedimientos de evento del módulo de clase se ejecutarán cuando se produzca un evento.


Bucles en un rango de celdas

Al utilizar Visual Basic, con frecuencia necesitará ejecutar el mismo bloque de instrucciones en cada una de las celdas de un rango. Para ello, combine una instrucción de repetición y uno o más métodos para identificar cada celda, una a la vez, y ejecutar la operación.

Una manera de ejecutar un bucle en un rango es utilizar el bucle For...Next con la propiedad Cells. Al utilizar la propiedad Cells, puede sustituir el contador del bucle, u otras variables o expresiones, por el número de índice de las celdas. En el siguiente ejemplo se sustituye la variable contador por el índice de fila. El procedimiento ejecuta un bucle en el rango C1:C20, estableciendo en 0 (cero) cualquier número cuyo valor absoluto sea menor que 0.01.

Sub RedondeoACero1()

For contador = 1 To 20

Set Celda_a = Worksheets("Hoja1").Cells(contador, 3)

If Abs(Celda_a.Value) < 0.01 Then Celda_a.Value = 0

Next contador

End Sub

Otra manera sencilla de ejecutar un bucle en un rango es utilizar el bucle For Each...Next en el conjunto de celdas devuelto por el método Range. Visual Basic establece automáticamente una variable de objeto para la siguiente celda cada vez que se ejecuta el bucle. El siguiente procedimiento realiza un bucle en el rango A1:D20, estableciendo en 0 (cero) cualquier número cuyo valor absoluto sea menor que 0.01.

Sub RedondeoACero2()

For Each c In Worksheets("Hoja1").Range("A1:D10").Cells

If Abs(c.Value) < 0.01 Then c.Value = 0

Next

End Sub

Si no conoce los límites del rango en que desea ejecutar el bucle, puede utilizar la propiedad CurrentRegion para devolver el rango que rodea la celda activa. Por ejemplo, el siguiente procedimiento, cuando se ejecuta desde una hoja de cálculo, ejecuta un bucle en el rango que rodea la celda activa, estableciendo en 0 (cero) todos los números cuyo valor absoluto sea menor que 0.01.

Sub RedondeoACero3()

For Each c In ActiveCell.CurrentRegion.Cells

If Abs(c.Value) < 0.01 Then c.Value = 0

Next

End Sub


Crear un libro nuevo

Para crear un nuevo libro en Visual Basic, utilice el método Add. El siguiente procedimiento crea un nuevo libro. Microsoft Excel asigna automáticamente el nombre LibroN al libro, donde N es el siguiente número disponible. El nuevo libro se convertirá en el libro activo.

Sub AgregarUno()

Workbooks.Add

End Sub

Una manera mejor de crear un nuevo libro es asignarlo a una variable de objeto. En el siguiente ejemplo, el objeto Workbook devuelto por el método Add se asigna a la variable de objeto, nuevoLibro. A continuación, se establecen varias de las propiedades de nuevoLibro. Puede controlar fácilmente el nuevo libro utilizando la variable de objeto.

Sub AgregarNuevo()

Set nuevoLibro = Workbooks.Add

With nuevoLibro

.Title = "Ventas 1995"

.Subject = "Ventas"

.SaveAs filename:="Ventas95.xls"

End With

End Sub


Abrir un libro

Al abrir un nuevo libro utilizando el método Open, se convierte en un miembro del conjunto Workbooks. El siguiente procedimiento abre un libro denominado MiLibro.xls, ubicado en la carpeta "MiCarpeta", en la unidad C.

Sub AbrirLo()

Workbooks.Open("C:\MiCarpeta\MiLibro.xls")

End Sub


Activar un libro

Al activar un libro utilizando el método Activate, el libro se coloca en la ventana activa. El siguiente procedimiento activa el libro abierto denominado "MiLibro.xls".

Sub Activar()

Workbooks("MiLibro.xls").Activate

End Sub


Hacer referencia a hojas por su nombre

Puede identificar las hojas por su nombre, utilizando las propiedades Worksheets y Charts. Las siguientes instrucciones activan varias hojas del libro activo.

Worksheets("Hoja1").Activate

Charts("Gráfico1").Activate

DialogSheets("Diálogo1").Activate

Puede utilizar la propiedad Sheets para devolver una hoja de cálculo, de gráficos, de módulo o de cuadro de diálogo, incluidos todos en el conjunto Sheets. El siguiente ejemplo activa la hoja denominada "Gráfico1" del libro activo.

Sub ActivarGráfico()

Sheets("Gráfico1").Activate

End Sub

Nota   Los gráficos incrustados en una hoja de cálculo son miembros del grupo ChartObjects, aunque los gráficos que poseen sus propias hojas pertenecen al conjunto Charts.


Hacer referencia a hojas por número de índice

Un número de índice es un número secuencial asignado a una hoja, según la posición de su etiqueta, contando desde la izquierda, respecto a las hojas del mismo tipo. El siguiente procedimiento utiliza la propiedad Worksheets para activar la hoja de cálculo uno del libro activo.

Sub LaPrimera()

Worksheets(1).Activate

End Sub

Si desea trabajar con todos los tipos de hojas (hojas de cálculo, de gráficos, de módulos y de diálogo), utilice la propiedad Sheets. El siguiente procedimiento activa la hoja cuatro del libro.

Sub LaCuarta()

Sheets(4).Activate

End Sub

Nota   El orden del índice puede variar al mover, agregar o eliminar hojas.


Referencias a más de una hoja

Utilice la función Array para identificar un grupo de hojas. El siguiente ejemplo selecciona tres hojas del libro activo.

Sub Varias()

Worksheets(Array("Hoja1", "Hoja2", "Hoja4")).Select

End Sub


Cómo hacer referencia a celdas y rangos

Una tarea común cuando se utiliza Visual Basic es especificar una celda o rango y, a continuación, realizar alguna acción en ellas, como escribir una fórmula o cambiar el formato. Normalmente esto se realiza en una instrucción que identifica el rango y, además, cambia una propiedad o aplica un método.

Un objeto Range en Visual Basic puede ser una celda individual o un rango de celdas. Los siguientes temas muestran las maneras más usuales de identificar y trabajar con objetos Range.

¿De qué manera desea hacer referencia a celdas?

   Hacer referencia a celdas y rangos usando notación A1

   Hacer referencia a celdas usando números de índice

   Hacer referencia a filas y columnas

   Hacer referencia a celdas usando una notación abreviada

   Hacer referencia a rangos con nombre

   Hacer referencia a celdas relacionadas con otras celdas

   Hacer referencia a celdas usando un objeto Range

   Hacer referencia a todas las celdas de una hoja de cálculo

   Hacer referencia a varios rangos


Hacer referencia a celdas y rangos usando notación A1

Puede hacer referencia a una celda o rango de celdas del estilo de referencia A1 utilizando el método Range. El siguiente procedimiento Sub cambia el formato de las celdas A1:D5 a negrita.

Sub FormatoRango()

Workbooks("Libro1").Sheets("Hoja1").Range("A1:D5") _

.Font.Bold = True

End Sub

La siguiente tabla muestra algunas referencias de estilo A1 utilizando el método Range.

Referencia	Significado
Range("A1")	Celda A1
Range("A1:B5")	Celdas de la A1 a la B5
Range("C5:D9,G9:H16")	Selección de varias áreas
Range("A:A")	Columna A
Range("1:1")	Fila uno
Range("A:C")	Columnas de la A a la C
Range("1:5")	Filas de la uno a la cinco
Range("1:1,3:3,8:8")	Filas uno, tres y ocho
Range("A:A,C:C,F:F")	Columnas A, C y F


Hacer referencia a celdas usando números de índice

Puede utilizar la propiedad Cells para hacer referencia a una sola celda utilizando los números de fila y de columna. Esta propiedad devuelve un objeto Range que representa una sola celda. En el siguiente ejemplo, Cells(6,1) devuelve la celda A6 de la Hoja1. Entonces, la propiedad Value se establece en 10.

Sub EscribirValor()

Worksheets("Hoja1").Cells(6, 1).Value = 10

End Sub

La propiedad Cells funciona bien para ejecutar bucles en un rango de celdas, ya que puede sustituir las variables por los números de índice, como se muestra en el siguiente ejemplo.

Sub BucleAtravés()

Dim contador As Integer

For contador = 1 To 20

Worksheets("Hoja1").Cells(contador, 3).Value = contador

Next contador

End Sub

Nota   Si desea cambiar las propiedades de un rango de celdas, o aplicar un método a todo un rango a la vez, utilice la propiedad Range. Para obtener más información vea Hacer referencia a celdas y rangos usando notación A1.


Hacer referencia a filas y columnas

Utilice la propiedad Rows o Columns para trabajar con filas o columnas enteras. Estas propiedades devuelven un objeto Range que representa un rango de celdas. En el siguiente ejemplo, Rows(1) devuelve la fila uno de la Hoja1. A continuación, la propiedad Bold del objeto Font del rango se establece en True.

Sub FilaNegrita()

Worksheets("Hoja1").Rows(1).Font.Bold = True

End Sub

La siguiente tabla muestra algunas referencias de fila y columna, utilizando las propiedades Rows y Columns.

Referencia	Significado
Rows(1)	Fila uno
Rows	Todas las filas de la hoja de cálculo
Columns(1)	Columna uno
Columns("A")	Columna uno
Columns	Todas las columnas de la hoja de cálculo
Para trabajar con varias filas o columnas al mismo tiempo, cree una variable de objeto y utilice el método Union, combinando varias llamadas a la propiedad Rows o Columns. El siguiente ejemplo cambia a negrita el formato de las filas uno, tres y cinco de la hoja de cálculo uno del libro activo.

Sub VariasFilas()

Worksheets("Hoja1").Activate

Dim miUnión As Range

Set miUnión = Union(Rows(1), Rows(3), Rows(5))

miUnión.Font.Bold = True

End Sub


Hacer referencia a celdas usando una notación abreviada

Puede utilizar el estilo de referencia A1 o un rango con nombre entre paréntesis como método abreviado para la propiedad Range. No es necesario escribir la palabra "Range" o utilizar comillas, como se muestra en los siguientes ejemplos.

Sub BorrarRango()

Worksheets("Hoja1").[A1:B5].ClearContents

End Sub

Sub EstablecerValor()

[MiRango].Value = 30

End Sub


Hacer referencia a rangos con nombre

Es más sencillo identificar los rangos por nombre que por la notación A1. Para asignar un nombre a un rango seleccionado, haga clic en el cuadro de nombre situado a la izquierda de la barra de fórmulas, escriba un nombre y, a continuación, presione la tecla ENTRAR.

Hacer referencia a rangos con nombre

El siguiente ejemplo hace referencia al rango denominado "MiRango" en el libro "MiLibro.xls".

Sub FormatoRango()

Range("MiLibro.xls!MiRango").Font.Italic = True

End Sub

El siguiente ejemplo hace referencia al rango de hojas de cálculo específico denominado "Hoja1!Ventas" en el libro "MiLibro.xls".

Sub FormatoVentas()

Range("[Informe.xls]Hoja1!Ventas").BorderAround weight:=xlthin

End Sub

Para seleccionar un rango con nombre utilice el método GoTo, que activa el libro y la hoja de cálculo y, a continuación, selecciona el rango.

Sub BorrarRango()

Application.Goto Reference:="MiLibro.xls!MiRango"

Selection.ClearContents

End Sub

El siguiente ejemplo muestra cómo se escribiría el mismo procedimiento para el libro activo.

Sub BorrarRango()

Application.Goto Reference:="MiRango"

Selection.ClearContents

End Sub

Ejecutar un bucle en las celdas de un rango con nombre

El siguiente ejemplo ejecuta un bucle en cada celda del rango con nombre, utilizando el bucle For Each...Next. Si el valor de alguna celda del rango excede el valor de limit, el color de la celda cambia a amarillo.

Sub AplicarColor()

Const limit As Integer = 25

For Each c In Range("MiRango")

If c.Value > limit Then

c.Interior.ColorIndex = 27

End If

Next c

End Sub


Hacer referencia a celdas relacionadas con otras celdas

Una manera de trabajar con una celda relacionada con otra es utilizar la propiedad Offset. El siguiente ejemplo asigna un formato de doble subrayado al contenido de la celda situada una fila más abajo y a tres columnas de la hoja de cálculo activa.

Sub Subrayar()

ActiveCell.Offset(1, 3).Font.Underline = xlDouble

End Sub

Nota  Puede grabar macros que utilicen la propiedad Offset en lugar en referencias absolutas. En el menú Herramientas, señale Grabar macro y, a continuación, haga clic en Usar referencias relativas.

Para ejecutar un bucle en un rango de celdas, utilice en el rango una variable con la propiedad Cells. El siguiente ejemplo rellena las primeras 20 celdas de la tercera columna con valores entre 5 y 100, en incrementos de 5. La variable contador se utiliza como índice de fila para la propiedad Cells.

Sub BucleAtravés()

Dim contador As Integer

For contador = 1 To 20

Worksheets("Hoja1").Cells(contador, 3).Value = contador * 5

Next contador

End Sub


Hacer referencia a celdas usando un objeto Range

Si establece una variable de objeto para un objeto Range, puede manipular fácilmente el rango utilizando el nombre de la variable.

El siguiente procedimiento crea la variable de objeto miRango y, a continuación, asigna la variable al rango A1:D5 de la Hoja1 del libro activo. Las instrucciones posteriores modifican las propiedades del rango, sustituyendo el nombre de la variable por el objeto del rango.

Sub Aleatorio()

Dim miRango As Range

Set miRango = Worksheets("Hoja1").Range("A1:D5")

miRango.Formula = "=ALEATORIO()"

miRango.Font.Bold = True

End Sub


Hacer referencia a todas las celdas de una hoja de cálculo

Al aplicar la propiedad Cells a una hoja de cálculo sin especificar un número de índice, el método devuelve un objeto Range que representa todas las celdas de la hoja de cálculo. El siguiente procedimiento Sub borra el contenido de todas las celdas de la Hoja1 del libro activo.

Sub BorrarHoja()

Worksheets("Hoja1").Cells.ClearContents

End Sub


Hacer referencia a varios rangos

Utilizando el método apropiado puede hacer referencia fácilmente a varios rangos. Utilice los métodos Range y Union para hacer referencia a cualquier grupo de rangos; utilice la propiedad Areas para hacer referencia al grupo de rangos seleccionados en una hoja de cálculo.

Usar la propiedad Range

Puede hacer referencia a varios rangos con la propiedad Range, pero debe poner comas entre dos o más referencias. El siguiente ejemplo borra el contenido de los tres rangos de la Hoja1.

Sub BorrarRangos()

Worksheets("Hoja1").Range("C5:D9,G9:H16,B14:D18").ClearContents

End Sub

Los rangos con nombre permiten que la propiedad Range funcione más fácilmente con varios rangos. El siguiente ejemplo funciona cuando los tres rangos con nombre están en la misma hoja.

Sub BorrarNombrada()

Range("MiRango, TuRango, SuRango").ClearContents

End Sub

Usar el método Union

Puede combinar varios rangos en un objeto Range utilizando el método Union. El siguiente ejemplo crea un objeto Range denominado misVariosRangos, los define como A1:B2 y C3:D4 y, a continuación, asigna el formato de negrita a los rangos combinados.

Sub RangosVarios()

Dim r1, r2, misVariosRangos As Range

Set r1 = Sheets("Hoja1").Range("A1:B2")

Set r2 = Sheets("Hoja1").Range("C3:D4")

Set miVariosRangos = Union(r1, r2)

miVariosRangos.Font.Bold = True

End Sub

Usar la propiedad Areas

Puede utilizar la propiedad Areas para hacer referencia al rango o conjunto de rangos seleccionados en una selección de varias áreas. El siguiente procedimiento cuenta las áreas de la selección. Si existe más de un área, se muestra un mensaje de advertencia.

Sub EncontrarVarios()

If Selection.Areas.Count > 1 Then

MsgBox "Imposible realizar una selección múltiple."

End If

End Sub


Seleccionar y activar celdas

Al trabajar con Microsoft Excel, normalmente se selecciona una o varias celdas y, a continuación, se realiza una acción, como darles formato o escribir valores. En Visual Basic normalmente no es necesario seleccionar las celdas antes de modificarlas.

Por ejemplo, si desea escribir una fórmula en la celda D6 utilizando Visual Basic, no es necesario seleccionar el rango D6. Sólo necesita devolver el objeto Range y, a continuación, establecer la propiedad Formula en la fórmula que desee, como se muestra en el siguiente ejemplo.

Sub EscribirFórmula()

Worksheets("Hoja1").Range("D6").Formula = "=SUMA(D2:D5)"

End Sub

Para obtener ejemplos acerca de cómo utilizar métodos para controlar las celdas sin seleccionarlas, vea Cómo hacer referencia a celdas y rangos.

Usar el método Select y la propiedad Selection

El método Select activa las hojas y los objetos de las hojas; la propiedad Selection devuelve un objeto que representa la selección actual de la hoja activa del libro activo. Antes de poder utilizar la propiedad Selection, debe activar un libro, activar o seleccionar un hoja y, a continuación, seleccionar un rango, u otro objeto, utilizando el método Select.

La grabadora de macros con frecuencia creará una macro que utilice el método Select y la propiedad Selection. El siguiente procedimiento Sub se creó utilizando la grabadora de macros, y muestra cómo trabajan juntas Select y Selection.

Sub Macro1()

Sheets("Hoja1").Select

Range("A1").Select

ActiveCell.FormulaR1C1 = "Nombre"

Range("B1").Select

ActiveCell.FormulaR1C1 = "Dirección"

Range("A1:B1").Select

Selection.Font.Bold = True

End Sub

El siguiente ejemplo realiza la misma tarea, sin activar o seleccionar la hoja de cálculo o las celdas.

Sub Etiquetas()

With Worksheets("Hoja1")

.Range("A1") = "Nombre"

.Range("B1") = "Dirección"

.Range("A1:B1").Font.Bold = True

End With

End Sub

Seleccionar celdas en la hoja de cálculo activa

Si utiliza el método Select para seleccionar celdas, recuerde que Select sólo funciona en la hoja de cálculo activa. Si ejecuta el procedimiento Sub desde el módulo, el método Select fallará a menos que el procedimiento active la hoja de cálculo antes de utilizar el método Select en un rango de celdas. Por ejemplo, el siguiente procedimiento copia una fila de la Hoja1 a la Hoja2 del libro activo.

Sub CopiarFilas()

Worksheets("Hoja1").Rows(1).Copy

Worksheets("Hoja2").Select

Worksheets("Hoja2").Rows(1).Select

Worksheets("Hoja2").Paste

End Sub

Activar una celda en una selección

Puede utilizar el método Activate para activar una celda en una selección. Sólo puede haber una celda activa, aunque se haya seleccionado un rango de celdas. El siguiente procedimiento selecciona un rango y, a continuación, activa una celda del rango sin cambiar la selección.

Sub Activar()

Worksheets("Hoja1").Activate

Range("A1:D4").Select

Range("B2").Activate

End Sub


Trabajar con la celda activa

La propiedad ActiveCell devuelve un objeto Range que representa la celda que está activa. Puede aplicar cualquiera de las propiedades o los métodos de un objeto Range a la celda activa, como en el ejemplo siguiente.

Sub EstablecerValor()

Worksheets("Hoja1").Activate

ActiveCell.Value = 35

End Sub

Nota   Sólo se puede trabajar con la celda activa cuando la hoja de cálculo en la que se encuentra sea la hoja activa.

Mover la celda activa

Puede utilizar el método Activate para designar cuál es la celda activa. Por ejemplo, el siguiente procedimiento convierte a B5 en la celda activa y, a continuación, le da formato de negrita.

Sub EstablecerActivo()

Worksheets("Hoja1").Activate

Worksheets("Hoja1").Range("B5").Activate

ActiveCell.Font.Bold = True

End Sub

Nota   Para seleccionar un rango de celdas, utilice el método Select. Para convertir una sola celda en activa, utilice el método Activate.

Puede utilizar la propiedad Offset para pasar a la celda activa. El siguiente procedimiento inserta texto en la celda activa del rango seleccionado y, a continuación, mueve la celda activa una celda a la derecha, sin cambiar la selección.

Sub MoverActivo()

Worksheets("Hoja1").Activate

Range("A1:D10").Select

ActiveCell.Value = "Totales mensuales"

ActiveCell.Offset(0, 1).Activate

End Sub

Seleccionar las celdas que rodean la celda activa

La propiedad CurrentRegion devuelve un rango de celdas limitadas por filas y columnas en blanco. En el siguiente ejemplo, la selección se amplía para incluir las celdas contiguas a la celda activa que contiene datos. A continuación, se asigna el estilo Moneda a este rango.

Sub Región()

Worksheets("Hoja1").Activate

ActiveCell.CurrentRegion.Select

Selection.Style = "Moneda"

End Sub


Trabajar con rangos 3D

Si trabaja con el mismo rango en más de una hoja, utilice la función Array para especificar dos o más hojas a seleccionar. El ejemplo siguiente da formato al borde de un rango tridimensional de celdas.

Sub FormatoHojas()

Sheets(Array("Hoja2", "Hoja3", "Hoja5")).Select

Range("A1:H1").Select

Selection.Borders(xlBottom).LineStyle = xlDouble

End Sub

El ejemplo siguiente aplica el método FillAcrossSheets para transferir los formatos y datos del rango de la Hoja2 a los rangos correspondientes de todas las hojas de cálculo del libro activo.

Sub RellenarTodo()

Worksheets("Hoja2").Range("A1:H1") _

.Borders(xlBottom).LineStyle = xlDouble

Worksheets.FillAcrossSheets (Worksheets("Hoja2") _

.Range("A1:H1"))

End Sub


Trabajar con formas (objetos de dibujo)

Las formas, u objetos de dibujo, están representados por tres tipos de objetos diferentes. El conjunto Shapes, el conjunto ShapeRange y el objeto Shape. En general, se utiliza el conjunto Shapes para crear formas y cuando se desea iterar en todas las formas de una diapositiva; se utiliza el objeto Shape cuando se desea dar formato o modificar una única forma, y se utiliza el conjunto ShapeRange cuando se desea modificar varias formas de la misma manera que en la interfaz de usuario.

Establecer las propiedades de una forma

Muchas de las propiedades de formato de formas no se establecen mediante las propiedades que se aplican directamente al objeto Shape o ShapeRange. En su lugar, los atributos de forma relacionados se agrupan en objetos secundarios, como el objeto FillFormat, que contiene todas las propiedades relacionadas con el relleno de la forma, o el objeto LinkFormat, que contiene todas las propiedades únicas de los objetos OLE vinculados. Para establecer las propiedades de una forma, primero debe devolver el objeto que representa el conjunto de los atributos de la forma y, a continuación, establecer las propiedades del objeto devuelto. Por ejemplo, utilice la propiedad Fill para devolver el objeto FillFormat y, a continuación, establezca la propiedad ForeColor del objeto FillFormat para establecer el color de primer plano del relleno de la forma especificada, como se muestra en el siguiente ejemplo.

Worksheets(1).Shapes(1).Fill.ForeColor.RGB = RGB(255, 0, 0)

Aplicar una propiedad o método a varias formas a la vez

En la interfaz de usuario existen algunas operaciones que pueden realizarse con varias formas seleccionadas; por ejemplo, puede seleccionar varias formas y establecer los rellenos individuales a la vez. Existen otras operaciones que sólo pueden realizarse con una sola forma; por ejemplo, sólo puede modificar el texto de una forma si se ha seleccionado sólo una.

En Visual Basic existen dos maneras de aplicar propiedades y métodos a un conjunto de formas. Estas dos maneras permiten realizar cualquier operación que pueda realizarse en una forma única o en un rango, independientemente de que se pueda realizar la misma operación en la interfaz de usuario.

•	Si la operación funciona en varias formas seleccionadas en la interfaz de usuario, puede realizar la misma operación en Visual Basic creando un conjunto ShapeRange que contenga las formas con las que desea trabajar y aplicando las propiedades y métodos apropiados directamente al conjunto ShapeRange.

•	Aunque la operación no funcione en varias formas seleccionadas en la interfaz de usuario, podrá realizarla en Visual Basic ejecutando un bucle en los conjuntos Shapes o ShapeRange que contengan las formas con las que desea trabajar, y aplicando las propiedades y métodos apropiados a los objetos Shapes individuales.

Muchas propiedades y métodos que se aplican al objeto Shape y al conjunto ShapeRange fallan si se aplican a determinados tipos de formas. Por ejemplo, la propiedad TextFrame falla si se aplica a una forma que no pueda contener texto. Si no está seguro de que se pueda aplicar un determinado método o propiedad a todas las formas de un conjunto ShapeRange, no lo aplique. Si desea aplicar una de estas propiedades o métodos a un conjunto de formas, debe ejecutar un bucle en el conjunto y probar cada forma individual para asegurarse de que es del tipo apropiado antes de aplicarle la propiedad o método.

Crear un conjunto ShapeRange que contenga todas las formas de una hoja

Para crear un objeto ShapeRange que contenga todos los objetos Shape de una hoja, seleccione las formas y, a continuación, utilice la propiedad ShapeRange para devolver un objeto ShapeRange que contenga las formas seleccionadas.

Worksheets(1).Shapes.Select

Set sr = Selection.ShapeRange

En Microsoft Excel, el argumento Index no es opcional en la propiedad Range del conjunto Shapes, por tanto, no puede utilizarse esta propiedad sin un argumento para crear un objeto ShapeRange que contenga todas las formas de un conjunto Shapes.

Aplicar una propiedad o método a un conjunto ShapeRange

Si puede realizar una operación en varias formas seleccionadas en la interfaz de usuario, podrá realizar el programa equivalente creando un conjunto ShapeRange y, a continuación, aplicándole las propiedades o métodos apropiados. El siguiente ejemplo crea en miDocumento un rango de formas que contiene las formas denominadas "Estrella grande" y "Estrella pequeña" y les aplica un relleno degradado.

Set miDocumento = Worksheets(1)

Set miRango = miDocumento.Shapes.Range(Array("Estrella grande", "Estrella pequeña"))

miRango.Fill.PresetGradient msoGradientHorizontal, 1, msoGradientBrass

A continuación se muestran las normas generales acerca del comportamiento de las propiedades y métodos cuando se aplican a un conjunto ShapeRange.

•	Aplicar un método a un conjunto equivale a aplicar el método a cada objeto Shape individual del mismo.

•	Establecer el valor de una propiedad del conjunto equivale a establecer el valor de la propiedad de cada forma individual del rango.

•	Una propiedad del conjunto que devuelve una constante devuelve el valor de la propiedad de una forma individual del conjunto si todas las formas del mismo tienen el mismo valor para dicha propiedad. Si todas las formas del conjunto no tienen el mismo valor para la propiedad, devuelve la constante "mixed".

•	Una propiedad del conjunto que devuelve sólo un tipo de datos, como Long, Single o String, devuelve el valor de la propiedad de una forma individual si todas las formas del mismo tienen el mismo valor para dicha propiedad.

•	Sólo puede devolverse o establecerse el valor de algunas propiedades si sólo hay una forma en el conjunto. Si existe más de una forma en el conjunto, se producirá un error en tiempo de ejecución. Esto generalmente se produce al devolver o establecer propiedades cuando la acción equivalente en la interfaz de usuario sólo es posible con una única forma, por ejemplo, modificar texto en una forma o modificar los puntos de una forma libre.

Estas directrices también se aplican al establecer propiedades de formas que están agrupadas en objetos secundarios del conjunto ShapeRange, por ejemplo, el objeto FillFormat. Si el objeto secundario representa operaciones que pueden realizarse en varios objetos seleccionados en la interfaz de usuario, podrá devolver el objeto de un conjunto ShapeRange y establecer sus propiedades. Por ejemplo, puede utilizar la propiedad Fill para devolver el objeto FillFormat que representa los rellenos de todas las formas del conjunto ShapeRange. Al establecer las propiedades de este objeto FillFormat se establecerán las mismas propiedades para todas las formas individuales del conjunto ShapeRange.

Bucle en un conjunto Shapes o ShapeRange

Aunque no pueda realizar una operación a la vez en varias formas en la interfaz de usuario, seleccionándolas y utilizando un comando después, podrá realizar la acción equivalente mediante un programa en Visual Basic, ejecutando un bucle en los conjuntos Shapes o ShapeRange que contengan las formas con las que desea trabajar, y aplicando las propiedades y métodos apropiados a los objetos Shapes individuales del conjunto. El siguiente ejemplo ejecuta un bucle en todas las formas de miDocumento y cambia el color de primer plano de cada forma que sea una Autoforma.

Set miDocumento = Worksheets(1)

For Each forma In miDocumento.Shapes

    If forma.Type = msoAutoShape Then

        forma.Fill.ForeColor.RGB = RGB(255, 0, 0)

    End If

Next

El siguiente ejemplo crea un conjunto ShapeRange que contiene todas las formas actualmente seleccionadas en la ventana activa, y establece el color de primer plano de cada una de las formas.

For Each forma in ActiveWindow.Selection.ShapeRange

    forma.Fill.ForeColor.RGB = RGB(255, 0, 0)

Next

Alinear, distribuir y agrupar formas de un rango

Utilice los métodos Align y Distribute para situar un conjunto de formas unas con relación a otras, o con relación al documento que las contiene. Utilice los métodos Group o Regroup para crear una forma agrupada única a partir de un conjunto de formas.


Controlar una aplicación de Microsoft Office desde otra

Si desea ejecutar código en una aplicación de Microsoft Office que trabaje con objetos de otra aplicación, siga estos pasos.

1	Establezca una referencia a la biblioteca de tipos de la otra aplicación en el cuadro de diálogo Referencias (menú Herramientas). A continuación, los objetos, propiedades y métodos se mostrarán en el Examinador de objetos, y se comprobará la sintaxis en tiempo de compilación. También se puede obtener Ayuda sensible al contexto acerca de ellos.

2	Declare como tipos específicos las variables de objeto que harán referencia a los objetos de la otra aplicación. Asegúrese de que cualifica cada tipo con el nombre de la aplicación que proporciona el objeto. Por ejemplo, la siguiente instrucción declara una variable que señala un documento de Word y otra que hace referencia a un libro de Microsoft Excel.

Dim appWD As Word.Application, wbXL As Excel.Workbook

Nota   Debe seguir los anteriores pasos si desea que el código sea early bound (anticipado).

3	Utilice la función CreateObject con el identificador programático OLE del objeto con el que desee trabajar en otra aplicación, como se muestra en el siguiente ejemplo. Si desea ver la sesión de la otra aplicación, establezca la propiedad Visible en True.

Dim appWD As Word.Application

Set appWD = CreateObject("Word.Application")

appWd.Visible = True

4	Aplique las propiedades y métodos al objeto contenido en la variable. Por ejemplo, la siguiente instrucción crea un nuevo documento de Word.

Dim appWD As Word.Application

Set appWD = CreateObject("Word.Application.8")

appWD.Documents.Add

5	Una vez finalizado el trabajo con la otra aplicación, utilice el método Quit para cerrarla, como muestra el siguiente ejemplo.

appWd.Quit


early binding y late binding

Al crear una variable de objeto en una aplicación que hace referencia a un objeto proporcionado por otra aplicación, Visual Basic debe verificar que el objeto existe y que las propiedades y métodos utilizados con él están correctamente especificados. Este proceso de verificación se conoce como binding. El proceso binding se puede realizar en tiempo de ejecución (late binding) o en tiempo de compilación (early binding). El código late bound (no anticipado) es más lento que el código early bound (anticipado). Para que el código sea early bound y, por tanto, más eficaz, debe establecer una referencia a la biblioteca de tipos que contenga los objetos a los que desee referirse, y debe declarar las variables de objeto como tipos específicos.


Usar controles ActiveX en hojas

Este tema expone la información específica acerca de cómo utilizar controles ActiveX en hojas de cálculo y hojas de gráficos. Para obtener información general acerca de cómo agregar y trabajar con controles, vea Usar controles ActiveX en un documento y Crear un cuadro de diálogo personalizado.

Recuerde los siguientes puntos cuando trabaje con controles en hojas.

•	Además de las propiedades estándar disponibles para controles ActiveX, puede utilizar las siguientes propiedades en Microsoft Excel: BottomRightCell, LinkedCell, ListFillRange, Placement, PrintObject, TopLeftCell y ZOrder.

Estas propiedades pueden establecerse y devolverse utilizando el nombre del control ActiveX. El siguiente ejemplo se desplaza por la ventana del libro de forma que CommandButton1 esté en la parte superior izquierda.

Set t = Hoja1.CommandButton1.TopLeftCell

With ActiveWindow

.ScrollRow = t.Row

.ScrollColumn = t.Column

End With

•	Algunos métodos y propiedades de Visual Basic para Microsoft Excel están inhabilitados cuando está activado un control ActiveX. Por ejemplo, no puede utilizarse el método Sort cuando un control esté activo; por tanto, el siguiente código fallará en un procedimiento de evento clic de botón, debido a que el control aún está activo después de que el usuario haga clic en él.

Private Sub CommandButton1.Click

Range("a1:a10").Sort Key1:=Range("a1")

End Sub

Puede trabajar en este problema activando algún otro elemento en la hoja antes de utilizar la propiedad o método que ha fallado. Por ejemplo, el siguiente código ordena el rango:

Private Sub CommandButton1.Click

Range("a1").Activate

Range("a1:a10").Sort Key1:=Range("a1")

CommandButton1.Activate

End Sub

•	Los controles de un libro de Microsoft Excel incrustado en un documento de otra aplicación no funcionarán si el usuario hace doble clic en el libro para modificarlo. Los controles funcionarán si el usuario hace clic con el botón secundario del mouse (ratón) en el libro y selecciona el comando Abrir en el menú contextual.

•	Cuando un libro de Microsoft Excel 97 se guarda utilizando el formato de archivo de Microsoft Excel 5.0/95, se pierde la información del control ActiveX.

•	La palabra clave Me en un procedimiento de evento de un control ActiveX en una hoja hace referencia a la hoja, no al control.

Agregar controles con Visual Basic

En Microsoft Excel, los controles ActiveX están representados por objetos OLEObject en el conjunto OLEObjects; todos los objetos OLEObject también están en el conjunto Shapes. Para agregar un control ActiveX a una hoja mediante un programa, utilice el método Add del conjunto OLEObjects. El siguiente ejemplo agrega un botón de comando a la hoja de cálculo uno.

Worksheets(1).OLEObjects.Add "Forms.CommandButton.1", _

Left:=10, Top:=10, Height:=20, Width:=100

Usar las propiedades de controles con Visual Basic

La mayoría de las veces el código de Visual Basic hará referencia a los controles ActiveX por nombre. El siguiente ejemplo cambia el título del control denominado "CommandButton1".

Hoja1.CommandButton1.Caption = "Ejecutar"

Observe que, al utilizar un nombre de control fuera del módulo de clase de la hoja que contiene el control, debe cualificar el nombre con el nombre de la hoja.

Para cambiar el nombre del control utilizado en el código de Visual Basic, seleccione el control y establezca la propiedad (Name) en la ventana Propiedades.

Debido a que los controles ActiveX también están representados por objetos OLEObject en el conjunto OLEObjects, puede establecer las propiedades de los controles utilizando los objetos del conjunto. El siguiente ejemplo establece la posición izquierda del control denominado "CommandButton1".

Worksheets(1).OLEObjects("CommandButton1").Left = 10

Las propiedades de los controles que no se muestran como propiedades del objeto OLEObject pueden establecerse devolviendo el objeto de control real mediante la propiedad Object. El siguiente ejemplo establece el título de CommandButton1.

Worksheets(1).OLEObjects("CommandButton1").Object.Caption = "ejecutar"

Debido a que todos los objetos OLE son también miembros del conjunto Shapes, puede utilizar el conjunto para establecer las propiedades de varios controles. El siguiente ejemplo alinea el lado izquierdo de todos los controles de la hoja de cálculo uno.

For Each s In Worksheets(1).Shapes

If s.Type = msoOLEControlObject Then s.Left = 10

Next


Usar controles ActiveX en un documento

Al igual que pueden agregarse controles ActiveX a los cuadros de diálogo personalizados, también pueden agregarse controles directamente a un documento cuando se desee ofrecer al usuario una manera sofisticada de interaccionar directamente con la macro sin la distracción de los cuadros de diálogo. Utilice el siguiente procedimiento para agregar controles ActiveX al documento. Para obtener información más específica acerca de cómo utilizar controles ActiveX en Microsoft Excel, vea Usar controles ActiveX en hojas.

1	Agregar controles al documento

Muestre la Caja de herramientas Control, haga clic en el control que desee agregar y, a continuación, haga clic en el documento.

2	Establecer las propiedades del control

Con el botón secundario del mouse (ratón), haga clic en un control en modo de diseño y, a continuación, haga clic en Propiedades para mostrar la ventana Propiedades.

3	Inicializar los controles

Puede inicializar los controles en un procedimiento.

4	Escribir procedimientos de eventos

Todos los controles tiene un conjunto de eventos predefinidos. Por ejemplo, un botón de comando tiene un evento Click que se produce cuando el usuario hace clic en él. Puede escribir los procedimientos de eventos que se ejecutarán cuando se produzca el evento.

5	Utilizar los valores del control cuando el código se está ejecutando

Algunas propiedades pueden establecerse en tiempo de ejecución.


Crear un cuadro de diálogo personalizado

Utilice el siguiente procedimiento para crear un cuadro de diálogo personalizado:

1	Crear un UserForm

En el menú Insertar del Editor de Visual Basic, haga clic en UserForm.

2	Agregar controles al UserForm

Busque el control que desea agregar en la Caja de herramientas y arrástrelo al formulario.

3	Establecer las propiedades del control

Con el botón secundario del mouse (ratón), haga clic en un control en modo de diseño y, a continuación, haga clic en Propiedades para mostrar la ventana Propiedades.

4	Inicializar los controles

Puede iniciar los controles en un procedimiento antes de mostrar un formulario, o puede agregar código al evento Initialize del formulario.

5	Escribir procedimientos de eventos

Todos los controles tiene un conjunto de eventos predefinidos. Por ejemplo, un botón de comando tiene un evento Click que se produce cuando el usuario hace clic en él. Puede escribir los procedimientos de eventos que se ejecutarán cuando se produzca el evento.

6	Mostrar el cuadro de diálogo

Utilice el método Show para mostrar un UserForm.

7	Utilizar los valores del control cuando el código se está ejecutando

Algunas propiedades pueden establecerse en tiempo de ejecución. Los cambios realizados por el usuario en el cuadro de diálogo se pierden cuando éste se cierra.


Crear un UserForm

Para crear un cuadro de diálogo personalizado, debe crear un UserForm. Para crear un UserForm, haga clic en UserForm en el menú Insertar del Editor de Visual Basic.

Utilice la ventana Propiedades para cambiar el nombre, comportamiento y aspecto del formulario. Por ejemplo, para cambiar el título de un formulario, establezca la propiedad Caption.


Agregar controles a UserForm

Para agregar controles a un formulario de usuario, busque el control que desea agregar en la Caja de herramientas, arrástrelo al formulario y, a continuación, arrastre el controlador de ajuste del control hasta que el contorno tenga el tamaño y forma deseados.

Nota   Al arrastrar un control, o varios controles "agrupados", desde el formulario a la Caja de herramientas se crea una plantilla de dicho control que puede volver a utilizarse. Esta es una función útil para implantar una presentación estándar en sus aplicaciones.

Una vez agregados los controles al formulario, utilice los comandos del menú Formato, en el Editor de Visual Basic, para ajustar la alineación y espaciado del control.


Agregar controles a un documento

Para agregar controles a un documento, muestre la Caja de herramientas Control, haga clic en el control que desea agregar y, a continuación, haga clic en el documento. Arrastre un controlador de ajuste del control hasta que el contorno tenga el tamaño y forma deseados.

Nota   Al arrastrar un control, o un varios controles "agrupados", desde el formulario a la Caja de herramientas Control se crea una plantilla de dicho control que puede volver a utilizarse. Esta es una función útil para implantar una presentación estándar en sus aplicaciones.


Controles ActiveX

Para obtener más información acerca de un control específico, seleccione un objeto de la siguiente lista. Para obtener más información acerca de eventos, seleccione un control y haga clic en Eventos, en la parte superior del tema.

CheckBox ComboBox CommandButton Frame Image Label ListBox	MultiPage OptionButton ScrollBar SpinButton TabStrip TextBox ToggleButton


Configurar las propiedades de control

Puede establecer algunas propiedades del control en tiempo de diseño, es decir, antes de que se ejecute cualquier macro. En modo de diseño, haga clic con el botón secundario del mouse (ratón) en un control y después en Propiedades para mostrar la ventana Propiedades. Los nombres de las propiedades se muestran en la columna izquierda de la ventana, y los valores de las propiedades en la columna derecha. Para establecer el valor de una propiedad escriba el nuevo valor a la derecha del nombre de la propiedad.


Inicio de las propiedades de control

Puede inicializar los controles en tiempo de ejecución utilizando el código de Visual Basic en una macro. Por ejemplo, puede rellenar un cuadro de lista, establecer los valores del texto o establecer los botones de opción.

El siguiente ejemplo utiliza el método AddItem para agregar datos a un cuadro de lista. A continuación, establece el valor de un cuadro de texto y muestra el formulario.

Private Sub NombreUsuario()

With FormularioUsuario1

.listaRegiones.AddItem "Norte"

.listaRegiones.AddItem "Sur"

.listaRegiones.AddItem "Este"

.listaRegiones.AddItem "Oeste"

.textoIdVendedor.Text = "00000"

.Show

' ...

End With

End Sub

También puede utilizar el código en el evento Initialize de un formulario para establecer los valores iniciales de los controles del formulario. Una ventaja de establecer los valores iniciales del control en el evento Initialize es que el código de inicialización permanece en el formulario. Puede copiar el formulario de otro proyecto y, al ejecutar el método Show para mostrar el cuadro de diálogo, los controles se inicializarán.

Private Sub UserForm_Initialize()

FormularioUsuario1.lstNames.AddItem "Prueba Uno"

FormularioUsuario1.lstNames.AddItem "Prueba Dos"

FormularioUsuario1.txtUserName.Text = "Nombre predeterminado"

End Sub


Eventos de control y de cuadro de diálogo

Después de agregar controles al cuadro de diálogo o documento, agregue los procedimientos de eventos para determinar cómo responderán los controles a las acciones del usuario.

Los UserForms y los controles tiene un conjunto de eventos predefinidos. Por ejemplo, un botón de comando tiene un evento Click que se ejecuta cuando el usuario hace clic en él, y UserForms tiene un evento Initialize que se ejecuta cuando se carga el formulario.

Para escribir un procedimiento de evento de control o de formulario, abra un módulo haciendo doble clic en el formulario o control y seleccione el evento del cuadro de lista emergente Procedimiento.

Los procedimientos de eventos incluyen el nombre del control. Por ejemplo, el nombre del procedimiento de evento Click de un comando denominado Comando1 es Comando1_Click.

Si agrega código a un procedimiento de evento y después cambia el nombre del control, el código permanece en los procedimientos con el nombre anterior.

Por ejemplo, supongamos que agrega código al evento Click de Comando1 y, a continuación, se cambia el nombre del control por Comando2. Al hacer doble clic en Comando2, no verá ningún código en el procedimiento del evento Click. Es necesario mover el código de Comando1_Click a Comando2_Click.

Para simplificar el desarrollo, es útil realizar prácticas para asignar correctamente los nombres a los controles antes de escribir el código.


Mostrar un cuadro de diálogo personalizado

Para probar el cuadro de diálogo en el Editor de Visual Basic, haga clic en Ejecutar Sub/UserForm en el menú Ejecutar del Editor de Visual Basic.

Para mostrar un cuadro de diálogo de Visual Basic, utilice el método Mostrar. El siguiente ejemplo muestra el cuadro de diálogo denominado FormularioUsuario1.

Private Sub NombreUsuario()

FormularioUsuario1.Show

End Sub


Usar valores de control al ejecutar un código

Algunas propiedades de los controles pueden establecerse y devolverse mientras se ejecuta el código de Visual Basic. El siguiente ejemplo establece la propiedad Text de un cuadro de texto en "Hola".

TextBox1.Text = "Hola"

Los datos introducidos por un usuario en un formulario se pierden cuando éste se cierra. Si se devuelven los valores de los controles de un formulario después de descargarlo, se obtienen los valores iniciales de los controles en lugar de los valores que el usuario ha introducido.

Si desea guardar los datos introducidos en un formulario, puede guardar la información en variables de nivel de módulo mientras aún se ejecuta el formulario. El siguiente ejemplo muestra un formulario y guarda los datos del mismo.

'Código en módulo para declarar variables públicas

Public strRegión As String

Public intIdVendedor As Integer

Public blnCancelado As Boolean

'Código en el formulario

Private Sub cmdCancel_Click()

Module1.blnCancelado = True

Unload Me

End Sub

Private Sub cmdOK_Click()

'Guarda los datos

intIdVendedor = textoIdVendedor.Text

strRegión = listaRegiones.List(listaRegiones.ListIndex)

Module1.blnCancelado = False

Unload Me

End Sub

Private Sub UserForm_Initialize()

Module1.blnCancelado = True

End Sub

'Código en el módulo para mostrar el formulario

Sub LaunchSalesPersonForm()

frmVendedores.Show

If blnCancelado = True Then

MsgBox "¡Operación cancelada!", vbExclamation

Else

MsgBox "El número de Id. del vendedor es: " &

intIdVendedor & _

"La región es: " & strRegión

End If

End Sub


modos de diseño y de ejecución

En modo de diseño, puede diseñar cuadros de diálogo y controles personalizados y escribir código. Los eventos no funcionan y los procedimientos de eventos no se ejecutan automáticamente en modo de diseño.

En modo de ejecución, se interacciona con la aplicación de la misma manera que lo haría un usuario: los eventos funcionan y los procedimientos de eventos se ejecutan. No se puede modificar el código en modo de ejecución.


Usar eventos con los objetos de Microsoft Excel

Puede escribir procedimientos de eventos en Microsoft Excel a nivel de hoja de cálculo, de gráfico, de libro o de aplicación. Por ejemplo, el evento Activate se produce a nivel de hoja y el evento SheetActivate está disponible a nivel de hoja de cálculo y de aplicación. El evento SheetActivate para un libro se produce cuando se activa cualquier hoja del libro. A nivel de aplicación, el evento SheetActivate se produce cuando se activa cualquier hoja de cualquier libro abierto.

Los procedimientos de evento de hoja de cálculo, hoja de gráfico y libro están disponibles para cualquier hoja o libro abiertos. Para escribir procedimientos de evento para un gráfico incrustado o para el objeto Application, debe crear un nuevo objeto utilizando la palabra clave WithEvents en un módulo de clase.

Utilice la propiedad EnableEvents para habilitar o inhabilitar eventos. Por ejemplo, al utilizar el método Save para guardar un libro se produce el evento BeforeSave. Es posible evitarlo estableciendo la propiedad EnableEvents en False antes de llamar al método Save.

Application.EnableEvents = False

ActiveWorkbook.Save

Application.EnableEvents = True


Eventos de objeto Worksheet

De forma predeterminada, los eventos en hojas están habilitados. Para ver los procedimientos de eventos de una hoja, con el botón secundario del mouse (ratón), haga clic en la etiqueta de la hoja y, a continuación, en Ver código en el menú contextual. Seleccione el nombre del evento en el cuadro de lista emergente Procedimiento.

Activate BeforeDoubleClick BeforeRightClick Calculate	Change Deactivate SelectionChange
Los eventos a nivel de hoja de cálculo se producen cuando la hoja de cálculo se activa o cuando el usuario cambia una celda de la hoja. El siguiente ejemplo ajusta el tamaño de las columnas A a F, cada vez que se recalcula la hoja de cálculo.

Private Sub Worksheet_Calculate()

Columns("A:F").AutoFit

End Sub

Algunos eventos pueden utilizarse para sustituir una acción por el comportamiento predeterminado de la aplicación, o para realizar un pequeño cambio en el comportamiento predeterminado. El siguiente ejemplo captura el evento clic con el botón secundario y agrega un nuevo elemento al menú contextual de las celdas B1:B10.

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, _

        Cancel As Boolean)

    For Each icbc In Application.CommandBars("cell").Controls

        If icbc.Tag = "brccm" Then icbc.Delete

    Next icbc

    If Not Application.Intersect(Target, Range("b1:b10")) Is Nothing Then

            With Application.CommandBars("cell").Controls _

                .Add(Type:=msoControlButton, before:=6, _

                temporary:=True)

           .Caption = "Nuevo elemento de menú contextual"

           .OnAction = "MiMacro"

           .Tag = "brccm"

        End With

    End If

End Sub


Eventos de objeto Chart

Los eventos de gráficos se producen cuando el usuario activa o cambia un gráfico. De forma predeterminada, los eventos en hojas de gráficos están habilitados. Para ver los procedimientos de eventos de una hoja, con el botón secundario del mouse (ratón), haga clic en la etiqueta de la hoja y seleccione Ver código en el menú contextual. Seleccione el nombre del evento en el cuadro de lista emergente Procedimiento.

Activate BeforeDoubleClick BeforeRightClick Calculate Deactivate DragOver DragPlot	MouseDown MouseMove MouseUp Resize Select SeriesChange
Nota   Para escribir procedimientos de evento para un gráfico incrustado, debe crear un nuevo objeto utilizando la palabra clave WithEvents en un módulo de clase. Para obtener más información, vea Uso de eventos en gráficos incrustados.

Este ejemplo modifica el color del borde de un punto cuando el usuario modifica el valor de dicho punto.

Private Sub Chart_SeriesChange(ByVal SeriesIndex As Long, _

ByVal PointIndex As Long)

    Set p = ActiveChart.SeriesCollection(SeriesIndex).Points(PointIndex)

    p.Border.ColorIndex = 3

End Sub


Eventos de objeto Workbook

Los eventos de libros se producen cuando el libro cambia o cuando cambia cualquier hoja del mismo. De forma predeterminada, los eventos en libros están habilitados. Para ver los procedimientos de eventos de un libro, con el botón secundario del mouse (ratón), haga clic en la barra de título de una ventana de libro restaurada o minimizada y, a continuación, en Ver código en el menú contextual. Seleccione el nombre del evento en el cuadro de lista emergente Procedimiento.

AddinUninstall BeforeClose BeforePrint BeforeSave Deactivate NewSheet Open SheetActivate SheetBeforeDoubleClick	SheetBeforeRightClick SheetCalculate SheetChange SheetDeactivate SheetSelectionChange WindowActivate WindowDeactivate WindowResize
Este ejemplo maximiza Microsoft Excel cuando el libro se abre.

Sub Workbook_Open()

Application.WindowState = xlMaximized

End Sub


Eventos del objeto Application

Los eventos de aplicación se producen cuando se crea o se abre un libro, o cuando cambia cualquier hoja de cualquier libro abierto. Para escribir procedimientos de evento para el objeto Application, debe crear un nuevo objeto utilizando la palabra clave WithEvents en un módulo de clase. Para obtener más información, vea Usar eventos con el objeto Application.

NewWorkbook SheetActivate SheetBeforeDoubleClick SheetBeforeRightClick SheetCalculate SheetChange SheetDeactivate SheetSelectionChange WindowActivate WindowDeactivate	WindowResize WorkbookActivate WorkbookAddinInstall WorkbookAddinUninstall WorkbookBeforeClose WorkbookBeforePrint WorkbookBeforeSave WorkbookDeactivate WorkbookNewSheet WorkbookOpen


Propiedad AddIns

Devuelve un conjunto AddIns que representa todas las macros automáticas del cuadro de diálogo Macros automáticas (menú Herramientas). Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de este método sin un calificador de objeto equivale a usar Application.Addins.


Ejemplo de la propiedad AddIns

Este ejemplo muestra el estado de la macro automática Herramientas para análisis. Tenga en cuenta que la cadena empleada como índice del conjunto AddIns es el título de la macro automática, no el nombre de archivo de ésta.

If AddIns("Herramientas de análisis").Installed = True Then

MsgBox "Se ha instalado la macro automática Herramientas de análisis"

Else

MsgBox "No se ha instalado la macro automática Herramientas de análisis"

End If


Propiedad Areas

Devuelve un conjunto Areas que representa todos los rangos de una selección de varias áreas. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

En una selección sencilla, la propiedad Areas devuelve un conjunto de un solo objeto, el propio objeto original Range. En una selección de varias áreas, el método devuelve un conjunto que contiene un objeto por cada área seleccionada.


Ejemplo de la propiedad Areas

Este ejemplo muestra un mensaje si el usuario intenta ejecutar un comando cuando están seleccionadas varias áreas. El ejemplo debe ejecutarse desde una hoja de cálculo.

If Selection.Areas.Count > 1 Then

MsgBox "No se puede ejecutar en una selección multiárea."

End If


Propiedad Columns

Objeto Application: devuelve un objeto Range que representa todas las columnas de la hoja de cálculo activa. Si el documento activo no es una hoja de cálculo, esta propiedad fallará. Es de sólo lectura.

Objeto Range: devuelve un objeto Range que representa las columnas del rango especificado. Es de sólo lectura.

Objeto Worksheet: devuelve un objeto Range que representa todas las columnas de la hoja de cálculo especificada. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin calificador de objeto equivale a usar ActiveSheet.Columns.

Si se aplica a un objeto Range que es una selección de varias áreas, la propiedad sólo devolverá las columnas de la primera área del rango. Por ejemplo, si el objeto Range tiene dos áreas, A1:B2 y C3:D4, Selection.Columns.Count devolverá 2, no 4. Si desea usar esta propiedad en un rango que puede contener una selección de varias áreas, compruebe Areas.Count para determinar si el rango contiene más de un área. En ese caso, ejecute un bucle sobre cada área del rango.


Ejemplo de la propiedad Columns

Este ejemplo da formato de negrita a la fuente de la columna uno (columna A) de la Hoja1.

Worksheets("Hoja1").Columns(1).Font.Bold = True

Este ejemplo establece como 0 (cero) el valor de todas las celdas de la columna uno del rango llamado “miRango”.

Range("miRango").Columns(1).Value = 0

Este ejemplo muestra el número de columnas de la selección de la Hoja1. Si se ha seleccionado más de una área, el ejemplo ejecutará un bucle en cada área.

Worksheets("Hoja1").Activate

númÁreas = Selection.Areas.Count

If númÁreas <= 1 Then

MsgBox "La selección contiene " & _

Selection.Columns.Count & " columnas."

Else

For i = 1 To númÁreas

MsgBox "Área " & i & " de la selección contiene " & _

Selection.Areas(i).Columns.Count & " columnas."

Next i

End If


Propiedad Dialogs

Devuelve un conjunto Dialogs que representa todos los cuadros de diálogo incorporados. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Dialogs

Este ejemplo muestra el cuadro de diálogo Abrir (menú Archivo).

Application.Dialogs(xlDialogOpen).Show


Propiedad Excel4IntlMacroSheets

Devuelve un conjunto Sheets que representa todas las hojas de macros internacionales de Microsoft Excel 4.0 del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad con el objeto Application o sin un calificador de objeto equivale a usar ActiveWorkbook.Excel4IntlMacroSheets.


Ejemplo de la propiedad Excel4IntlMacroSheets

Este ejemplo muestra el número de hojas de macros internacionales de Microsoft Excel 4.0 en el libro activo.

MsgBox "Hay " & ActiveWorkbook.Excel4IntlMacroSheets.Count & _

" hojas de macros internacionales de Microsoft Excel 4.0 en este libro."


Propiedad Excel4MacroSheets

Devuelve un conjunto Sheets que representa todas las hojas de macros de Microsoft Excel 4.0 del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad con el objeto Application o sin un calificador de objeto equivale a usar ActiveWorkbook.Excel4MacroSheets.


Ejemplo de la propiedad Excel4MacroSheets

Este ejemplo muestra el número de hojas de macros de Microsoft Excel 4.0 en el libro activo.

MsgBox "Hay " & ActiveWorkbook.Excel4MacroSheets.Count & _

" hojas de macros de Microsoft Excel 4.0 en este libro."


Propiedad Names

Objeto Application: devuelve un conjunto Names que representa todos los nombres del libro activo. Es de sólo lectura.

Objeto Workbook: devuelve un conjunto Names que representa todos los nombres del libro especificado (incluidos todos los nombres específicos de hoja de cálculo). Es de sólo lectura.

Objeto Worksheet: devuelve un conjunto Names que representa todos los nombres específicos de hoja de cálculo (nombres definidos con el prefijo "WorksheetName!"). Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin calificador de objeto equivale a usar ActiveWorkbook.Names.


Ejemplo de la propiedad Names

Este ejemplo define el nombre “miNombre” para la celda A1 de la Hoja1.

ActiveWorkbook.Names.Add Name:="miNombre", RefersToR1C1:= _

"=Hoja1!L1C1"


Propiedad Offset

Devuelve un objeto Range que representa un rango desplazado con respecto al rango especificado. Es de sólo lectura.

Sintaxis

expresión.Offset(RowOffset, ColumnOffset)

expresión   Requerida. Una expresión que devuelve un objeto Range.

RowOffset   Variant opcional. El número de filas (positivo, negativo o cero) en que se desplaza el rango. El valor predeterminado es 0 (cero).

ColumnOffset   Variant opcional. El número de columnas (positivo, negativo o cero) en que se desplaza el rango. El valor predeterminado es 0 (cero).


Ejemplo de la propiedad Offset

Este ejemplo activa la celda situada tres columnas a la derecha y tres filas hacia abajo con respecto a la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.Offset(rowOffset:=3, columnOffset:=3).Activate

En este ejemplo se supone que la Hoja1 contiene una tabla con una fila de encabezado. El ejemplo selecciona la tabla sin seleccionar la fila de encabezado. Para poder ejecutar el ejemplo, la celda activa debe estar en la tabla.

Set tbl = ActiveCell.CurrentRegion

tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).Select


Propiedad Panes

Devuelve un conjunto Panes que representa todas las secciones de la ventana especificada. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

Esta propiedad sólo está disponible para una ventana si su propiedad Split puede definirse como True.


Ejemplo de la propiedad Panes

Este ejemplo muestra el número de secciones de la ventana activa del Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

MsgBox "Hay " & ActiveWindow.Panes.Count & _

" secciones en la ventana activa"

Este ejemplo activa la sección de la esquina superior izquierda de la ventana activa de Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.Panes(1).Activate


Propiedad PreviousSelections

Devuelve una matriz con los cuatro últimos rangos o nombres seleccionados. Cada elemento de la matriz es un objeto Range. Variant de sólo lectura.

Sintaxis

expresión.PreviousSelections(Index)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Index   Variant opcional. El número de índice (de 1 a 4) del rango o el nombre anterior.

Comentarios

Cada vez que vaya a un rango o una celda usando el cuadro Nombre o el comando Ir a (menú Edición) o cada vez que una macro llame al método Goto, se agregará el rango anterior a la matriz como el elemento número 1 y los demás elementos de la matriz se desplazarán hacia abajo.


Ejemplo de la propiedad PreviousSelections

Este ejemplo muestra las direcciones de celda de todos los elementos que hay en la matriz de selecciones anteriores. Si no hay selecciones anteriores, la función LBound devolverá un error. El error se captura y aparece un cuadro de mensaje.

On Error GoTo sinSelecciones

For i = LBound(Application.PreviousSelections) To _

UBound(Application.PreviousSelections)

MsgBox Application.PreviousSelections(i).Address

Next i

Exit Sub

On Error GoTo 0

sinSelecciones:

MsgBox "No hay selecciones anteriores"


Propiedad Rows

Objeto Application: devuelve un objeto Range que representa todas las filas de la hoja de cálculo activa. Si el documento activo no es una hoja de cálculo, esta propiedad fallará. Es de sólo lectura.

Objeto Range: devuelve un objeto Range que representa las filas del rango especificado. Es de sólo lectura.

Objeto Worksheet: devuelve un objeto Range que representa todas las filas de la hoja de cálculo especificada. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin calificador de objeto equivale a usar ActiveSheet.Rows.

Si se aplica a un objeto Range que es una selección múltiple, la propiedad sólo devolverá las filas de la primera área del rango. Por ejemplo, si el objeto Range tiene dos áreas, A1:B2 y C3:D4, Selection.Rows.Count devolverá 2, no 4. Si desea usar esta propiedad en un rango que puede contener una selección múltiple, compruebe Areas.Count para averiguarlo. En ese caso, ejecute un bucle sobre cada área del rango, como se muestra en el tercer ejemplo.


Ejemplo de la propiedad Rows

Este ejemplo elimina la fila tres de la Hoja1.

Worksheets("Hoja1").Rows(3).Delete

Este ejemplo elimina las filas de la región actual de la hoja de cálculo uno en las que el valor de la celda uno de la fila es el mismo que el valor de la celda uno de la fila anterior.

For Each fila In Worksheets(1).Cells(1, 1).CurrentRegion.Rows

este = fila.Cells(1, 1).Value

If este = último Then fila.Delete

último = este

Next

Este ejemplo muestra el número de filas de la selección de la Hoja1. Si se ha seleccionado más de una área, el ejemplo ejecutará un bucle en cada área.

Worksheets("Hoja1").Activate

númÁreas = Selection.Areas.Count

If númÁreas <= 1 Then

MsgBox "La selección contiene " & _

Selection.Rows.Count & " filas."

Else

i = 1

For Each a In Selection.Areas

MsgBox "Área " & i & " de la selección contiene " & _

a.Rows.Count & " filas."

i = i + 1

Next a

End If


Propiedad SelectedSheets

Devuelve un conjunto Sheets que representa todas las hojas seleccionadas en la ventana especificada. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad SelectedSheets

Este ejemplo muestra un mensaje si la Hoja1 está seleccionada en el Libro1.xls.

For Each hj In Workbooks("LIBRO1.XLS").Windows(1).SelectedSheets

If hj.Name = "Hoja1" Then

MsgBox "Hoja1 está seleccionada"

Exit For

End If

Next


Propiedad Sheets

Objeto Application: devuelve un conjunto Sheets que representa todas las hojas del libro activo. Es de sólo lectura.

Objeto Workbook: devuelve un conjunto Sheets que representa todas las hojas del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin un calificador de objeto equivale a usar ActiveWorkbook.Sheets.


Ejemplo de la propiedad Sheets

Este ejemplo crea una nueva hoja de cálculo y, a continuación, sitúa una lista de los nombres de hoja del libro activo en la primera columna.

Set nuevaHoja = Sheets.Add(Type:=xlWorksheet)

For i = 1 To Sheets.Count

nuevaHoja.Cells(i, 1).Value = Sheets(i).Name

Next i


Propiedad Styles

Devuelve un conjunto Styles que representa todos los estilos del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Styles

Este ejemplo elimina el estilo definido por el usuario "Estilo cotización de bolsa" en el libro activo.

ActiveWorkbook.Styles("Estilo cotización de bolsa").Delete


Propiedad Windows

Objeto Application: devuelve un conjunto Windows que representa todas las ventanas de todos los libros. Es de sólo lectura.

Objeto Workbook: devuelve un conjunto Windows que representa todas las ventanas del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin un calificador de objeto equivale a usar Application.Windows.

Esta propiedad devuelve un conjunto de ventanas, tanto visibles como ocultas.


Ejemplo de la propiedad Windows

Este ejemplo cierra la primera ventana que esté abierta u oculta en Microsoft Excel.

Application.Windows(1).Close

Este ejemplo asigna a la ventana uno del libro activo el nombre “Balance de situación consolidada”. Después el nombre se empleará como índice del conjunto Windows.

ActiveWorkbook.Windows(1).Caption = "Balance de situación consolidada"

ActiveWorkbook.Windows("Balance de situación consolidada") _

.ActiveSheet.Calculate


Propiedad Workbooks

Devuelve un conjunto Workbooks que representa todos los libros abiertos. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

El uso de esta propiedad sin un calificador de objeto equivale a usar Application.Workbooks.

El conjunto devuelto por la propiedad Workbooks no incluye las macros automáticas abiertas, que son un tipo especial de libros ocultos. Sin embargo, se puede hacer que este método devuelva una macro automática si se conoce su nombre de archivo. Por ejemplo, Workbooks("Oscar.xla") devolverá la macro automática abierta "Oscar.xla" como un objeto Workbook.


Ejemplo de la propiedad Workbooks

Este ejemplo activa el libro Libro4.xls.

Workbooks("LIBRO1").Activate

Este ejemplo abre el libro Grande.xls.

Workbooks.Open filename:="GRANDE.XLS"

Este ejemplo guarda los cambios y cierra todos los libros salvo aquel en el que se ejecuta el ejemplo.

For Each lb In Workbooks

If lb.Name <> ThisWorkbook.Name Then

lb.Close savechanges:=True

End If

Next l


Propiedad ActiveCell

Devuelve un objeto Range que representa la celda activa de la ventana activa (la ventana superior) o de la ventana especificada. Si la ventana no contiene una hoja de cálculo, esta propiedad fallará. Es de sólo lectura.

Comentarios

Si no especifica un calificador de objeto, esta propiedad devolverá la celda activa de la ventana activa.

Celda activa no es lo mismo que selección. La celda activa es una sola celda de la selección actual. La selección puede contener más de una celda, pero sólo una es la celda activa.

Todas las expresiones siguientes devuelven la celda activa y son equivalentes:

ActiveCell

Application.ActiveCell

ActiveWindow.ActiveCell

Application.ActiveWindow.ActiveCell


Ejemplo de la propiedad ActiveCell

Este ejemplo usa un cuadro de mensaje para mostrar el valor de la celda activa. Puesto que la propiedad ActiveCell falla si la hoja activa no es una hoja de cálculo, el ejemplo activará la Hoja1 antes de utilizar la propiedad ActiveCell.

Worksheets("Hoja1").Activate

MsgBox ActiveCell.Value

En este ejemplo se cambia el formato de fuente de la celda activa.

Worksheets("Hoja1").Activate

With ActiveCell.Font

.Bold = True

.Italic = True

End With


Propiedad ActivePrinter

Devuelve o establece el nombre de la impresora activa. String de Lectura/Escritura.

Comentarios

Esta propiedad no puede establecerse en Apple Macintosh.


Ejemplo de la propiedad ActivePrinter

En este ejemplo se muestra el nombre de la impresora activa.

MsgBox "El nombre de la impresora activa es " & Application.ActivePrinter


Propiedad ActiveWindow

Devuelve un objeto Window que representa la ventana activa (la ventana superior). Es de sólo lectura. Devuelve Nothing si no hay ventanas abiertas.


Ejemplo de la propiedad ActiveWindow

Este ejemplo muestra el nombre (propiedad Caption) de la ventana activa.

MsgBox "El nombre de la ventana activa es " & ActiveWindow.Caption


Propiedad ActiveWorkbook

Devuelve un objeto Workbook que representa el libro de la ventana activa (la ventana superior). Es de sólo lectura. Devuelve Nothing si no hay ventanas abiertas o si la ventana activa es la ventana de información o la del Portapapeles.


Ejemplo de la propiedad ActiveWorkbook

Este ejemplo muestra el nombre del libro activo.

MsgBox "El nombre del libro activo es " & ActiveWorkbook.Name


Propiedad AltStartupPath

Devuelve o establece el nombre de la carpeta de inicio alternativa. String de Lectura/Escritura.


Ejemplo de la propiedad AltStartupPath

En este ejemplo se establece la carpeta de inicio alternativa.

Application.AltStartupPath = "C:\EXCEL\MACROS"

Para obtener el mismo resultado en Microsoft Excel para Macintosh.

Application.AltStartupPath = "HD:Excel:Mis Macros"


Propiedad Application

Cuando se usa sin calificador de objeto, esta propiedad devuelve un objeto Application que representa a la aplicación Microsoft Excel. Cuando se usa con calificador de objeto, esta propiedad devuelve un objeto Application que representa al creador del objeto especificado (puede usar la propiedad con un objeto de Automatización para devolver la aplicación del objeto). Es de sólo lectura.


Ejemplo de la propiedad Application

En este ejemplo se muestra un mensaje referente a la aplicación que ha creado miObjeto.

Set miObjeto = ActiveWorkbook

If miObjeto.Application.Value = "Microsoft Excel" Then

MsgBox "Esto es un objeto de Microsoft Excel"

Else

MsgBox "Esto no es un objeto de Microsoft Excel"

End If


Método Calculate

Calcula todos los libros abiertos, una hoja de cálculo específica de un libro o un rango determinado de celdas de una hoja, como se muestra en la lista siguiente:

Para calcular	Use este ejemplo
Todos los libros abiertos	Application.Calculate (o sencillamente Calculate)
Una hoja de cálculo determinada	Worksheets(1).Calculate
Un rango específico	Worksheets(1).Rows(2).Calculate
Sintaxis

expresión.Calculate

expresión   Opcional para Application, requerido para Worksheet y Range. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método Calculate

En este ejemplo se calculan las fórmulas de las columnas A, B y C en el rango empleado de la Hoja1.

Worksheets("Hoja1").UsedRange.Columns("A:C").Calculate


Propiedad CalculateBeforeSave

True si los libros se calculan antes de guardarlos en el disco (si la propiedad Calculation se establece como xlManual). Esta propiedad se conserva incluso cuando cambia la propiedad Calculation. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CalculateBeforeSave

Este ejemplo configura Microsoft Excel para que calcule los libros antes de guardarlos en disco.

Application.Calculation = xlManual

Application.CalculateBeforeSave = True


Propiedad CanPlaySounds

This property should not be used. Sound notes have been removed from Microsoft Excel.


Propiedad CanRecordSounds

This property should not be used. Sound notes have been removed from Microsoft Excel.


Propiedad CellDragAndDrop

True si está permitido arrastrar y soltar celdas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CellDragAndDrop

En este ejemplo se habilita arrastrar y soltar celdas.

Application.CellDragAndDrop = True


Propiedad CommandUnderlines

Devuelve o establece el estado del subrayado de comandos en Microsoft Excel para Macintosh. Puede ser una de las siguientes constantes XlCommandUnderlines: xlCommandUnderlinesOn, xlCommandUnderlinesOff o xlCommandUnderlinesAutomatic. Long de Lectura/Escritura.

Comentarios

En Microsoft Excel para Windows, la lectura de esta propiedad siempre devuelve xlCommandUnderlinesOn y, cuando se establece como un valor distinto de xlCommandUnderlinesOn, devuelve un error.


Ejemplo de la propiedad CommandUnderlines

Este ejemplo desactiva el subrayado de comandos en Microsoft Excel para Macintosh.

Application.CommandUnderlines = xlCommandUnderlinesOff


Propiedad ConstrainNumeric

True si el reconocimiento de escritura a mano está limitado a números y signos de puntuación. Boolean de Lectura/Escritura.

Nota  Esta propiedad sólo está disponible cuando se usa Microsoft Windows para Pen Computing. Si intenta establecerla bajo cualquier otro sistema operativo, se producirá un error.


Ejemplo de la propiedad ConstrainNumeric

Este ejemplo limita el reconocimiento de escritura manual a números y signos de puntuación si está ejecutándose Microsoft Windows para Pen Computing.

If Application.WindowsForPens Then

Application.ConstrainNumeric = True

End If


Método ConvertFormula

Convierte las referencias a celdas de una fórmula entre los estilos de referencia A1 y F1C1, entre referencias absolutas y relativas o ambas.

Sintaxis

expresión.ConvertFormula(Formula, FromReferenceStyle, ToReferenceStyle, ToAbsolute, RelativeTo)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Formula   Variant requerida. Una cadena que contiene la fórmula que se convertirá. Debe ser una fórmula válida y empezar con un signo igual.

FromReferenceStyle   Long requerido. El estilo de referencia de la fórmula. Puede ser una de las siguientes constantes XLReferenceStyle: xlA1 o xlR1C1.

ToReferenceStyle   Variant opcional. El estilo de referencia que se desea. Puede ser una de las siguientes constantes XLReferenceStyle: xlA1 o xlR1C1. Si este argumento se omite, el estilo de referencia no cambiará; la fórmula conservará el estilo especificado por FromReferenceStyle.

ToAbsolute   Variant opcional. Especifica el tipo de la referencia convertida. Puede ser una de las siguientes constantes XLReferenceType: xlAbsolute, xlAbsRowRelColumn, xlRelRowAbsColumn o xlRelative. Si este argumento se omite, el tipo de la referencia no cambiará.

RelativeTo   Variant opcional. Un objeto Range que contiene una sola celda. Las referencias relativas hacen referencia a esta celda.


Ejemplo del método ConvertFormula

Este ejemplo convierte una fórmula SUM que contiene referencias de estilo F1C1 en una fórmula equivalente que contiene referencias de estilo A1 y, a continuación, muestra el resultado.

inputFormula = "=SUMA(F10C2:F15C2)"

MsgBox Application.ConvertFormula( _

formula:=inputFormula, _

fromReferenceStyle:=xlR1C1, _

toReferenceStyle:=xlA1)


Propiedad Creator

Devuelve un entero de 32 bits que indica la aplicación en la que se creó este objeto. Si el objeto se creó en Microsoft Excel, la propiedad devolverá la cadena XCEL, que es el equivalente al número hexadecimal 5843454C. Long de sólo lectura.

Comentarios

La propiedad Creator está diseñada para su uso en Microsoft Excel para Macintosh, donde cada aplicación tiene un código de creador de cuatro caracteres. Por ejemplo, Microsoft Excel tiene el código de creador XCEL.


Ejemplo de la propiedad Creator

En este ejemplo se muestra un mensaje acerca del creador de miObjeto.

Set miObjeto = ActiveWorkbook

If miObjeto.Creator = &h5843454c Then

MsgBox "Esto es un objeto de Microsoft Excel"

Else

MsgBox "Esto no es un objeto de Microsoft Excel"

End If


Propiedad CutCopyMode

Devuelve o establece el estado del modo cortar o copiar. Puede ser True, False o una constante XLCutCopyMode, como se muestra en las siguientes tablas. Long de Lectura/Escritura.

Valor devuelto	Descripción
False	No en modo Cortar o Copiar
xlCopy	En el modo Copiar
xlCut	En el modo Cortar
Valor establecido	Descripción
False	Cancela el modo Cortar o Copiar y elimina el borde móvil.
True	Cancela el modo Cortar o Copiar y elimina el borde móvil. En Macintosh, también sitúa el contenido de la selección en el Portapapeles de Macintosh.


Ejemplo de la propiedad CutCopyMode

En este ejemplo se usa un cuadro de mensaje para mostrar el estado del modo Cortar o Copiar.

Select Case Application.CutCopyMode

Case Is = False

MsgBox "No está en modo Cortar o Copiar"

Case Is = xlCopy

MsgBox "En modo Copiar"

Case Is = xlCut

MsgBox "En modo Cortar"

End Select


Propiedad DataEntryMode

Devuelve o establece el modo de entrada de datos, tal como se muestra en la siguiente tabla. En el modo de entrada de datos sólo pueden introducirse datos en las celdas desbloqueadas del rango seleccionado. Long de Lectura/Escritura.

Valor	Significado
xlOn	El modo de entrada de datos está activado.
xlOff	El modo de entrada de datos está desactivado.
xlStrict	El modo de entrada de datos está activado y al presionar la tecla ESC no se desactiva.


Ejemplo de la propiedad DataEntryMode

Este ejemplo desactiva el modo de entrada de datos si está activado.

If (Application.DataEntryMode = xlOn) Or _

(Application.DataEntryMode = xlStrict) Then

Application.DataEntryMode = xlOff

End If


Propiedad DDEAppReturnCode

Devuelve el código de devolución de DDE específico de la aplicación que contenía el mensaje de confirmación de DDE recibido por Microsoft Excel. Long de sólo lectura.


Ejemplo de la propiedad DDEAppReturnCode

En este ejemplo se establece la variable códigoErrAplicación como el código de devolución de DDE.

códigoErrAplicación = Application.DDEAppReturnCode


Método DDEExecute

Ejecuta un comando o realiza otra acción o acciones en otra aplicación por medio del canal de DDE especificado.

Sintaxis

expresión.DDEExecute(Channel, String)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Channel   Long requerido. El número de canal que devuelve el método DDEInitiate.

String   String requerida. El mensaje definido en la aplicación receptora.

Comentarios

El método DDEExecute envía comandos a otra aplicación. También puede usarlo para enviar pulsaciones de tecla a otra aplicación, aunque para este cometido es preferible usar el método SendKeys. El argumento String puede especificar cualquier tecla única: En Windows, cualquier tecla combinada con ALT, CTRL o MAYÚSCULAS o bien cualquier combinación de dichas teclas; o en Macintosh, cualquier tecla combinada con COMANDO, CONTROL, OPCIÓN o MAYÚSCULAS, o bien cualquier combinación de dichas teclas. Cada tecla está representada por uno o varios caracteres, el carácter a por "a" o la tecla ENTRAR por "{ENTRAR}".

Para especificar caracteres que no son visibles cuando se presiona la tecla, como por ejemplo ENTRAR o TAB, use los códigos que se muestran en la siguiente tabla. Cada código de la tabla representa una tecla del teclado:

Tecla	Código
RETROCESO	{BACKSPACE} o {BS}
INTERRUMPIR	{BREAK}
BLOQ MAYÚS	{CAPSLOCK}
BORRAR	{CLEAR}
SUPRIMIR o SUPR	{DELETE} o {DEL}
FLECHA ABAJO	{DOWN}
FIN	{END}
INTRO (teclado numérico)	{ENTER}
ENTRAR	~ (tilde)
ESC	{ESCAPE} o {ESC}
AYUDA	{HELP}
INICIO	{HOME}
INSERTAR	{INSERT}
FLECHA IZQUIERDA	{LEFT}
BLOQUEO NUMÉRICO	{NUMLOCK}
AV PÁG	{PGDN}
RE PÁG	{PGUP}
RETORNO	{RETURN}
FLECHA DERECHA	{RIGHT}
BLOQUEO DE DESPLAZAMIENTO	{SCROLLLOCK}
TABULACIÓN	{TAB}
FLECHA ARRIBA	{UP}
F1 a F15	{F1} a {F15}
En Windows, también pueden especificarse combinaciones de teclas con MAYÚSCULAS, CTRL y ALT. En Macintosh, también pueden especificarse combinaciones de teclas con MAYÚSCULAS, CTRL y OPCIÓN y COMANDO. Para especificar una combinación de teclas con otra u otras teclas, use la siguiente tabla:

Para combinar una tecla con	Preceda el código de la tecla con
MAYÚSCULAS	+ (signo más)
CONTROL	^ (signo de intercalación)
ALT u OPCIÓN	% (signo de porcentaje)
COMANDO	* (asterisco)


Ejemplo del método DDEExecute

Este ejemplo abre un canal a Word para Windows, abre el documento de Word CARTAMOD.DOC y, a continuación, envía el comando FilePrint a WordBasic.

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\CARTAMOD.DOC")

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal

Este ejemplo abre un canal a Word para Macintosh, abre el documento de Word Carta modelo y, a continuación, envía el comando FilePrint a WordBasic. En Macintosh, deberá usar la función Shell para iniciar Word, puesto que el método DDEInitiate no inicia Word automáticamente como ocurre en Windows. Además, dado que la función Shell es asíncrona, la macro puede llamar al método DDEInitiate antes de que se inicie Word. En este ejemplo se demuestra cómo puede crearse un programa para evitarlo, situando la llamada al método DDEInitiate en un bucle, que comprueba númeroCanal hasta que deje de dar un error.

Shell "HD:Carta modelo", 6

Do

númeroCanal = Application.DDEInitiate( _

app:="MSWord", _

topic:="HD:Carta modelo")

Loop Until TypeName(númeroCanal) <> "Error"

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal


Método DDEInitiate

Abre un canal de DDE a una aplicación.

Sintaxis

expresión.DDEInitiate(App, Topic)

expresión   Opcional. Una expresión que devuelve un objeto Application.

App   String requerida. El nombre de la aplicación.

Topic   String requerida. Describe algo de la aplicación a la que se abre un canal, generalmente un documento de la aplicación.

Comentarios

Si tiene éxito, el método DDEInitiate devolverá el número del canal abierto.Todas las funciones de DDE posteriores usarán este número para especificar el canal.


Ejemplo del método DDEInitiate

Este ejemplo abre un canal a Word para Windows, abre el documento de Word CARTAMOD.DOC y, a continuación, envía el comando FilePrint a WordBasic.

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\CARTAMOD.DOC")

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal

Este ejemplo abre un canal a Word para Macintosh, abre el documento de Word Carta modelo y, a continuación, envía el comando FilePrint a WordBasic. En Macintosh, deberá usar la función Shell para iniciar Word, puesto que el método DDEInitiate no inicia Word automáticamente como ocurre en Windows. Además, dado que la función Shell es asíncrona, la macro puede llamar al método DDEInitiate antes de que se inicie Word. En este ejemplo se demuestra cómo puede crearse un programa para evitarlo, situando la llamada al método DDEInitiate en un bucle, que comprueba númeroCanal hasta que deje de dar un error.

Shell "HD:Carta modelo", 6

Do

númeroCanal = Application.DDEInitiate( _

app:="MSWord", _

topic:="HD:Carta modelo")

Loop Until TypeName(númeroCanal) <> "Error"

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal


Método DDEPoke

Envía datos a una aplicación.

Sintaxis

expresión.DDEPoke(Channel, Item, Data)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Channel   Long requerido. El número de canal que devuelve el método DDEInitiate.

Item   Variant requerida. El elemento al que se enviarán los datos.

Data   Variant requerida. Los datos que se enviarán a la aplicación.

Comentarios

Si la llamada al método no tiene éxito se producirá un error.


Ejemplo del método DDEPoke

Este ejemplo abre un canal a Word para Windows, abre el documento de Word VENTAS.DOC y, a continuación, inserta el contenido de la celda A1 (en la Hoja1) al principio del documento.

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\VENTAS.DOC")

Set rangoAInsertar = Worksheets("Hoja1").Range("A1")

Application.DDEPoke númeroCanal, "\InicioDeDoc", rangoAInsertar

Application.DDETerminate númeroCanal

Este ejemplo abre un canal a Word para Macintosh, abre el documento de Word Informe de ventas y, a continuación, inserta el contenido de la celda A1 (de la Hoja1) al principio del documento. En Macintosh, deberá usar la función Shell para iniciar Word, puesto que el método DDEInitiate no inicia Word automáticamente como ocurre en Windows. Además, dado que la función Shell es asíncrona, la macro puede llamar al método DDEInitiate antes de que se inicie Word. En este ejemplo se demuestra cómo puede crearse un programa para evitarlo, situando la llamada al método DDEInitiate en un bucle, que comprueba númeroCanal hasta que deje de dar un error.

Shell "HD:Informe de ventas", 6

Do

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="HD:Informe de ventas")

Loop Until TypeName(númeroCanal) <> "Error"

Set rangoAInsertar = Worksheets("Hoja1").Range("A1")

Application.DDEPoke númeroCanal, "\InicioDeDoc", rangoAInsertar

Application.DDETerminate númeroCanal


Método DDERequest

Solicita información de la aplicación especificada. Este método siempre devuelve una matriz; para obtener más información, consulte el ejemplo.

Sintaxis

expresión.DDERequest(Channel, Item)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Channel   Long requerido. El número de canal que devuelve el método DDEInitiate.

Item   String requerida. El elemento que se solicita.


Ejemplo del método DDERequest

Este ejemplo abre un canal al tema Sistema de Word para Windows y, a continuación, usa el elemento Temas para devolver una lista de todos los documentos abiertos. La lista se devuelve en la columna A de la Hoja1.

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="Sistema")

listaDevuelta = Application.DDERequest(númeroCanal, "Temas")

For i = LBound(listaDevuelta) To UBound(listaDevuelta)

Worksheets("Hoja1").Cells(i, 1).Formula = listaDevuelta(i)

Next i

Application.DDETerminate númeroCanal

Este ejemplo abre un canal al tema Sistema de Word para Macintosh y, a continuación, utiliza el elemento Temas para devolver una lista de todos los documentos abiertos. La lista se devuelve en la columna A de la Hoja1. En Macintosh, deberá usar la función Shell para iniciar Word, puesto que el método DDEInitiate no inicia Word automáticamente como ocurre en Windows. Además, dado que la función Shell es asíncrona, la macro puede llamar al método DDEInitiate antes de que se inicie Word. En este ejemplo se demuestra cómo puede crearse un programa para evitarlo, situando la llamada al método DDEInitiate en un bucle, que comprueba númeroCanal hasta que deje de dar un error.

Shell MacID("MSWD"), 6

Do

númeroCanal = Application.DDEInitiate( _

app:="MSWord", _

topic:="Sistema")

Loop Until TypeName(númeroCanal) <> "Error"

listaDevuelta = Application.DDERequest(númeroCanal, "Temas")

For i = LBound(listaDevuelta) To UBound(listaDevuelta)

Worksheets("Hoja1").Cells(i, 1).Formula = listaDevuelta(i)

Next i

Application.DDETerminate númeroCanal


Método DDETerminate

Cierra un canal a otra aplicación.

Sintaxis

expresión.DDETerminate(Channel)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Channel   Long requerido. El número de canal que devuelve el método DDEInitiate.


Ejemplo del método DDETerminate

Este ejemplo abre un canal a Word para Windows, abre el documento de Word CARTAMOD.DOC y, a continuación, envía el comando FilePrint a WordBasic.

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\CARTAMOD.DOC")

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal

Este ejemplo abre un canal a Word para Macintosh, abre el documento de Word Carta modelo y, a continuación, envía el comando FilePrint a WordBasic. En Macintosh, deberá usar la función Shell para iniciar Word, puesto que el método DDEInitiate no inicia Word automáticamente como ocurre en Windows. Además, dado que la función Shell es asíncrona, la macro puede llamar al método DDEInitiate antes de que se inicie Word. En este ejemplo se demuestra cómo puede crearse un programa para evitarlo, situando la llamada al método DDEInitiate en un bucle, que comprueba númeroCanal hasta que deje de dar un error.

Shell "HD:Carta modelo", 6

Do

númeroCanal = Application.DDEInitiate( _

app:="MSWord", _

topic:="HD:Carta modelo")

Loop Until TypeName(númeroCanal) <> "Error"

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal


Propiedad DisplayFormulaBar

True si está visible la barra de fórmulas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayFormulaBar

Este ejemplo oculta la barra de fórmulas.

Application.DisplayFormulaBar = False


Propiedad DisplayStatusBar

True si está visible la barra de estado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayStatusBar

Este ejemplo guarda el estado actual de la propiedad DisplayStatusBar y, a continuación, establece la propiedad como True para que la barra de estado sea visible.

guardarBarraEstado = Application.DisplayStatusBar

Application.DisplayStatusBar = True


Método DoubleClick

Equivale a hacer doble clic en la celda activa.

Sintaxis

expresión.DoubleClick

expresión   Requerida. Una expresión que devuelve un objeto Application.


Ejemplo del método DoubleClick

Este ejemplo hace doble clic en la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

Application.DoubleClick


Método Evaluate

Convierte un nombre de Microsoft Excel en un objeto o un valor.

Sintaxis

expresión.Evaluate(Name)

expresión   Opcional para Application, requerida para Chart, DialogSheet y Worksheet. Una expresión que devuelve un objeto de la lista Se aplica a.

Name   String requerida. El nombre del objeto, usando las convenciones de nomenclatura de Microsoft Excel.

Comentarios

Los siguientes tipos de nombres de Microsoft Excel se pueden usar con este método:

•	Referencias estilo A1. Puede usar cualquier referencia a una sola celda en la notación de estilo A1. Todas las referencias se consideran absolutas.

•	Rangos. Con las referencias puede usar los operadores de rango, intersección y unión (dos puntos, espacio y punto y coma, respectivamente).

•	Nombres definidos. Puede especificar cualquier nombre en el lenguaje de la macro.

•	Referencias externas. Puede usar el operador ! para hacer referencia a una celda o un nombre definido en otro libro, por ejemplo, Evaluate("[LIBRO1.XLS]Hoja1!A1").

Nota   El uso de corchetes (por ejemplo, "[A1:C5]") equivale a llamar al método Evaluate con un argumento de cadena. Por ejemplo, los siguientes pares de expresiones son equivalentes:

[a1].Value = 25

Evaluate("A1").Value = 25

trigVariable = [SIN(45)]

trigVariable = Evaluate("SEN(45)")

Set firstCellInSheet = Workbooks("LIBRO1.XLS").Sheets(4).[A1]

Set firstCellInSheet = Workbooks("LIBRO1.XLS").Sheets(4).Evaluate("A1")

Usar corchetes tiene la ventaja de que el código es más corto. La ventaja de usar Evaluate es que el argumento es una cadena, lo que permite integrarla en el código o usar una variable de Visual Basic.


Ejemplo del método Evaluate

En este ejemplo se activa el formato de negrita en la celda A1 de la Hoja1.

Worksheets("Hoja1").Activate

celdaNegrita = "A1"

Application.Evaluate(celdaNegrita).Font.Bold = True


Método ExecuteExcel4Macro

Ejecuta una función macro de Microsoft Excel 4.0 y devuelve su resultado. El tipo que se devuelve depende de la función.

Sintaxis

expresión.ExecuteExcel4Macro(String)

expresión   Opcional. Una expresión que devuelve un objeto Application.

String   String requerida. Una función del lenguaje de macros de Microsoft Excel 4.0 sin el signo igual. Todas las referencias deben suministrarse como cadenas F1C1. Si String tiene incrustadas comillas dobles, deberá duplicarlas. Por ejemplo, para poder ejecutar la función de macro =MID("texto";1;4), String debe ser "MID(""texto"";1;4)".

Comentarios

La macro de Microsoft Excel 4.0 no se evalúa en el contexto del libro o de la hoja actual. Esto significa que toda referencia deberá ser externa y, además, especificar de manera explícita el nombre de un libro. Por ejemplo, para ejecutar la macro de Microsoft Excel 4.0 "Mi_macro" que está en el Libro1, se debe usar "Libro1!Mi_Macro()". Si no se especifica el nombre del libro, este método fallará.


Ejemplo del método ExecuteExcel4Macro

Este ejemplo ejecuta la función de macro GET.CELL(42) en la celda C3 de la Hoja1 y muestra el resultado en un cuadro de mensaje. La función de macro GET.CELL(42) devuelve la distancia horizontal desde el borde izquierdo de la ventana activa al borde izquierdo de la celda activa. Esta función de macro no tiene un equivalente directo en Visual Basic.

Worksheets("Hoja1").Activate

Range("C3").Select

MsgBox ExecuteExcel4Macro("GET.CELL(42)")


Propiedad FixedDecimal

Todos los datos que se introduzcan después de establecer esta propiedad como True tendrán un formato con el número de lugares decimales establecido por la propiedad FixedDecimalPlaces. Boolean de Lectura/Escritura.


Ejemplo de la propiedad FixedDecimal

Este ejemplo establece la propiedad FixedDecimal como True y, a continuación, establece la propiedad FixedDecimalPlaces como 4. Si introduce "30000" después de ejectuar este ejemplo, obtendrá "3" en la hoja de cálculo y, si introduce “12500”, obtendrá “1,25”.

Application.FixedDecimal = True

Application.FixedDecimalPlaces = 4


Propiedad FixedDecimalPlaces

Devuelve o establece el número de decimales usados cuando la propiedad FixedDecimal se establece como True. Long de Lectura/Escritura.


Ejemplo de la propiedad FixedDecimalPlaces

Este ejemplo establece la propiedad FixedDecimal como True y, a continuación, establece la propiedad FixedDecimalPlaces como 4. Si introduce "30000" después de ejectuar este ejemplo, obtendrá "3" en la hoja de cálculo y, si introduce “12500”, obtendrá “1,25”.

Application.FixedDecimal = True

Application.FixedDecimalPlaces = 4


Propiedad FullName

Devuelve el nombre del objeto, incluida su ruta de acceso en el disco, en forma de cadena. String de sólo lectura.

Comentarios

Esta propiedad es equivalente a Path, seguida del separador de sistema del archivo actual y de la propiedad Name.


Ejemplo de la propiedad FullName

Este ejemplo muestra la ruta de acceso y el nombre de archivo de todas las macros automáticas disponibles.

For Each a In AddIns

MsgBox a.FullName

Next a

Este ejemplo muestra la ruta de acceso y el nombre de archivo del libro activo (suponiendo que se haya guardado).

MsgBox ActiveWorkbook.FullName


Método Help

Muestra un tema de Ayuda.

Sintaxis

expresión.Help(HelpFile, HelpContextID)

expresión   Requerida. Una expresión que devuelve un objeto Application.

helpFile   Variant opcional. El nombre del archivo de Ayuda en pantalla que desee mostrar. Si este argumento no se especifica, se usará el archivo de la Ayuda de Microsoft Excel.

helpContextID   Variant opcional. Especifica el número de identificación de contexto para el tema de Ayuda. Si este argumento no se especifica, se mostrará el cuadro de diálogo de Temas de Ayuda.


Ejemplo del método Help

En este ejemplo se muestra el tema número 65527, Otisapp.hlp, del archivo de Ayuda.

Application.Help "OTISAPP.HLP", 65527


Propiedad IgnoreRemoteRequests

True si se hace caso omiso de las solicitudes remotas del DDE. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IgnoreRemoteRequests

Este ejemplo establece la propiedad IgnoreRemoteRequests como True para que se ignoren las solicitudes de DDE remotas.

Application.IgnoreRemoteRequests = True


Método InputBox

Muestra un cuadro de diálogo para que el usuario introduzca información. Devuelve la información introducida en el cuadro de diálogo.

Sintaxis

expresión.InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextId, Type)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Prompt   String requerida. El mensaje que se mostrará en el cuadro de diálogo. Puede ser una cadena, un número, una fecha o un valor Boolean (Microsoft Excel automáticamente convierte el valor en una cadena String antes de que muestre).

Title   Variant opcional. El título del cuadro de entrada. Si este argumento se omite, el título predeterminado será "Entrada".

Default   Variant opcional. Especifica un valor que aparecerá en el cuadro de texto cuando se muestre inicialmente el cuadro de diálogo. Si este argumento se omite, el cuadro de texto permanecerá vacío. Este valor puede ser un objeto Range.

Left   Variant opcional. Especifica la posición X del cuadro de diálogo con respecto a la esquina superior izquierda de la pantalla, en puntos.

Top   Variant opcional. Especifica la posición Y del cuadro de diálogo con respecto a la esquina superior izquierda de la pantalla, en puntos.

HelpFile   Variant opcional. El nombre del archivo de Ayuda para este cuadro de entrada. Si los argumentos HelpFile y HelpContextID están presentes, aparecerá un botón Ayuda en el cuadro de diálogo.

HelpContextId   Variant opcional. La identificación de contexto del tema de Ayuda en HelpFile.

Type   Variant opcional. Especifica el tipo de datos que se devuelve. Si este argumento se omite, el cuadro de diálogo devolverá texto. Puede ser uno de los siguientes valores o bien una suma de ellos.

Valor	Significado
0	Una fórmula
1	Un número
2	Texto (una cadena)
4	Un valor lógico (True o False)
8	Una referencia a una celda, como un objeto Range.
16	Un valor de error, como por ejemplo #N/A
64	Una matriz de valores
Es posible usar una suma de valores permitidos para Type. Por ejemplo, para que un cuadro de entrada acepte texto o números, establezca Type como 1 + 2.

Comentarios

Use InputBox para mostrar un cuadro de diálogo sencillo que permite introducir información para usarla en una macro. El cuadro de diálogo tiene un botón Aceptar y un botón Cancelar. Si elige el botón Aceptar, InputBox devolverá el valor introducido en el cuadro de diálogo. Si elige el botón Cancelar, InputBox devolverá False.

Si Type es 0, InputBox devolverá la fórmula en forma de texto, por ejemplo, "=2*PI()/360". Si existen referencias en la fórmula, se devolverán como referencias de estilo A1 (use ConvertFormula para convertir entre estilos de referencia).

Si Type es 8, InputBox devolverá un objeto Range. Debe usar el enunciado Set para asignar el resultado a un objeto Range, como se muestra en el ejemplo siguiente:

Set miRango = Application.InputBox(prompt := "Ejemplo", type := 8)

Si no usa el enunciado Set, se asignará a la variable el valor contenido en el rango y no el objeto Range mismo.

Si usa el método InputBox para solicitar al usuario una fórmula, deberá usar la propiedad FormulaLocal para asignar la fórmula a un objeto Range. La fórmula introducida estará en el lenguaje del usuario.

El método InputBox difiere de la función InputBox en que permite la validación selectiva de las entradas del usuario y en que puede usarse con objetos, valores de error y fórmulas de Microsoft Excel. Tenga en cuenta que Application.InputBox llama al método InputBox; InputBox sin calificador de objeto llama a la función InputBox.


Ejemplo del método InputBox

Este ejemplo solicita un número al usuario.

miNum = Application.InputBox("Introduzca un número")

Este ejemplo solicita al usuario que seleccione una celda de la Hoja1. El ejemplo usa el argumento Type para asegurarse de que valor devuelto es una referencia de celda válida (un objeto Range).

Worksheets("Hoja1").Activate

Set miCelda = Application.InputBox( _

prompt:="Seleccione una celda", Type:=8)


Propiedad Installed

True si la macro automática está instalada. Boolean de Lectura/Escritura.

Comentarios

Si establece esta propiedad como True se instalará la macro automática y se llamará a las funciones Auto_Add. Si establece esta propiedad como False se eliminará la macro automática y se llamará a las funciones Auto_Remove.


Ejemplo de la propiedad Installed

Este ejemplo usa un cuadro de mensaje para mostrar el estado de instalación de la macro automática Solver.

Set a = AddIns("Macro automática Solver")

If a.Installed = True Then

MsgBox "Se ha instalado la macro automática Solver"

Else

MsgBox "No se ha instalado la macro automática Solver"

End If


Propiedad Interactive

True si Microsoft Excel está en el modo interactivo; esta propiedad generalmente es True. Si se establece como False, Microsoft Excel bloqueará la introducción de toda información desde el teclado y el mouse (ratón), con excepción de la información introducida en los cuadros de diálogo mostrados por el código. Si se bloquea la introducción de datos por parte del usuario se evitará que éste interfiera con la macro cuando ésta mueva o active objetos de Microsoft Excel. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad es útil cuando se usa DDE, EventosApple o Automatización OLE para comunicarse con Microsoft Excel desde otra aplicación.

Si establece la propiedad como False, no olvide volver a darle el valor True. Microsoft Excel no vuelve a establecer automáticamente la propiedad como True una vez finalizada la ejecución de la macro.


Ejemplo de la propiedad Interactive

Este ejemplo establece la propiedad Interactive como False mientras utiliza DDE en Windows y, a continuación, vuelve a establecerla como True cuando termina. De este modo se evita que el usuario interfiera con la macro.

Application.Interactive = False

Application.DisplayAlerts = False

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\CARTAMOD.DOC")

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal

Application.DisplayAlerts = True

Application.Interactive = True


Método Intersect

Devuelve un objeto Range que representa a la intersección rectangular de dos o más rangos.

Sintaxis

expresión.Intersect(Arg1, Arg2, ...)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Arg1, Arg2,...   Range requerido. Los rangos que se intersectan. Deben especificarse al menos dos objetos Range.


Ejemplo del método Intersect

Este ejemplo selecciona la intersección de dos rangos con nombre, rg1 y rg2, en la Hoja1. Si no hay intersección entre los rangos, el ejemplo mostrará un mensaje.

Worksheets("Hoja1").Activate

Set intersec = Application.Intersect(Range("rg1"), Range("rg2"))

If intersec Is Nothing Then

MsgBox "No hay intersección entre los rangos"

Else

intersec.Select

End If


Propiedad Iteration

True si Microsoft Excel usa iteración para resolver referencias circulares. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Iteration

Este ejemplo establece la propiedad Iteration como True, para que las referencias circulares se resuelvan por iteración.

Application.Iteration = True


Propiedad LibraryPath

Devuelve la ruta del directorio BIBLIOTECA, sin incluir el separador final. String de sólo lectura.


Ejemplo de la propiedad LibraryPath

Este ejemplo abre el archivo OSCAR.XLA de la carpeta Library (la carpeta Biblioteca de macros de Macintosh).

sepVía = Application.PathSeparator

f = Application.LibraryPath & sepVía & "OSCAR.XLA"

Workbooks.Open filename:=f


Propiedad MathCoprocessorAvailable

True si se dispone de un coprocesador matemático. Boolean de sólo lectura.


Ejemplo de la propiedad MathCoprocessorAvailable

Este ejemplo hará que se muestre un cuadro de mensaje si no se dispone de un coprocesador matemático.

If Not Application.MathCoprocessorAvailable Then

MsgBox "Esta macro necesita un coprocesador matemático"

End If


Propiedad MaxChange

Devuelve o establece el cambio máximo entre cada iteración cuando Microsoft Excel resuelve referencias circulares. Double de Lectura/Escritura.

Comentarios

La propiedad MaxIterations establece el número máximo de iteraciones que Microsoft Excel puede usar para resolver referencias circulares.


Ejemplo de la propiedad MaxChange

Este ejemplo establece en 0,1 el cambio máximo para cada iteración.

Application.MaxChange = 0.1


Propiedad Parent

Devuelve el objeto maestro del objeto especificado. Es de sólo lectura.


Ejemplo de la propiedad Parent

Este ejemplo muestra el nombre del gráfico que contiene miEje.

Set miEje = Charts(1).Axes(xlValue)

MsgBox miEje.Parent.Name


Método Run

Sintaxis 1: Ejecuta una macro o llama a una función. Puede emplearse para ejecutar una macro escrita en Visual Basic o en el lenguaje de macros de Microsoft Excel 4.0 o bien para ejecutar una función en una DLL o XLL.

Sintaxis 2: Ejecuta la macro de Microsoft Excel 4.0 en su ubicación. El rango debe estar en una hoja de macros.

Sintaxis 1

expresión.Run(Macro, Arg1, Arg2, ...)

Sintaxis 2

expresión.Run(Arg1, Arg2, ...)

expresión   Opcional para Application, requerida para Range. Una expresión que devuelve la aplicación que contiene la macro o bien un rango de una hoja de macros que contiene una macro de Microsoft Excel 4.0.

Macro   Variant requerida para Sintaxis 1 (no se usa con Sintaxis 2). La macro que se ejecutará. Puede ser una cadena con el nombre de la macro, un objeto Range que indica qué función es o una identificación de registro para una función de DLL (XLL) registrada. Si se emplea una cadena, se evaluará en el contexto de la hoja activa.

Arg1, Arg2,...   Variant opcional. Los argumentos que se pasarán a la función.

Comentarios

No pueden usarse argumentos con nombre en este método. Los argumentos deben pasarse por posición.

El método Run devuelve el resultado de la macro a la que se ha llamado. Los objetos que se pasan a la macro como argumentos se convierten en valores (aplicando la propiedad Value al objeto). Es decir, no es posible pasar objetos a macros mediante el método Run.


Ejemplo del método Run

Este ejemplo muestra cómo se llama a la macro de función Mi_Func_Suma, que está definida en la hoja de macros MIPERSON.XLM (la hoja de macros debe estar abierta). La función adopta dos argumentos numéricos (1 y 5 en este ejemplo).

miSuma = Application.Run("MIPERSON.XLM!Mi_Func_Suma", 1, 5)

MsgBox "Resultado de la macro: " & miSuma


Propiedad TransitionMenuKey

Devuelve o establece la tecla de ayuda o de menú alternativa, que normalmente es "/". String de Lectura/Escritura.


Ejemplo de la propiedad TransitionMenuKey

Este ejemplo establece la tecla del menú de transición como "/" (que es el valor predeterminado).

Application.TransitionMenuKey = "/"


Propiedad TransitionNavigKeys

True si las teclas de desplazamiento alternativas están activas. Esta propiedad no se encuentra disponible en Macintosh. Boolean de Lectura/Escritura.


Ejemplo de la propiedad TransitionNavigKeys

Este ejemplo muestra el estado actual de la opción Teclas de desplazamiento para transición.

If Application.TransitionNavigKeys Then

keyState = "Activadas"

Else

keyState = "Desactivadas"

End If

MsgBox "La opción Teclas de desplazamiento para transición está " & keyState


Método AddReplacement

Agrega una entrada a la matriz de reemplazos de AutoCorrect.

Sintaxis

expresión.AddReplacement(What, Replacement)

expresión   Requerida. Una expresión que devuelve un objeto AutoCorrect.

What   String requerida. El texto de reemplazo. Si esta cadena ya existe en la matriz de reemplazos de AutoCorrect, el texto de reemplazo ya existente será reemplazado por el nuevo.

Reemplazo   String requerida. El texto de reemplazo.


Ejemplo del método AddReplacement

En este ejemplo se sustituye la palabra "Temp." por la palabra "Temperatura" en la matriz de reemplazos de AutoCorrect.

With Application.AutoCorrect

.AddReplacement "Temperatura", "Temp."

End With


Propiedad AutoCorrect

Devuelve un objeto AutoCorrect que representa los atributos de Microsoft Excel AutoCorrect. Es de sólo lectura.


Ejemplo de la propiedad AutoCorrect

En este ejemplo se sustituye la palabra "Temp." por la palabra "Temperatura" en la matriz de reemplazos de AutoCorrect.

With Application.AutoCorrect

.AddReplacement "Temperatura", "Temp."

End With


Propiedad CapitalizeNamesOfDays

True si la primera letra de los nombres de día se convierte en mayúsculas automáticamente. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CapitalizeNamesOfDays

En este ejemplo se configura Microsoft Excel para que convierta en mayúsculas la primera letra de los nombres de día.

With Application.AutoCorrect

.CapitalizeNamesOfDays = True

.ReplaceText = True

End With


Método DeleteReplacement

Elimina una entrada en la matriz de reemplazos de AutoCorrect.

Sintaxis

expresión.DeleteReplacement(Qué)

expresión   Requerida. Una expresión que devuelve un objeto AutoCorrect.

What   String requerida. El texto que se reemplaza, según aparece en la fila que se eliminará de la matriz de reemplazos de AutoCorrect. Si esta cadena no existe en la matriz de reemplazos de AutoCorrect, el método fallará.


Ejemplo del método DeleteReplacement

En este ejemplo se elimina la palabra "Temperatura" de la matriz de reemplazos de AutoCorrect.

With Application.AutoCorrect

.DeleteReplacement "Temperatura"

End With


Propiedad ReplaceText

True si el texto de la lista de reemplazos de AutoCorrect se reemplaza automáticamente. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ReplaceText

En este ejemplo se desactiva el reemplazo automático de texto.

With Application.AutoCorrect

.CapitalizeNamesOfDays = True

.ReplaceText = False

End With


Propiedad TwoInitialCapitals

True si las palabras que empiezan con dos letras mayúsculas se corrigen  automáticamente. Boolean de Lectura/Escritura.


Ejemplo de la propiedad TwoInitialCapitals

En este ejemplo se configura Microsoft Excel para que corrija las palabras que empiecen con dos letras mayúsculas.

With Application.AutoCorrect

.TwoInitialCapitals = True

.ReplaceText = True

End With


Propiedad AskToUpdateLinks

True si Microsoft Excel solicita al usuario que actualice los vínculos al abrir archivos con vínculos. False si los vínculos se actualizan automáticamente, sin cuadro de diálogo. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AskToUpdateLinks

Este ejemplo hace que Microsoft Excel solicite al usuario que actualice los vínculos cuando abra un archivo que contiene vínculos.

Application.AskToUpdateLinks = True


Propiedad AutoUpdate

True si el objeto OLE se actualiza automáticamente al cambiar el origen. Válido únicamente si el objeto está vinculado (su propiedad OLEType debe ser xlOLELink). Boolean de sólo lectura.


Ejemplo de la propiedad AutoUpdate

En este ejemplo se muestra el estado de actualización automática de todos los objetos OLE de la Hoja1.

Worksheets("Hoja1").Activate

Range("A1").Value = "Nombre"

Range("B1").Value = "Estado de vínculo"

Range("C1").Value = "Estado de actualización automática"

elem = 2

For Each obj In ActiveSheet.OLEObjects

Cells(elem, 1) = obj.Name

If obj.OLEType = xlOLELink Then

Cells(elem, 2) = "Vinculado"

Cells(elem, 3) = obj.AutoUpdate

Else

Cells(elem, 2) = "Incrustado"

End If

elem = elem + 1

Next


Propiedad Backward

Devuelve o establece el número de períodos (o unidades en un gráfico de dispersión) en que la línea de tendencia se extiende hacia atrás. Long de Lectura/Escritura.


Ejemplo de la propiedad Backward

En este ejemplo se establece el número de unidades que se extiende hacia delante y hacia atrás la línea de tendencia del Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

With Charts("Gráfico1").SeriesCollection(1).Trendlines(1)

.Forward = 5

.Backward = .5

End With


Propiedad BlackAndWhite

True si los elementos del documento se imprimen en blanco y negro. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se aplica solamente a páginas de hoja de cálculo.


Ejemplo de la propiedad BlackAndWhite

Este ejemplo hace que la Hoja1 se imprima en blanco y negro.

Worksheets("Hoja1").PageSetup.BlackAndWhite = True


Propiedad Category

Devuelve o establece la categoría del nombre especificado en el lenguaje de la macro. El nombre debe hacer referencia a un comando o función personalizado. String de lectura escritura.


Ejemplo de la propiedad Category

En este ejemplo se supone que ha creado una función o un comando personalizado en una hoja de macros de Microsoft Excel 4.0. El ejemplo muestra la categoría de la función, en el lenguaje de la macro. Da por sentado que el nombre de la función o el comando personalizado es el único nombre del libro.

With ActiveWorkbook.Names(1)

If .MacroType <> xlNone Then

MsgBox "La categoría de este nombre es " & . Category

Else

MsgBox "Este nombre no hace referencia a" & _

" una función o un comando personalizado".

End If

End With


Método ChangeFileAccess

Cambia los permisos de acceso al libro. Esto puede requerir que se cargue una versión actualizada desde el disco.

Sintaxis

expresión.ChangeFileAccess(Mode, WritePassword, Notify)

expresión   Requerida. Una expresión que devuelve un objeto de Workbook.

Mode   Variant opcional. Especifica el nuevo modo de acceso. Puede ser una de las siguientes constantes XlFileAccess: xlReadWrite o xlReadOnly.

WritePassword   Variant opcional. Especifica la contraseña protegida contra escritura si el archivo está protegido contra escritura y Mode tiene el valor xlReadWrite. Se hace caso omiso si el archivo no tiene contraseña o si Mode es xlReadOnly.

Notify   Variant opcional. True (o se omite) para notificar al usuario si el acceso inmediato al archivo no es posible.

Comentarios

Si tiene un archivo abierto en el modo de sólo lectura, no tendrá acceso exclusivo al archivo. Si cambia el modo de sólo lectura a lectura y escritura, Microsoft Excel deberá cargar una nueva copia del archivo para comprobar que no se han efectuado cambios mientras el archivo estaba en modo de sólo lectura.


Ejemplo del método ChangeFileAccess

En este ejemplo se establece el libro activo como de sólo lectura.

ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly


Método ChartGroups

Devuelve un objeto que representa un solo grupo de gráficos (un objeto ChartGroup, sintaxis 1) o un conjunto de todos los grupos de gráficos del gráfico (un objeto ChartGroups, sintaxis 2). El conjunto que se devuelve incluye todos los tipos de grupo.

Sintaxis 1

expresión.ChartGroups(Index)

Sintaxis 2

expresión.ChartGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. El número del grupo de gráficos.


Ejemplo del método ChartGroups

En este ejemplo se activan las barras de apertura y cierre para el grupo de gráficos uno del Gráfico1 y, a continuación, se establecen sus colores. El ejemplo debe ejecutarse en un gráfico de líneas 2D que contenga dos series que se cruzan en uno o más puntos de datos.

With Charts("Gráfico1").ChartGroups(1)

.HasUpDownBars = True

.DownBars.Interior.ColorIndex = 3

.UpBars.Interior.ColorIndex = 5

End With


Método ClearArrows

Borra las flechas de rastreo de la hoja de cálculo. La característica auditoría agrega las flechas de rastreo.

Sintaxis

expresión.ClearArrows

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.


Ejemplo del método ClearArrows

En este ejemplo se borran las flechas de rastreo de la Hoja1.

Worksheets("Hoja1").ClearArrows


Método Copy

Sintaxis 1: Copia el objeto en el Portapapeles. Copia una imagen del punto o la serie en el Portapapeles.

Sintaxis 2: Copia el rango en el rango especificado o en el Portapapeles.

Sintaxis 3: Copia la hoja en otro lugar del libro.

Sintaxis 1

expresión.Copy

Sintaxis 2

expresión.Copy(Destination)

Sintaxis 3

expresión.Copy(Before, After)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a. Para copiar una hoja de gráficos completa, use la sintaxis 3 con el objeto Chart. Para copiar sólo el área que contiene el gráfico, use la sintaxis 1 con el objeto ChartArea.

Destination   Variant opcional. Especifica el nuevo rango en el que se copiará el rango especificado. Si este argumento se omite, Microsoft Excel copiará el rango en el Portapapeles.

Before   Sintaxis 3: Variant opcional. La hoja de cálculo antes de la cual se copiará ésta. No se puede especificar Before si se especifica After.

After   Variant opcional. La hoja de cálculo después de la cual se copiará ésta. No se puede especificar After si se especifica Before.

Comentarios

Si no se especifica Before o After, Microsoft Excel creará un nuevo libro que contenga la hoja copiada.


Ejemplo del método Copy

En este ejemplo se copia la Hoja1, colocando la copia después de la Hoja3.

Worksheets("Hoja1").Copy after := Worksheets("Hoja3")

En este ejemplo se copia el rango utilizado de la Hoja1, se crea una nueva hoja de cálculo y, a continuación, se pegan los valores del rango copiado en la nueva hoja de cálculo.

Worksheets("Hoja1").UsedRange.Copy

Set nuevaHoja = Worksheets.Add

nuevaHoja.Range("A1").PasteSpecial Paste:=xlValues

En este ejemplo se copian las fórmulas de las celdas A1:D4 de la Hoja1 en las celdas E5:H8 de la Hoja2.

Worksheets("Hoja1").Range("A1:D4").Copy _

destination:=Worksheets("Hoja2").Range("E5")


Propiedad MaxIterations

Devuelve o establece el número máximo de iteraciones que se permitirán para resolver una referencia circular. Long de lectura escritura

Comentarios

La propiedad MaxChange establece la cantidad máxima de cambios permitida entre cada iteración cuando se resuelven referencias circulares.


Ejemplo de la propiedad MaxIterations

En este ejemplo se establece en 1000 el número máximo de iteraciones.

Application.MaxIterations = 1000


Propiedad MemoryFree

Devuelve la cantidad de memoria, en bytes, que aún está disponible para Microsoft Excel. Boolean de sólo lectura.


Ejemplo de la propiedad MemoryFree

En este ejemplo se muestra un cuadro de mensaje que indica el número de bytes libres.

MsgBox "Microsoft Excel tiene " & Application.MemoryFree & " bytes libres"


Propiedad MemoryTotal

Devuelve la cantidad total de memoria, en bytes, que está disponible para Microsoft Excel, incluida la memoria en uso. Long de sólo lectura.

Comentarios

MemoryTotal es igual a MemoryUsed + MemoryFree..


Ejemplo de la propiedad MemoryTotal

En este ejemplo se muestra un cuadro de mensaje que indica el número total de bytes libres.

MsgBox "Microsoft Excel tiene " & Application. MemoryTotal & _

" bytes totales libres"


Propiedad MouseAvailable

True si se dispone de un mouse (siempre True en Macintosh). Boolean de sólo lectura.


Ejemplo de la propiedad MouseAvailable

En este ejemplo se muestra un mensaje si no se dispone de un mouse.

If Application.MouseAvailable = False Then

MsgBox "El sistema no dispone de mouse"

End If


Método Move

Desplaza la hoja de cálculo a otro lugar del libro.

Sintaxis

expresión.Move(Before, After)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Before   Variant opcional. La hoja de cálculo antes de la cual se situará la desplazada. No se puede especificar Before si se especifica After.

After   Variant opcional. La hoja de cálculo después de la cual se situará la desplazada. No se puede especificar After si se especifica Before.

Comentarios

Si no se especifica Before o After, Microsoft Excel creará un nuevo libro que contenga la hoja desplazada.


Ejemplo del método Move

En este ejemplo se desplaza la Hoja1 detrás de la Hoja3 en el libro activo.

Worksheets("Hoja1").Move _

after:=Worksheets("Hoja3")


Propiedad MoveAfterReturn

True si la celda activa se desplaza después de presionar la tecla ENTRAR (RETORNO). Boolean de Lectura/Escritura.

Comentarios

Use la propiedad MoveAfterReturnDirection para especificar la dirección en la que se desplazará la celda activa.


Ejemplo de la propiedad MoveAfterReturn

En este ejemplo se establece la propiedad MoveAfterReturn como True.

Application.MoveAfterReturn = True


Propiedad OperatingSystem

Devuelve el nombre y número de versión del sistema operativo actual, por ejemplo, "Windows (32 bits) 4.00" o "Macintosh 7.00". Boolean de sólo lectura.


Ejemplo de la propiedad OperatingSystem

En este ejemplo se muestra el nombre del sistema operativo.

MsgBox "Microsoft Excel está usando " & Application.OperatingSystem


Propiedad OrganizationName

Devuelve el nombre de la organización registrada. String de sólo lectura.


Ejemplo de la propiedad OrganizationName

En este ejemplo se muestra el nombre de la organización registrada.

MsgBox "La organización registrada es " & Application.OrganizationName


Propiedad Path

Devuelve la ruta completa del objeto, a excepción del separador final y el nombre del objeto. String de sólo lectura.

Comentarios

Usar esta propiedad sin un calificador de objeto equivale a Application.Path (que devuelve la ruta de la aplicación Microsoft Excel).


Ejemplo de la propiedad Path

En este ejemplo se muestra la ruta de acceso completa de Microsoft Excel.

MsgBox "La ruta de acceso es " & Application.Path


Propiedad PathSeparator

Devuelve el carácter separador de la ruta de acceso ("\" en Windows o ":" en Macintosh). String de sólo lectura.


Ejemplo de la propiedad PathSeparator

En este ejemplo se muestra el separador de ruta actual.

MsgBox "El carácter separador de ruta es " & Application.PathSeparator


Método PrintOut

Imprime el objeto.

Sintaxis

expresión.PrintOut(from, To, Copies, Preview, ActivePrinter, PrintToFile, Collate)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

From   Variant opcional. El número de la página en que se empezará a imprimir. Si este argumento se omite, la impresión comenzará por el principio.

To   Variant opcional. El número de la última página a imprimir. Si este argumento se omite, la impresión finalizará en la última página.

Copies   Variant opcional. El número de copias que se imprimirán. Si este argumento se omite, se imprimirá una sola copia.

Preview   Variant opcional. Si es True, Microsoft Excel activará la vista preliminar antes de imprimir el objeto. False (o se omite) para imprimir el objeto inmediatamente.

ActivePrinter   Variant opcional. Establece el nombre de la impresora activa.

PrintToFile   Variant opcional. Si es True, se imprimirá en un archivo. Microsoft Excel solicitará al usuario que introduzca el nombre del archivo de salida. No existe un método para especificar el nombre del archivo de salida desde Visual Basic.

Collate   Variant opcional. True para intercalar múltiples copias.

Comentarios

El término "Pages" en las descripciones de From y To se refiere a las páginas impresas, no al número total de páginas de la hoja de cálculo o del libro.

Este método se aplica al objeto Window sólo cuando se trata de la ventana de información.


Ejemplo del método PrintOut

En este ejemplo se imprime la hoja activa.

ActiveSheet.PrintOut


Método PrintPreview

Muestra una vista preliminar del objeto tal como aparecería impreso.

Sintaxis

expresión.PrintPreview

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método PrintPreview

En este ejemplo se muestra la Hoja1 en vista preliminar.

Worksheets("Hoja1").PrintPreview


Propiedad RecordRelative

True si las macros se graban usando referencias relativas; False si la grabación es absoluta. Boolean de sólo lectura.


Ejemplo de la propiedad RecordRelative

En este ejemplo se muestra la dirección de la celda activa en la Hoja1 con el estilo de A1 si RecordRelative es False; de lo contrario, se mostrará la dirección con el estilo de F1C1.

Worksheets("Hoja1").Activate

If Application.RecordRelative = False Then

MsgBox ActiveCell.Address(ReferenceStyle:=xlA1)

Else

MsgBox ActiveCell.Address(ReferenceStyle:=xlR1C1)

End If


Propiedad ReferenceStyle

Devuelve o establece si Microsoft Excel debe mostrar las referencias a las celdas y los encabezados de filas y columnas con el estilo de referencia de A1 o F1C1. Puede ser una de las siguientes constantes XlReferenceStyle: xlA1 o xlR1C1. Long de lectura escritura


Ejemplo de la propiedad ReferenceStyle

En este ejemplo se muestra el estilo de referencia actual.

If Application.ReferenceStyle = xlR1C1 Then

MsgBox ("Microsoft Excel está usando referencias de F1C1")

Else

MsgBox ("Microsoft Excel está utilizando referencias A1")

End If


Método Repeat

Repite la última acción efectuada en la interfaz del usuario.

Sintaxis

expresión.Repeat

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Este método repite únicamente la última acción que el usuario realizó antes de ejecutar la macro y debe ser la primera línea de la macro. No se puede usar para deshacer comandos de Visual Basic.


Ejemplo del método Repeat

En este ejemplo se repite el último comando de la interfaz de usuario. El ejemplo debe ser la primera línea de una macro.

Application.Repeat


Método Save

Guarda los cambios del libro especificado.

Sintaxis

expresión.Save

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

Para abrir un archivo de libro, use el método Open.

Para marcar un libro como si estuviera guardado, sin escribirlo en un disco, defina su propiedad Saved como True.

La primera vez que guarde un libro, use el método SaveAs para especificar su nombre de archivo.


Ejemplo del método Save

Este ejemplo guarda el libro activo.

ActiveWorkbook.Save

Este ejemplo guarda todos los libros abiertos y, a continuación, cierra Microsoft Excel.

For Each l In Application.Workbooks

w.Save

Next l

Application.Quit


Método Scenarios

Devuelve un objeto que representa un solo escenario (un objeto Scenario, Sintaxis 1) o bien un conjunto de escenarios (un objeto Scenarios, Sintaxis 2) en la hoja de cálculo.

Sintaxis 1

expresión.Scenarios(Index)

Sintaxis 2

expresión.Scenarios

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.

Index   Variant opcional. El nombre o número del escenario. También puede usar una matriz para especificar varios escenarios.


Ejemplo del método Scenarios

En este ejemplo se establece el comentario del primer escenario de la Hoja1.

Worksheets("Hoja1").Scenarios(1).Comment = _

"Peor caso ventas julio 1993"


Propiedad ScreenUpdating

True si la actualización de la pantalla está activada. Boolean de Lectura/Escritura.

Comentarios

Desactive la actualización de la pantalla para acelerar el código de la macro. No podrá ver qué está haciendo la macro, pero se ejecutará con mayor rapidez.

Recuerde que debe volver a establecer la propiedad ScreenUpdating como True cuando finalice la macro (versiones anteriores de Microsoft Excel restablecen esta propiedad de forma automática pero Microsoft Excel 97 no lo hace).


Ejemplo de la propiedad ScreenUpdating

En este ejemplo se demuestra que al desactivar la actualización de pantalla, el código puede ejecutarse con más rapidez. El ejemplo oculta una columna de cada dos en la Hoja1, mientras realiza un seguimiento del tiempo que tarda en hacerlo. La primera vez que el ejemplo oculte las columnas, la actualización de la pantalla estará activada; la segunda estará desactivada. Al ejecutar este ejemplo, puede comparar los respectivos tiempos de ejecución, que se muestran en el cuadro de mensaje.

Dim tiempoTranscurrido(2)

Application.ScreenUpdating = True

For elem = 1 To 2

If elem = 2 Then Application.ScreenUpdating = False

horaInicial = Time

Worksheets("Hoja1").Activate

For Each c In ActiveSheet.Columns

If c.Column Mod 2 = 0 Then

c.Hidden = True

End If

Next c

horaParada = Time

tiempoTranscurrido(elem) = (horaParada - horaInicial) * 24 * 60 * 60

Next elem

Application.ScreenUpdating = True

MsgBox "Tiempo transcurrido, actualización de pantalla activada: " & tiempoTranscurrido (1) & _

" seg." & Chr(13) & _

"Tiempo transcurrido, actualización de pantalla desactivada: " & tiempoTranscurrido(2) & _

" seg."


Método SendKeys

Envía las pulsaciones de tecla a la aplicación activa. Método no disponible en Macintosh.

Sintaxis

expresión.SendKeys(Keys, Wait)

expresión   Opcional. Una expresión que devuelve un objeto Application.

Keys   Variant requerida. La tecla o combinación de teclas que se enviará a la aplicación en forma de texto.

Wait   Variant opcional. True para que Microsoft Excel espere a que las teclas se procesen antes de devolver el control a la macro. False (o se omite) para seguir ejecutando la macro sin esperar a que las teclas se procesen.

Comentarios

Este método introduce la pulsaciones en un búfer de teclas. En algunos casos necesitará llamar a este método antes de llamar al que usará las pulsaciones. Por ejemplo, para enviar una contraseña a un cuadro de diálogo, debe llamar al método SendKeys antes de mostrar el cuadro de diálogo.

El argumento Keys puede especificar cualquier tecla única o, bien, cualquier tecla combinada con ALT, CTRL o MAYÚSCULAS (o cualquier combinación de dichas teclas). Cada tecla está representada por uno o varios caracteres, como "a" por el carácter a o "{ENTER}" por la tecla ENTRAR.

Para especificar caracteres que no están visibles cuando se presiona la tecla, como por ejemplo ENTRAR o TAB, use los códigos que se muestran en la siguiente tabla. Cada código de la tabla representa una tecla del teclado:

Tecla	Código
RETROCESO	{BACKSPACE} o {BS}
INTERRUMPIR	{BREAK}
BLOQ MAYÚS	{CAPSLOCK}
BORRAR	{CLEAR}
SUPRIMIR o SUPR	{DELETE} o {DEL}
FLECHA ABAJO	{DOWN}
FIN	{END}
ENTRAR (teclado numérico)	{ENTER}
ENTRAR	~ (tilde)
ESC	{ESCAPE} o {ESC}
AYUDA	{HELP}
INICIO	{HOME}
INSERT	{INSERT}
FLECHA IZQUIERDA	{LEFT}
BLOQ NUM	{NUMLOCK}
AV PÁG	{PGDN}
RE PÁG	{PGUP}
RETORNO	{RETURN}
FLECHA DERECHA	{RIGHT}
BLOQ DESPL	{SCROLLLOCK}
TAB	{TAB}
FLECHA ARRIBA	{UP}
F1 a F15	{F1} a {F15}
También puede especificar teclas combinadas con MAYÚSCULAS o CTRL o ALT. Para especificar una tecla combinada con otra u otras teclas, use la siguiente tabla:

Para combinar una tecla con	Preceda el código de la tecla con
MAYÚSCULAS	+ (signo más)
CTRL	^ (signo exponencial)
ALT	% (signo de porcentaje)


Ejemplo del método SendKeys

En este ejemplo se utiliza el método SendKeys para salir de Microsoft Excel para Windows.

Application.SendKeys("%fx")


Propiedad StartupPath

Devuelve la ruta completa de la carpeta de inicio, sin incluir el separador final. String de sólo lectura.


Ejemplo de la propiedad StartupPath

Este ejemplo muestra la ruta completa de la carpeta de inicio de Microsoft Excel.

MsgBox Application.StartupPath


Propiedad StatusBar

Devuelve o establece el texto de la barra de estado. String de Lectura/Escritura.

Comentarios

Esta propiedad devolverá False si Microsoft Excel tiene el control de la barra de estado. Para restaurar el texto predeterminado de la barra de estado, establezca la propiedad como False; puede hacer esto incluso con la barra de estado oculta.


Ejemplo de la propiedad StatusBar

En este ejemplo se establece el texto de la barra de estado como "Tenga paciencia, por favor..." antes de abrir el libro GRANDE.XLS y, a continuación, se restaura el texto predeterminado.

barraEstadoAnterior = Application.DisplayStatusBar

Application.DisplayStatusBar = True

Application.StatusBar = "Tenga paciencia, por favor..."

Workbooks.Open filename:="GRANDE.XLS"

Application.StatusBar = False

Application.DisplayStatusBar = barraEstadoAnterior


Propiedad ThisWorkbook

Devuelve un objeto Workbook que representa el libro en el que se está ejecutando el código de la macro activa. Es de sólo lectura.

Comentarios

Use esta propiedad para hacer referencia al libro que contiene el código de la macro. ThisWorkbook es la única forma de hacer referencia a un libro de macro automática desde dentro de la propia macro automática. La propiedad ActiveWorkbook no devuelve el libro de la macro automática, sino el libro que llama a dicha macro. La propiedad Workbooks puede fallar, ya que el nombre del libro probablemente cambió cuando creó la macro automática. ThisWorkbook siempre devuelve el libro en el que se está ejecutando el código.

Por ejemplo, use el código siguiente para activar una hoja de diálogo almacenada en el libro de la macro automática.

ThisWorkbook.DialogSheets(1).Show

Esta propiedad sólo puede utilizarse desde dentro de Microsoft Excel. No podrá usar la propiedad para obtener acceso a un libro desde otra aplicación.


Ejemplo de la propiedad ThisWorkbook

Este ejemplo cierra el libro que contiene el código de ejemplo. No se guardan los cambios realizados en el libro, si los hay.

ThisWorkbook.Close SaveChanges:=False


Método Undo

Cancela la última acción efectuada en la interfaz del usuario.

Sintaxis

expresión.Undo

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Este método deshace únicamente la última acción que el usuario realizó antes de ejecutar la macro y debe ser la primera línea de la macro. No se puede usar para deshacer comandos de Visual Basic.


Ejemplo del método Undo

Este ejemplo cancela la última acción de la interfaz del usuario. El ejemplo debe ser la primera línea de una macro.

Application.Undo


Método Union

Devuelve la unión de dos o más rangos.

Sintaxis

expresión.Union(Arg1, Arg2, ...)

expresión   Opcional. Una expresión que devuelve un objeto Application.

arg1, arg2,...   Range requerido. Deben especificarse al menos dos objetos Range.


Ejemplo del método Union

Este ejemplo rellena la unión de dos rangos con nombre, Rango1 y Rango2, con la fórmula =RAND().

Worksheets("Hoja1").Activate

Set rangoGrande = Application.Union(Range("Rango1"), Range("Rango2"))

rangoGrande.Formula = "=ALEATORIO()"


Método Unprotect

Elimina la protección de una hoja o de un libro. Este método no tiene efecto si la hoja de cálculo o el libro no están protegidos.

Sintaxis

expresión.Unprotect(Password)

expresión   Requerida. Una expresión que devuelve un objeto Chart, Workbook o Worksheet.

Password   Variant opcional. Una cadena que representa la contraseña (en la que se distingue entre mayúsculas y minúsculas) que se utiliza para anular la protección de la hoja o el libro. El argumento se ignora si la hoja o el libro no están protegidos con contraseña. Si se omite este argumento en una hoja que está protegida con contraseña, se le pedirá que la introduzca. Si se omite este argumento en un libro que está protegido con contraseña, se le pedirá que la introduzca.

Comentarios

Si olvida la contraseña, no se podrá desproteger la hoja de cálculo ni el libro. Es conveniente guardar en un lugar seguro una lista de las contraseñas y nombres de los documentos correspondientes.


Ejemplo del método Unprotect

Este ejemplo elimina la protección del libro activo.

ActiveWorkbook.Unprotect


Propiedad UsableHeight

Devuelve el alto máximo del espacio que puede ocupar una ventana en el área de ventana de la aplicación, en puntos. Double de sólo lectura.


Ejemplo de la propiedad UsableHeight

Este ejemplo amplía la ventana activa hasta el tamaño máximo disponible (suponiendo que no esté maximizada).

With ActiveWindow

.WindowState = xlNormal

.Top = 1

.Left = 1

.Height = Application.UsableHeight

.Width = Application.UsableWidth

End With


Propiedad UsableWidth

Devuelve el ancho máximo del espacio que puede ocupar una ventana en el área de ventana de la aplicación, en puntos. Double de sólo lectura.


Ejemplo de la propiedad UsableWidth

Este ejemplo amplía la ventana activa hasta el tamaño máximo disponible (suponiendo que no esté maximizada).

With ActiveWindow

.WindowState = xlNormal

.Top = 1

.Left = 1

.Height = Application.UsableHeight

.Width = Application.UsableWidth

End With


Propiedad UserName

Devuelve o establece el nombre del usuario actual. String de Lectura/Escritura.


Ejemplo de la propiedad UserName

En este ejemplo se muestra el nombre del usuario actual.

MsgBox "El usuario actual es " & Application.UserName


Propiedad Version

Devuelve el número de versión de Microsoft Excel. String de sólo lectura.


Ejemplo de la propiedad Version

En este ejemplo se muestra un cuadro de mensaje que indica el número de versión de Microsoft Excel y el nombre del sistema operativo.

MsgBox "Bienvenido a Microsoft Excel versión " & _

Application.Version & " que se ejecuta en " & _

Application.OperatingSystem & "!"


Método Wait

Realiza una pausa, durante el tiempo especificado, en una macro que se está ejecutando.

Importante  El método Wait suspende todas las actividades de Microsoft Excel y, mientras esté ejecutándose, probablemente no le permita realizar otras operaciones en su equipo. No obstante, los procesos de segundo plano, como por ejemplo la impresión y el cálculo, continúan.

Sintaxis

expresión.Wait(Time)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Time   Variant requerida. La hora a la que desea que se reanude la macro, en el formato de fecha de Microsoft Excel.


Ejemplo del método Wait

Este ejemplo hace una pausa en una macro en ejecución hasta las 6:23 p.m. de la fecha actual.

Application.Wait "18:23:00"

Este ejemplo realiza una pausa en una macro en ejecución durante aproximadamente 10 segundos.

nuevaHora = Hour(Now())

nuevoMinuto = Minute(Now())

nuevoSegundo = Second(Now()) + 10

tiempoEspera = TimeSerial(nuevaHora, nuevoMinuto, nuevoSegundo)

Application.Wait tiempoEspera


Propiedad WindowsForPens

True si el equipo se ejecuta bajo Microsoft Windows para Pen Computing. Boolean de sólo lectura.


Ejemplo de la propiedad WindowsForPens

En este ejemplo se muestra cómo puede limitarse el reconocimiento de escritura manual a números y signos puntuación cuando se ejecuta Microsoft Windows para Pen Computing.

If Application.WindowsForPens Then

Application.ConstrainNumeric = True

End If


Propiedad WindowState

Devuelve o establece el estado de la ventana. Puede ser una de las siguientes constantes XlWindowState: xlMaximized, xlMinimized o xlNormal. Long de Lectura/Escritura.


Ejemplo de la propiedad WindowState

Este ejemplo maximiza la ventana de aplicación de Microsoft Excel para Windows (esta propiedad no puede establecerse en Macintosh).

Application.WindowState = xlMaximized

Este ejemplo amplía la ventana activa hasta el tamaño máximo disponible (suponiendo que no esté maximizada).

With ActiveWindow

.WindowState = xlNormal

.Top = 1

.Left = 1

.Height = Application.UsableHeight

.Width = Application.UsableWidth

End With


Propiedad Area3DGroup

Devuelve un objeto ChartGroup que representa el grupo de gráficos de áreas en un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Area3DGroup

En este ejemplo se activan las líneas de unión en el grupo de gráficos de áreas en 3D.

Charts(1).Area3DGroup.HasDropLines = True


Método AreaGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de áreas (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de áreas (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.AreaGroups(Index)

Sintaxis 2

expresión.AreaGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. El número del grupo de gráficos.


Ejemplo del método AreaGroups

En este ejemplo se activan las líneas de unión en el grupo gráficos de áreas en 2D.

Charts(1).AreaGroups(1).HasDropLines = True


Propiedad AutoScaling

True si Microsoft Excel ajusta la escala de un gráfico 3D para que su tamaño se aproxime más al de su equivalente 2D. La propiedad RightAngleAxes debe ser True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AutoScaling

Este ejemplo ajusta la escala del Gráfico1 de manera automática. El ejemplo debe ejecutarse en un gráfico 3D.

With Charts("Gráfico1")

.RightAngleAxes = True

.AutoScaling = True

End With


Método Axes

Devuelve un objeto que representa a un solo eje (un objeto Axis, sintaxis 1) o a un conjunto de los ejes del gráfico (un conjunto Axes, sintaxis 2).

Sintaxis 1

expresión.Axes(Type, AxisGroup)

Sintaxis 2

expresión.Axes

expresión   Necesaria. Una expresión que devuelve un objeto Chart.

Type   Variant opcional. Especifica el eje que se devolverá. Puede ser una de las siguientes constantes XlAxisType: xlValue, xlCategory o xlSeriesAxis (xlSeriesAxis sólo es válido para gráficos 3D).

AxisGroup   Variant opcional. Especifica el grupo de ejes. Puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. Si este argumento se omite, se usará el grupo principal. Los gráficos 3D sólo tienen un grupo de ejes.


Ejemplo del método Axes

Este ejemplo agrega un rótulo al eje de categorías del Gráfico1.

With Charts("Gráfico1").Axes(xlCategory)

.HasTitle = True

.AxisTitle.Text = "Ventas julio"

End With

Este ejemplo desactiva las líneas de división principales de los ejes de categorías del Gráfico1.

Charts("Gráfico1").Axes(xlCategory).HasMajorGridlines = False

Este ejemplo desactiva todas las líneas de división de todos los ejes del Gráfico1.

For Each e In Charts("Gráfico1").Axes

a.HasMajorGridlines = False

a.HasMinorGridlines = False

Next a


Propiedad AxisBetweenCategories

True si el eje de valores cruza al eje de categorías entre categorías. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se aplica solamente a los ejes de categorías; no se aplica a los gráficos 3D.


Ejemplo de la propiedad AxisBetweenCategories

Este ejemplo hace que el eje de valores del Gráfico1 cruce al eje de categorías entre categorías.

Charts("Gráfico1").Axes(xlCategory).AxisBetweenCategories = True


Propiedad AxisGroup

Devuelve el grupo del eje, grupo de gráficos o serie especificados. Puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. Long de Lectura/Escritura para Series; Long de sólo lectura para Axis y para ChartGroup.

Comentarios

Para gráficos 3D, sólo es válido xlPrimary.


Ejemplo de la propiedad AxisGroup

Este ejemplo elimina el eje de valores del Gráfico1 si está en el grupo secundario.

With Charts("Gráfico1").Axes(xlValue)

If .AxisGroup = xlSecondary Then .Delete

End With


Propiedad Bar3DGroup

Devuelve un objeto ChartGroup que representa al grupo de gráficos de barras en un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Bar3DGroup

En este ejemplo se establece el espacio entre las agrupaciones de barras en el grupo de gráficos de barras en 3D al 50 por ciento del ancho de la barra.

Charts(1).BarGroup3DGroup.GapWidth = 50


Método BarGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de barras (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de barras (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.BarGroups(Index)

Sintaxis 2

expresión.BarGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método BarGroups

En este ejemplo se establece el espacio entre las agrupaciones de barras en el grupo de gráficos de barras en 2D al 50 por ciento del ancho de la barra.

Charts(1).BarGroups(1).GapWidth = 50


Propiedad ChartArea

Devuelve un objeto ChartArea que representa al área de gráfico completa del gráfico. Es de sólo lectura.


Ejemplo de la propiedad ChartArea

Este ejemplo establece el color interior del área del Gráfico1 como rojo y el color del borde como azul.

With Charts("Gráfico1").ChartArea

.Interior.ColorIndex = 3

.Border.ColorIndex = 5

End With


Método Clear

Objeto ChartArea, Legend o Range: Quita todo el objeto.

Cuadro de lista o cuadro combinado ActiveX: quita todas las entradas de la lista.

Sintaxis

expresión.Clear

expresión   Requerida. Una expresión que devuelve un objeto en la lista Se aplica a.


Ejemplo del método Clear

Este ejemplo borra las fórmulas y el formato de las celdas A1:G37 de la Hoja1.

Worksheets("Hoja1").Range("A1:G37").Clear

Este ejemplo borra el área de gráfico (datos del gráfico y formato) del Gráfico1.

Charts("Gráfico1").ChartArea.Clear


Método ClearContents

Borra las fórmulas del gráfico. Borra los datos de un gráfico, pero deja intacto el formato.

Sintaxis

expresión.ClearContents

expresión   Requerida. Una expresión que devuelve un objeto Chart o Range.


Ejemplo del método ClearContents

Este ejemplo borra las fórmulas de las celdas A1:G37 de la Hoja1 pero deja intacto el formato.

Worksheets("Hoja1").Range("A1:G37").ClearContents

Este ejemplo borra los datos del Gráfico1, pero deja intacto el formato.

Charts("Gráfico1").ChartArea.ClearContents


Propiedad Column3DGroup

Devuelve un objeto ChartGroup que representa al grupo de gráficos de columnas en un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Column3DGroup

En este ejemplo se establece el espacio entre las agrupaciones de bcolumnas en el grupo de gráficos de columnas en 3D al 50 por ciento del ancho de la columna.

Charts(1).Column3DGroup.GapWidth = 50


Método ColumnGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de columnas (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de columnas (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.ColumnGroups(Index)

Sintaxis 2

expresión.ColumnGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método ColumnGroups

En este ejemplo se establece el espacio entre las agrupaciones de bcolumnas en el grupo de gráficos de columnas en 2D al 50 por ciento del ancho de la columna.

Charts(1).ColumnGroups(1).GapWidth = 50


Propiedad Corners

Devuelve un objeto Corners que representa a las esquinas de un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Corners

Este ejemplo selecciona las esquinas del Gráfico1. El ejemplo debe ejecutarse en un gráfico 3D (el método Select no funciona en los demás tipos de gráficos).

With Charts("Gráfico1")

.Activate

.Corners.Select

End With


Método CreatePublisher

Crea una publicación basada en un objeto Chart o Range. Sólo disponible en Macintosh con System 7 o posterior.

Sintaxis

expresión.CreatePublisher(Edition, Appearance, Size, ContainsPICT, ContainsBIFF, ContainsRTF, ContainsVALU)

expresión   Requerida. Una expresión que devuelve un objeto Chart o Range.

Edition   Variant opcional. El nombre de archivo de la edición que se creará. Si este argumento se omite, se usará "<Nombre Documento> Edición #n".

Appearance   Variant opcional. Una de las constantes xlPrinter o xlScreen.

Size   Variant opcional (sólo se usa con objetos Chart). Una de las constantes xlPrinter o xlScreen.

ContainsPICT   Variant opcional. True para que se incluya el formato PICT en la publicación. El valor predeterminado es True.

ContainsBIFF   Variant opcional. True para que se incluya el formato BIFF en la publicación. El valor predeterminado de Range es True; el de Chart es False.

ContainsRTF   Variant opcional. True para que se incluya el formato RTF en la publicación. El valor predeterminado de Range es True; el de Chart es False.

ContainsVALU   Variant opcional. True para que se incluya el formato VALU en la publicación. El valor predeterminado de Range es True; el de Chart es False.


 Ejemplo del método CreatePublisher

Este ejemplo crea una publicación basada en las celdas A1:A20 de la Hoja1.

Worksheets("Hoja1").Range("D1").CreatePublisher "datos de bolsa"


Propiedad Crosses

Devuelve o establece el punto del eje especificado donde se cruza con el otro eje. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlAxisCrosses:

Constante	Significado
xlAxisCrossesAutomatic	Microsoft Excel establece el punto de cruce al eje.
xlMinimum	El eje se cruza en el mínimo.
xlMaximum	El eje se cruza en el máximo.
xlAxisCrossesCustom	La propiedad CrossesAt especifica el punto de intersección.
Comentarios

Esta propiedad no está disponible para gráficos 3D o gráficos radiales.

Esta propiedad puede emplearse para los ejes de categorías y para los de valores. En el eje de categorías, xlMinimum hace que el eje de valores se cruce en la primera categoría y xlMaximum hace que el eje de valores se cruce en la última categoría.

Tenga en cuenta que xlMinimum y xlMaximum pueden tener diferentes significados, dependiendo del eje al que se refieran.


Ejemplo de la propiedad Crosses

Este ejemplo establece el eje de valores del Gráfico1 para que cruce al eje de categorías en el valor máximo de X.

Charts("Gráfico1").Axes(xlCategory).Crosses = xlMaximum


Propiedad CrossesAt

Devuelve o establece el punto del eje de valores donde se cruza el eje de categorías. Se aplica sólo al eje de valores. Double de Lectura/Escritura.

Comentarios

Si se establece esta propiedad, la propiedad Crosses cambiará a xlAxisCrossesCustom.

Esta propiedad no está disponible para gráficos 3D o gráficos radiales.


Ejemplo de la propiedad CrossesAt

Este ejemplo establece el eje de categorías del Gráfico1 para que cruce al eje de valores en el valor 3.

With Charts("Gráfico1").Axes(xlValue)

.Crosses = xlCustom

.CrossesAt = 3

End With


Propiedad DepthPercent

Devuelve o establece la profundidad de un gráfico 3D como un porcentaje del ancho del gráfico (entre 20 y 2000 por ciento). Long de Lectura/Escritura.


Ejemplo de la propiedad DepthPercent

Este ejemplo establece la profundidad del Gráfico1 como el 50% de su ancho. El ejemplo debe ejecutarse en un gráfico 3D (la propiedad DepthPercent no funciona en gráficos 2D).

Charts("Gráfico1").DepthPercent = 50


Método DoughnutGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de anillos (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de anillos (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.DoughnutGroups(Index)

Sintaxis 2

expresión.DoughnutGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método DoughnutGroups

Este ejemplo establece el ángulo inicial del grupo uno de gráficos de anillos en el Gráfico1.

Charts("Gráfico1").DoughnutGroups(1).FirstSliceAngle = 45


Propiedad Elevation

Devuelve o establece la elevación de la vista del gráfico 3D, en grados. Long de Lectura/Escritura.

Comentarios

La elevación del gráfico es el alto con el que se ve el gráfico, en grados. Para la mayoría de los tipos de gráficos, el valor predeterminado es 15. El valor de esta propiedad debe estar comprendido entre -90 y 90, excepto para los gráficos de barras 3D, en los que el valor debe estar entre 0 y 44.


Ejemplo de la propiedad Elevation

Este ejemplo establece en 34 grados la elevación del Gráfico1. El ejemplo debe ejecutarse en un gráfico 3D (la propiedad Elevation no funciona en gráficos 2D).

Charts("Gráfico1").Elevation = 34


Propiedad Floor

Devuelve un objeto Floor que representa al plano inferior de un gráfico 3D. Es de sólo lectura.

Para obtener más información acerca del uso de la función de hoja de cálculo Floor en Visual Basic, vea Usar funciones de hoja de cálculo en Visual Basic.


Ejemplo de la propiedad Floor

Este ejemplo establece en azul el color del plano inferior del Gráfico1. El ejemplo debe ejecutarse en un gráfico 3D (la propiedad Floor no funciona en gráficos 2D).

Charts("Gráfico1").Floor.Interior.ColorIndex = 5


Propiedad Font

Devuelve un objeto Font que representa la fuente del objeto especificado. Es de sólo lectura.


Ejemplo de la propiedad Font

Este ejemplo establece como cursiva negrita de 14 puntos la fuente de la celda B5 de la Hoja1.

With Worksheets("Hoja1").Range("B5").Font

.Size = 14

.Bold = True

.Italic = True

End With


Propiedad GapDepth

Devuelve o establece la distancia entre la serie de datos de un gráfico 3D, en forma de porcentaje del ancho del marcador. El valor de la propiedad debe estar comprendido entre 0 y 500. Long de Lectura/Escritura.


Ejemplo de la propiedad GapDepth

Este ejemplo establece la distancia entre la serie de datos del Gráfico1 en el 200% del ancho del marcador. El ejemplo debe ejecutarse en un gráfico 3D (la propiedad GapDepth no funciona en gráficos 2D).

Charts("Gráfico1").GapDepth = 200


Propiedad GapWidth

Gráficos de barras y columnas: Devuelve o establece el espacio entre las agrupaciones de barras o columnas, en forma de un porcentaje del ancho de las barras o las columnas. El valor de la propiedad debe estar comprendido entre 0 y 500. Long de Lectura/Escritura.

Gráficos de sectores de gráficos circulares y barras de gráficos circulares: Devuelve o establece el espacio entre las secciones primaria y secundaria del gráfico. El valor de la propiedad debe estar comprendido entre 5 y 200. Long de Lectura/Escritura.


Ejemplo de la propiedad GapWidth

Este ejemplo establece el espacio entre grupos de columnas del Gráfico1 en el 50% del ancho de columna.

Charts("Gráfico1").ChartGroups(1).GapWidth = 50


Propiedad HasMajorGridlines

True si el eje tiene líneas de división principales. Sólo los ejes del grupo de ejes primarios pueden tener líneas de división. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasMajorGridlines

Este ejemplo establece el color de las líneas de división principales del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

If .HasMajorGridlines Then

.MajorGridlines.Border.ColorIndex = 3	'establece color rojo

End If

End With


Propiedad HasMinorGridlines

True si el eje tiene líneas de división secundarias. Sólo los ejes del grupo de ejes primarios pueden tener líneas de división. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasMinorGridlines

Este ejemplo establece el color de las líneas de división secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

If .HasMinorGridlines Then

.MinorGridlines.Border.ColorIndex = 4	'establece color verde

End If

End With


Método Insert

Sintaxis 1 (objeto Range): Inserta una celda o un rango de celdas en la hoja de cálculo o en la hoja de macros y desplaza las otras celdas para crear espacio.

Sintaxis 2 (objeto Characters): Inserta una cadena que precede a los caracteres seleccionados.

Sintaxis 1

expresión.Insert(Shift)

Sintaxis 2

expresión.Insert(String)

expresión   Requerida. Una expresión que devuelve un objeto Characters o Range.

Shift   Variant opcional. Especifica hacia qué lado se desplazarán las celdas. Puede ser una de las siguientes constantes XlInsertShiftDirection: xlShiftToRight o xlShiftDown. Si este argumento se omite, Microsoft Excel tomará una decisión basándose en la forma del rango.

String   String requerida. La cadena que se insertará.


Ejemplo del método Insert

Este ejemplo inserta una nueva fila antes de la fila cuatro de la Hoja1.

Worksheets("Hoja1").Rows(4).Insert

Este ejemplo inserta nuevas celdas en el rango A1:C5 de la Hoja1 y las desplaza hacia abajo.

Worksheets("Hoja1").Range("A1:C5").Insert shift:=xlShiftDown

Este ejemplo inserta una nueva fila en la celda activa. El ejemplo debe ejecutarse desde una hoja de cálculo.

ActiveCell.EntireRow.Insert


Propiedad MajorGridlines

Devuelve un objeto Gridlines que representa las líneas de división principales del eje especificado. Sólo los ejes del grupo de ejes primarios pueden tener líneas de división. Es de sólo lectura.


Ejemplo de la propiedad MajorGridlines

Este ejemplo establece el color de las líneas de división principales del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

If .HasMajorGridlines Then

.MajorGridlines.Border.ColorIndex = 5	'establece color azul

End If

End With


Propiedad MajorTickMark

Devuelve o establece el tipo de marcas de graduación principales del eje especificado. Puede ser una de las siguientes constantes XlTickMark: xlTickMarkNone, xlTickMarkInside, xlTickMarkOutside o xlTickMarkCross. Long de Lectura/Escritura.


Ejemplo de la propiedad MajorTickMark

Este ejemplo establece que las marcas de graduación principales del eje de valores del Gráfico1 estén fuera del eje.

Charts("Gráfico1").Axes(xlValue).MajorTickMark = xlTickMarkOutside


Propiedad MajorUnit

Devuelve o establece las unidades principales para el eje. Double de Lectura/Escritura.

Comentarios

Si se establece esta propiedad, la propiedad MajorUnitIsAuto  será False.

Use la propiedad TickMarkSpacing para establecer la separación entre las marcas de graduación del eje de categorías.


Ejemplo de la propiedad MajorUnit

Este ejemplo establece las unidades principales y secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MajorUnit = 100

.MinorUnit = 20

End With


Propiedad MajorUnitIsAuto

True si Microsoft Excel calcula las unidades principales del eje. Boolean de Lectura/Escritura.

Comentarios

Si establece la propiedad MajorUnit, esta propiedad tomará el valor False.


Ejemplo de la propiedad MajorUnitIsAuto

Este ejemplo establece automáticamente las unidades principales y secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MajorUnitIsAuto = True

.MinorUnitIsAuto = True

End With


Propiedad MaximumScale

Devuelve o establece el valor máximo del eje. Double de Lectura/Escritura.

Comentarios

Si establece esta propiedad, la propiedad MaximumScaleIsAuto  tomará el valor False .


Ejemplo de la propiedad MaximumScale

Este ejemplo establece los valores máximo y mínimo del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MinimumScale = 10

.MaximumScale = 120

End With


Propiedad MaximumScaleIsAuto

True si Microsoft Excel calcula el valor máximo para el eje. Boolean de Lectura/Escritura.

Comentarios

Si establece la propiedad MaximumScale, esta propiedad tomará el valor False.


Ejemplo de la propiedad MaximumScaleIsAuto

Este ejemplo calcula automáticamente la escala mínima y la escala máxima del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MinimumScaleIsAuto = True

.MaximumScaleIsAuto = True

End With


Propiedad MinimumScale

Devuelve o establece el valor mínimo del eje. Double de Lectura/Escritura.

Comentarios

Si se establece esta propiedad, la propiedad MinimumScaleIsAuto será False.


Ejemplo de la propiedad MinimumScale

Este ejemplo establece los valores máximo y mínimo del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MinimumScale = 10

.MaximumScale = 120

End With


Propiedad MinimumScaleIsAuto

True si Microsoft Excel calcula el valor mínimo del eje. Boolean de Lectura/Escritura.

Comentarios

Si establece la propiedad MinimumScale, esta propiedad tomará el valor False.


Ejemplo de la propiedad MinimumScaleIsAuto

Este ejemplo calcula automáticamente la escala mínima y la escala máxima del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MinimumScaleIsAuto = True

.MaximumScaleIsAuto = True

End With


Propiedad MinorGridlines

Devuelve un objeto Gridlines que representa las líneas de división secundarias del eje especificado. Sólo los ejes del grupo de ejes primarios pueden tener líneas de división. Es de sólo lectura.


Ejemplo de la propiedad MinorGridlines

Este ejemplo establece el color de las líneas de división secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

If .HasMinorGridlines Then

.MinorGridlines.Border.ColorIndex = 5	'establece color azul

End If

End With


Propiedad MinorTickMark

Devuelve o establece el tipo de marcas de graduación principales del eje especificado. Puede ser una de las siguientes constantes XlTickMark: xlTickMarkNone, xlTickMarkInside, xlTickMarkOutside o xlTickMarkCross. Long de Lectura/Escritura.


Ejemplo de la propiedad MinorTickMark

Este ejemplo establece que las marcas de graduación secundarias del eje de valores del Gráfico1 estén dentro del eje.

Charts("Gráfico1").Axes(xlValue).MinorTickMark = xlTickMarkInside


Propiedad MinorUnit

Devuelve o establece las unidades secundarias del eje. Double de Lectura/Escritura.

Comentarios

Si se establece esta propiedad, la propiedad MinorUnitIsAuto  tomará el valor False.

Use la propiedad TickMarkSpacing para establecer la separación entre las marcas de graduación del eje de categorías.


Ejemplo de la propiedad MinorUnit

Este ejemplo establece las unidades principales y secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MajorUnit = 100

.MinorUnit = 20

End With


Propiedad MinorUnitIsAuto

True si Microsoft Excel calcula las unidades secundarias del eje. Boolean de Lectura/Escritura.

Comentarios

Si se establece la propiedad MinorUnit, esta propiedad tomará el valor False.


Ejemplo de la propiedad MinorUnitIsAuto

Este ejemplo calcula automáticamente las unidades principales y secundarias del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

.MajorUnitIsAuto = True

.MinorUnitIsAuto = True

End With


Propiedad ReversePlotOrder

True si Microsoft Excel traza los puntos de datos desde el último al primero. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad no está disponible para gráficos radiales.


Ejemplo de la propiedad ReversePlotOrder

Este ejemplo traza los puntos de datos de primero a último en el eje de valores del Gráfico1.

Charts("Gráfico1").Axes(xlValue).ReversePlotOrder = True


Propiedad ScaleType

Devuelve o establece el tipo de escala del eje de valores. Puede ser una de las siguientes constantes XlScaleType: xlScaleLinear o xlScaleLogarithmic. Se aplica sólo al eje de valores. Long de Lectura/Escritura.

Comentarios

La escala logarítmica usa logaritmos en base diez.


Ejemplo de la propiedad ScaleType

Este ejemplo establece el eje de valores del Gráfico1 para que use una escala logarítmica.

Charts("Gráfico1").Axes(xlValue).ScaleType = xlScaleLogarithmic


Propiedad TickLabelPosition

Describe la posición de los rótulos de marcas de graduación en el eje especificado. Puede ser una de las siguientes constantes XlTickLabelPosition: xlTickLabelPositionNone, xlTickLabelPositionLow, xlTickLabelPositionHigh o xlTickLabelPositionNextToAxis. Long de Lectura/Escritura.


Ejemplo de la propiedad TickLabelPosition

Este ejemplo establece los rótulos de las marcas de graduación del eje de categorías del Gráfico1 en la posición alta (encima del gráfico).

Charts("Gráfico1").Axes(xlCategory) _

.TickLabelPosition = xlTickLabelPositionHigh


Propiedad TickLabels

Devuelve un objeto TickLabels que representa los rótulos de las marcas de graduación del eje especificado. Es de sólo lectura.


Ejemplo de la propiedad TickLabels

Este ejemplo establece el color de la fuente de los rótulos de marcas de graduación para el eje de valores del Gráfico1.

Charts("Gráfico1").Axes(xlValue).TickLabels.Font.ColorIndex = 3


Propiedad TickLabelSpacing

Devuelve o establece el numero de categorías o series entre rótulos de marcas de graduación. Se aplica sólo a los ejes de categorías y series. Long de Lectura/Escritura.

Comentarios

Microsoft Excel siempre calcula la separación de los rótulos de marcas de graduación en el eje de valores.


Ejemplo de la propiedad TickLabelSpacing

Este ejemplo establece el número de categorías entre rótulos de marcas de graduación en el eje de categorías del Gráfico1.

Charts("Gráfico1").Axes(xlCategory).TickLabelSpacing = 10


Propiedad TickMarkSpacing

Devuelve o establece el numero de categorías o series entre las marcas de graduación. Se aplica sólo a los ejes de categorías y series. Long de Lectura/Escritura.

Comentarios

Use las propiedades MajorUnit y MinorUnit para establecer la separación entre marcas de graduación en el eje de valores.


Ejemplo de la propiedad TickMarkSpacing

Este ejemplo establece el número de categorías entre marcas de graduación del eje de categorías del Gráfico1.

Charts("Gráfico1").Axes(xlCategory).TickMarkSpacing = 10


Propiedad AutoText

True si el objeto genera automáticamente un texto apropiado basado en el contexto. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AutoText

Este ejemplo establece los rótulos de datos de la serie uno del Gráfico1 para que generen automáticamente el texto apropiado.

Charts("Gráfico1").SeriesCollection(1).DataLabels.AutoText = True


Propiedad Border

Devuelve un objeto Border que representa al borde del objeto. Es de sólo lectura.


Ejemplo de la propiedad Border

Este ejemplo establece en rojo el color del borde del área del Gráfico1.

Charts("Gráfico1").ChartArea.Border.ColorIndex = 3


Propiedad BottomRightCell

Devuelve un objeto Range que representa la celda que se encuentra debajo de la esquina inferior derecha del objeto. Es de sólo lectura.


Ejemplo de la propiedad BottomRightCell

Este ejemplo muestra la dirección de la celda que está debajo de la esquina inferior derecha del gráfico incrustado uno de la Hoja1.

MsgBox "La esquina inferior derecha está sobre la celda " & _

Worksheets("Hoja1").ChartObjects(1).BottomRightCell.Address


Método BringToFront

Sitúa el objeto en el primer plano del orden z.

Sintaxis

expresión.BringToFront

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método BringToFront

Este ejemplo sitúa el gráfico incrustado uno en la Hoja1 en el primer plano del orden z.

Worksheets("Hoja1").ChartObjects(1).BringToFront


Propiedad Chart

Devuelve un objeto Chart que representa el gráfico contenido en el objeto. Es de sólo lectura.


Ejemplo de la propiedad Chart

Este ejemplo agrega un título al primer gráfico incrustado en la Hoja1.

With Worksheets("Hoja1").ChartObjects(1).Chart

.HasTitle = True

.ChartTitle.Text = "Precipitaciones totales por mes 1995"

End With


Método ClearFormats

Borra el formato del objeto.

Sintaxis

expresión.ClearFormats

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método ClearFormats

Este ejemplo borra todo el formato de las celdas A1:G37 de la Hoja1.

Worksheets("Hoja1").Range("A1:G37").ClearContents

Este ejemplo borra el formato del gráfico incrustado uno en la Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart.ChartArea.ClearFormats


Método Close

Cierra el objeto. El conjunto Workbooks usa la sintaxis 1. Los objetos Window y Workbook usan la sintaxis 2.

Sintaxis 1

expresión.Close

Sintaxis 2

expresión.Close(SaveChanges, FileName, RouteWorkbook)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

SaveChanges   Variant opcional. Si el libro no contiene cambios, se ignorará este argumento. Si hay cambios en el libro y éste aparece en otras ventanas abiertas, este argumento se ignorará. Si el libro contiene cambios pero no aparece en otras ventanas abiertas, este argumento especifica si los cambios deben guardarse, como se muestra en la siguiente tabla.

Valor	Acción
True	Guarda los cambios del libro. Si aún no tiene asociado un nombre de archivo, se usará FileName. Si FileName se omite, se pedirá al usuario que especifique un nombre de archivo.
False	No guarda los cambios del archivo.
Omitido	Muestra un cuadro de diálogo en el que se pregunta al usuario si desea guardar los cambios.
FileName   Variant opcional. Guarda los cambios con el nombre de archivo especificado.

RouteWorkbook   Variant opcional. Si no es necesario distribuir el libro al siguiente destinatario (porque no tiene lista de distribución o porque ya se ha distribuido), se ignorará este argumento. De lo contrario, Microsoft Excel distribuirá el libro como se indica en la siguiente tabla.

Valor	Significado
True	Envía el libro al siguiente destinatario.
False	No envía el libro.
Omitido	Muestra un cuadro de diálogo en el que se pregunta al usuario si desea enviar el libro.
Comentarios

Al cerrar un libro desde Visual Basic no se ejecuta ninguna de las macros Auto_Close del libro. Use el método RunAutoMacros para ejecutar las macros de cierre automático.


Ejemplo del método Close

Este ejemplo cierra Libro1.xls y descarta los cambios efectuados en él.

Workbooks("LIBRO1.XLS").Close SaveChanges:=False

Este ejemplo cierra todos los libros abiertos. Si hay cambios en algún libro abierto, Microsoft Excel mostrará los mensajes y cuadros de diálogo oportunos para preguntar si desea guardar los cambios.

Workbooks.Close


Propiedad Color

Devuelve o establece el color primario del objeto, tal como se muestra en la siguiente tabla. Use la función RGB para crear un valor de color. Long de Lectura/Escritura.

Objeto	Color
Border	El color del borde.
Borders	El color de los cuatro bordes de un rango. Si no todos tienen el mismo color, Color devolverá 0 (cero).
Font	El color de la fuente.
Interior	El color del sombreado de la celda o el color de relleno del objeto de dibujo.


Ejemplo de la propiedad Color

Este ejemplo establece el color de los rótulos de marcas de graduación del eje de valores del Gráfico1.

Charts("Gráfico1").Axes(xlValue).TickLabels.Font.Color = RGB(0, 255, 0)


Propiedad Count

Devuelve el número de objetos del conjunto. Long de sólo lectura.

Para obtener más información acerca del uso de la función de hoja de cálculo Count en Visual Basic, vea Usar funciones de hoja de cálculo en Visual Basic.


Ejemplo de la propiedad Count

Este ejemplo muestra el número de columnas de la selección de la Hoja1. El código también comprueba si existe una selección de varias áreas; en ese caso, ejecutará un bucle en las áreas de la selección.

Worksheets("Hoja1").Activate

númÁreas = Selection.Areas.Count

If númÁreas <= 1 Then

MsgBox "La selección contiene " & _

Selection.Columns.Count & " columnas."

Else

For i = 1 To númÁreas

MsgBox "Área " & i & " de la selección contiene " & _

Selection.Areas(i).Columns.Count & " columnas."

Next i

End If

Este ejemplo convierte en superíndice el último carácter de la celda A1.

n = Worksheets("Hoja1").Range("A1").Characters.Count

Worksheets("Hoja1").Range("A1").Characters(n, 1) _

.Font.Superscript = True


Propiedad CustomListCount

Devuelve el número de listas personalizadas que se han definido (incluye las listas integradas). Long de sólo lectura.


Ejemplo de la propiedad CustomListCount

Este ejemplo muestra el número de listas personalizadas que están definidas actualmente.

MsgBox "Actualmente hay " & Application.CustomListCount & _

" listas personalizadas definidas."


Propiedad DefaultFilePath

Devuelve o establece la ruta de acceso predeterminada utilizada por Microsoft Excel para abrir archivos. String de Lectura/Escritura.


Ejemplo de la propiedad DefaultFilePath

Este ejemplo muestra la ruta de acceso de archivos predeterminada actual.

MsgBox "La ruta de acceso de archivos predeterminada actual " & _

Application.DefaultFilePath


Método Delete

Elimina el objeto. La sintaxis 2 sólo se aplica a los objetos Range.

Sintaxis 1

expresión.Delete

Sintaxis 2

expresión.Delete(Shift)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Shift   Variant opcional. Se usa únicamente con objetos Range. Especifica cómo se desplazan las celdas para reemplazar celdas eliminadas. Puede ser una de las siguientes constantes XlDeleteShiftDirection: xlShiftToLeft o xlShiftUp. Si este argumento se omite, Microsoft Excel tomará una decisión basándose en la forma del rango.

Comentarios

Si elimina un objeto Point o LegendKey eliminará toda la serie.

Es posible eliminar propiedades personalizadas de los documentos, pero no las propiedades integradas.


Ejemplo del método Delete

En este ejemplo se eliminan las celdas A1:D10 de la Hoja1 y se desplazan las celdas restantes hacia la izquierda.

Worksheets("Hoja1").Range("A1:D10").Delete Shift:=xlShiftToLeft

Este ejemplo elimina todas las hojas de cálculo del libro activo sin mostrar el cuadro de diálogo de confirmación.

Application.DisplayAlerts = False

For Each w In Worksheets

w.Delete

Next w

Application.DisplayAlerts = True

Este ejemplo ordena los datos de la primera columna de la Hoja1 y, a continuación, elimina las filas que contienen datos duplicados.

Worksheets("Hoja1").Range("A1").Sort _

        key1:=Worksheets("Hoja1").Range("A1")

Set celdaActual = Worksheets("Hoja1").Range("A1")

Do While Not IsEmpty(celdaActual)

    Set celdaSiguiente = celdaActual.Offset(1, 0)

    If celdaSiguiente.Value = celdaActual.Value Then

        celdaActual.EntireRow.Delete

    End If

    Set celdaActual = celdaSiguiente

Loop


Propiedad DisplayBlanksAs

Devuelve o establece el modo en que se trazan las celdas vacías de un gráfico. Puede ser una de las siguientes constantes XlDisplayBlanksAs: xlNotPlotted, xlInterpolated o xlZero. Long de Lectura/Escritura.


Ejemplo de la propiedad DisplayBlanksAs

Este ejemplo hace que Microsoft Excel no trace las celdas vacías del Gráfico1.

Charts("Gráfico1").DisplayBlanksAs = xlNotPlotted


Propiedad DisplayEquation

True si la ecuación de la línea de tendencia se muestra en el gráfico (en el mismo rótulo de datos que el valor de R cuadrado). Si se establece esta propiedad como True se activarán automáticamente los rótulos de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayEquation

Este ejemplo muestra el valor R cuadrado y la ecuación de la línea de tendencia uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D que tenga una línea de tendencia para la primera serie.

With Charts("Gráfico1").SeriesCollection(1).Trendlines(1)

.DisplayRSquared = True

.DisplayEquation = True

End With


Propiedad DisplayExcel4Menus

True si Microsoft Excel muestra las barras de menús de la versión 4.0. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayExcel4Menus

Este ejemplo alterna la presentación de los menús de Microsoft Excel versión 4.0.

Application.DisplayExcel4Menus = True


Propiedad DisplayFullScreen

True si Microsoft Excel está en el modo de pantalla completa. Boolean de Lectura/Escritura.

Comentarios

El modo de pantalla completa maximiza la ventana de la aplicación, para que ocupe toda la pantalla y oculte la barra de título de la aplicación (en Microsoft Windows). Las barras de herramientas, la barra de estado y la barra de fórmulas mantienen configuraciones de presentación independientes en los modos de pantalla completa y normal.


Ejemplo de la propiedad DisplayFullScreen

Este ejemplo configura Microsoft Excel para que se muestre en el modo de pantalla completa.

Application.DisplayFullScreen = True


Propiedad DisplayRecentFiles

True si se muestra la lista de archivos de uso reciente en el menú Archivo. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayRecentFiles

Este ejemplo desactiva la lista de los archivos de uso reciente.

Application.DisplayRecentFiles = False


Propiedad DisplayRSquared

True si se muestra el valor R cuadrado de la línea de tendencia en el gráfico (en el mismo rótulo de datos que la ecuación). Si se establece esta propiedad como True se activarán automáticamente los rótulos de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayRSquared

Este ejemplo muestra el valor R cuadrado y la ecuación de la línea de tendencia uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D que tenga una línea de tendencia para la primera serie.

With Charts("Gráfico1").SeriesCollection(1).Trendlines(1)

.DisplayRSquared = True

.DisplayEquation = True

End With


Método Duplicate

Duplica el objeto y devuelve una referencia a la nueva copia.

Sintaxis

expresión.Duplicate

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método Duplicate

Este ejemplo duplica el gráfico incrustado uno de la Hoja1 y, a continuación, selecciona la copia.

Set dChart = Worksheets("Hoja1").ChartObjects(1).Duplicate

dChart.Select


Método FindFile

Muestra el cuadro de diálogo Abrir.

Sintaxis

expresión.FindFile

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Este método muestra el cuadro de diálogo Abrir y permite al usuario abrir un archivo. Si se abre un archivo nuevo correctamente, este método devolverá True. Si el usuario cancela el cuadro de diálogo, el método devolverá False.


Ejemplo del método FindFile

Este ejemplo muestra el cuadro de diálogo Abrir.

Application.FindFile


Propiedad Forward

Devuelve o establece el número de períodos (o de unidades en un gráfico de dispersión) en que la línea de tendencia se extiende hacia adelante. Long de Lectura/Escritura.


Ejemplo de la propiedad Forward

Este ejemplo establece el número de unidades que la línea de tendencia del Gráfico1 se extiende hacia delante y hacia atrás. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

With Charts("Gráfico1").SeriesCollection(1).Trendlines(1)

.Forward = 5

.Backward = .5

End With


Propiedad Function

Devuelve o establece la función usada para hacer un resumen del campo de tabla dinámica (sólo campos de datos). Puede ser una de las siguientes constantes XlConsolidationFunction: xlAverage, xlCount, xlCountNums, xlMax, xlMin, xlProduct, xlStDev, xlStDevP, xlSum, xlVar o xlVarP. Long de Lectura/Escritura.


Ejemplo de la propiedad Function

Este ejemplo establece la Suma del campo 1994 de la TablaDinámica1 para que use la función SUMA.

ActiveSheet.PivotTables("TablaDinámica1"). _

.PivotFields("Suma de 1994").Function = xlSum


Propiedad HasLegend

True si el gráfico tiene una leyenda. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasLegend

Este ejemplo activa la leyenda del Gráfico1 y, a continuación, establece en azul el color de fuente de la leyenda.

With Charts("Gráfico1")

.HasLegend = True

.Legend.Font.ColorIndex = 5

End With


Propiedad HasTitle

True si el eje o el gráfico tiene un título visible. Boolean de Lectura/Escritura.

Comentarios

El título de un eje está representado por un objeto AxisTitle.

Un título de gráfico está representado por un objeto ChartTitle.


Ejemplo de la propiedad HasTitle

Este ejemplo agrega un rótulo al eje de categorías del Gráfico1.

With Charts("Gráfico1").Axes(xlCategory)

.HasTitle = True

.AxisTitle.Text = "Ventas julio"

End With


Propiedad HeightPercent

Devuelve o establece el alto de un gráfico 3D como un porcentaje de su ancho (entre 5 y 500%). Long de Lectura/Escritura.


Ejemplo de la propiedad HeightPercent

Este ejemplo establece el alto del Gráfico1 en el 80% de su ancho. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").HeightPercent = 80


Propiedad Intercept

Devuelve o establece el punto en que la línea de tendencia corta al eje de valores. Double de Lectura/Escritura.

Para obtener más información acerca del uso de la función de hoja de cálculo Intercept en Visual Basic, vea Usar funciones de hoja de cálculo en Visual Basic.

Comentarios

Si se establece esta propiedad, la propiedad InterceptIsAuto será False.


Ejemplo de la propiedad Intercept

Este ejemplo configura la línea de tendencia uno del Gráfico1 para que corte al eje de ordenadas en 5. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

Charts("Gráfico1").SeriesCollection(1).Trendlines(1).Intercept = 5


Propiedad InterceptIsAuto

True si el punto en que la línea de tendencia corta al eje de valores lo determina automáticamente la regresión. Boolean de Lectura/Escritura.

Comentarios

Si establece la propiedad Intercept, esta propiedad tomará el valor False.


Ejemplo de la propiedad InterceptIsAuto

Este ejemplo configura Microsoft Excel para que determine automáticamente el punto de intersección de la línea de tendencia en el Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

Charts("Gráfico1").SeriesCollection(1).Trendlines(1) _

.InterceptIsAuto = True


Propiedad Legend

Devuelve un objeto Legend que representa la leyenda del gráfico. Es de sólo lectura.


Ejemplo de la propiedad Legend

Este ejemplo activa la leyenda del Gráfico1 y, a continuación, establece en azul el color de fuente de la leyenda.

Charts("Gráfico1").HasLegend = True

Charts("Gráfico1").Legend.Font.ColorIndex = 5


Propiedad Line3DGroup

Devuelve un objeto ChartGroup que representa el grupo de gráficos de líneas en un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Line3DGroup

Este ejemplo establece que el grupo de líneas 3D del Gráfico1 utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").Line3DGroup.VaryByCategories = True


Método LineGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de líneas (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de líneas (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.LineGroups(Index)

Sintaxis 2

expresión.LineGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método LineGroups

Este ejemplo establece que el grupo de líneas uno del Gráfico1 utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 2D.

Charts("Gráfico1").LineGroups(1).VaryByCategories = True


Propiedad MacroType

Devuelve o establece el objeto al que hace referencia el nombre. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlMacroType:

Constante	Significado
xlCommand	El nombre hace referencia a una macro definida por el usuario.
xlFunction	El nombre hace referencia a una función definida por el usuario.
xlNotXLM	El nombre no hace referencia a una función ni a una macro.


Ejemplo de la propiedad MacroType

En este ejemplo se supone que ha creado un comando o una función personalizada en una hoja de macros de Microsoft Excel versión 4.0. El ejemplo muestra la categoría de la función, en el lenguaje de la macro. Da por sentado que el nombre de la función o el comando personalizado es el único nombre del libro.

With ActiveWorkbook.Names(1)

If .MacroType <> xlNotXLM Then

MsgBox "La categoría de este nombre es " & .Category

Else

MsgBox "Este nombre no hace referencia a" & _

" una función o un comando personalizado."

End If

End With


Propiedad NameIsAuto

True si Microsoft Excel determina automáticamente el nombre de la línea de tendencia. Boolean de Lectura/Escritura.


Ejemplo de la propiedad NameIsAuto

Este ejemplo configura Microsoft Excel para que determine automáticamente el nombre de la línea de tendencia uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

Charts("Gráfico1").SeriesCollection(1).Trendlines(1).NameIsAuto = True


Propiedad NumberFormatLinked

True si el formato de número está vinculado a las celdas (de modo que el formato de número de los rótulos cambie cuando éste cambie en las celdas). Boolean de Lectura/Escritura.


Ejemplo de la propiedad NumberFormatLinked

Este ejemplo vincula, en el eje de valores del Gráfico1, el formato de número de los rótulos de marcas de graduación a sus celdas.

Charts("Gráfico1").Axes(xlValue).TickLabels.NumberFormatLinked = True


Propiedad PageSetup

Devuelve un objeto PageSetup que contiene todos los valores de configuración de página del objeto seleccionado. Es de sólo lectura.


Ejemplo de la propiedad PageSetup

Este ejemplo establece el texto del encabezado central del Gráfico1.

Charts("Gráfico1").PageSetup.CenterHeader = "Ventas de diciembre"


Propiedad Perspective

Devuelve o establece la perspectiva de la vista del gráfico 3D. Debe estar comprendido entre 0 y 100. Esta propiedad se ignora si la propiedad RightAngleAxes tiene el valor True. Long de Lectura/Escritura.


Ejemplo de la propiedad Perspective

Este ejemplo establece la perspectiva del Gráfico1 como 70. Debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").RightAngleAxes = False

Charts("Gráfico1").Perspective = 70


Propiedad Pie3DGroup

Devuelve un objeto ChartGroup que representa el grupo de gráficos circulares en un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad Pie3DGroup

Este ejemplo establece que el grupo circular 3D del Gráfico1 utilice un color diferente en cada marcador de datos.

Charts("Gráfico1").Pie3DGroup.VaryByCategories = True


Método PieGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos circulares (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos circulares (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.PieGroups(Index)

Sintaxis 2

expresión.PieGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método PieGroups

Este ejemplo establece que el grupo circular uno del Gráfico1 utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 2D.

Charts("Gráfico1").PieGroups(1).VaryByCategories = True


Propiedad Placement

Devuelve o establece la forma en que el objeto está unido a las celdas que están debajo de él. Puede ser una de las siguientes constantes XlPlacement: xlMoveAndSize, xlMove o xlFreeFloating. Sólo puede emplearse con objetos de una hoja de cálculo. Long de Lectura/Escritura.


Ejemplo de la propiedad Placement

Este ejemplo establece el gráfico incrustado uno de la Hoja1 como flotante libre (no se desplaza ni se ajusta su tamaño con las celdas subyacentes).

Worksheets("Hoja1").ChartObjects(1).Placement = xlFreeFloating


Propiedad PlotArea

Devuelve un objeto PlotArea que representa el área de trazado de un gráfico. Es de sólo lectura.


Ejemplo de la propiedad PlotArea

Este ejemplo establece en aguamarina el color del interior del área de trazado del Gráfico1.

Charts("Gráfico1").PlotArea.Border.ColorIndex = 8


Propiedad PrintObject

True si el objeto se imprimirá junto con el documento. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PrintObject

Este ejemplo establece que el gráfico incrustado uno de la Hoja1 se imprima junto la hoja de cálculo.

Worksheets("Hoja1").ChartObjects(1).PrintObject = True


Método RadarGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos radiales (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos radiales (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.RadarGroups(Index)

Sintaxis 2

expresión.RadarGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método RadarGroups

Este ejemplo establece que el grupo de radar1 del Gráfico1 utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 2D.

Charts("Gráfico1").RadarGroups(1).VaryByCategories = True


Propiedad RightAngleAxes

True si los ejes del gráfico están en ángulo recto, independientemente del giro o elevación del gráfico. Se aplica sólo a gráficos 3D de líneas, columnas y barras. Boolean de Lectura/Escritura.

Comentarios

Si esta propiedad es True, se omitirá la propiedad Perspective.


Ejemplo de la propiedad RightAngleAxes

Este ejemplo establece los ejes del Gráfico1 para que se corten en ángulo recto. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").RightAngleAxes = True


Propiedad RoundedCorners

True si el gráfico incrustado tiene esquinas redondeadas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad RoundedCorners

Este ejemplo agrega esquinas redondeadas al gráfico incrustado uno de la Hoja1.

Worksheets("Hoja1").ChartObjects(1).RoundedCorners = True


Método SendToBack

Envía el objeto al final del orden z.

Sintaxis

expresión.SendToBack

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método SendToBack

Este ejemplo envía el gráfico incrustado uno de la Hoja1 al último lugar del orden z.

Worksheets("Hoja1").ChartObjects(1).SendToBack


Método SeriesCollection

Devuelve un objeto que representa una sola serie (un objeto Series, sintaxis 1) o un conjunto de todas las series (un objeto SeriesCollection, sintaxis 2) en el gráfico o grupo de gráficos.

Sintaxis 1

expresión.SeriesCollection(Index)

Sintaxis 2

expresión.SeriesCollection

expresión   Requerida. Una expresión que devuelve un objeto Chart o ChartGroup.

Index   Variant opcional. El nombre o número de la serie.


Ejemplo del método SeriesCollection

Este ejemplo activa los rótulos de datos en la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1).HasDataLabels = True


Método SetDefaultChart

Especifica el nombre de la plantilla del gráfico que Microsoft Excel usará para crear nuevos gráficos.

Sintaxis

expresión.SetDefaultChart(FormatName)

expresión   Requerida. Una expresión que devuelve un objeto Application.

FormatName    Variant opcional. Especifica el nombre de un autoformato personalizado. Este nombre puede ser una cadena que asigna un nombre a un formato personalizado o bien la constante especial xlBuiltIn para especificar la plantilla de gráfico integrada.


Ejemplo del método SetDefaultChart

Este ejemplo establece como plantilla predeterminada de gráfico el autoformato personalizado denominado "Ventas mensuales".

Application.SetDefaultChart FormatName:="Ventas mensuales"


Propiedad ShowLegendKey

True si la clave de la leyenda del rótulo de datos está visible. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowLegendKey

Este ejemplo configura los rótulos de datos de la serie uno del Gráfico1 para que muestren valores y la clave de leyenda.

With Charts("Gráfico1").SeriesCollection(1).DataLabels

.ShowLegendKey = True

.Type = xlShowValue

End With


Propiedad Size

Devuelve o establece el tamaño de la fuente. Variant de Lectura/Escritura.


Ejemplo de la propiedad Size

Este ejemplo establece en 12 puntos el tamaño de fuente de las celdas A1:D10 de la Hoja1.

With Worksheets("Hoja1").Range("A1:D10")

.Value = "Prueba"

.Font.Size = 12

End With


Propiedad SurfaceGroup

Devuelve un objeto ChartGroup que representa el grupo de gráficos de superficie de un gráfico 3D. Es de sólo lectura.


Ejemplo de la propiedad SurfaceGroup

Este ejemplo establece que el grupo de superficie 3D del Gráfico1 utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").SurfaceGroup.VaryByCategories = True


Propiedad TopLeftCell

Devuelve un objeto Range que representa la celda que se encuentra debajo de la esquina superior izquierda del objeto. Es de sólo lectura.


Ejemplo de la propiedad TopLeftCell

Este ejemplo muestra la dirección de la celda que está debajo de la esquina superior izquierda del gráfico incrustado uno de la Hoja1.

MsgBox "La esquina superior izquierda está sobre la celda " & _

Worksheets("Hoja1").ChartObjects(1).TopLeftCell.Address


Propiedad Visible

True si el objeto está visible. En un gráfico o una hoja de cálculo, esta propiedad puede establecerse como xlVeryHidden. Oculta el objeto de tal manera que el único modo de volver a hacerlo visible es estableciendo esta propiedad como True (el usuario no puede hacerlo visible). Boolean o Long de Lectura/Escritura.

Comentarios

La propiedad Visible de un elemento dinámico es True si el elemento actualmente está visible en la tabla.

Si se establece la propiedad Visible de un nombre como False, el nombre no aparecerá en el cuadro de diálogo Definir nombre.


Ejemplo de la propiedad Visible

Este ejemplo oculta la Hoja1.

Worksheets("Hoja1").Visible = False

Este ejemplo hace visible la Hoja1.

Worksheets("Hoja1").Visible = True

Este ejemplo hace visibles todas las hojas del libro activo.

For Each hj In Sheets

hj.Visible = True

Next hj

Este ejemplo crea una hoja nueva y, a continuación, establece su propiedad Visible como xlVeryHidden. Para hacer referencia a esta hoja, use su variable de objeto, nuevaHoja, como se muestra en la última línea del ejemplo. Para usar la variable de objeto nuevaHoja en otro procedimiento, deberá declararla como variable pública (Public nuevaHoja As Object) en la primera línea del módulo anterior a cualquier procedimiento Sub o Function.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Visible = xlVeryHidden

nuevaHoja.Range("A1:D4").Formula = "=ALEATORIO()"


Propiedad Walls

Devuelve un objeto Walls que representa los planos laterales de un gráfico 3D. Es de sólo lectura.

Comentarios

Esta propiedad no se aplica a los gráficos circulares 3D.


Ejemplo de la propiedad Walls

Este ejemplo establece en rojo el color de la pared lateral del Gráfico1. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").Walls.Border.ColorIndex = 3


Propiedad Weight

Devuelve o establece el grosor del borde. Puede ser una de las siguientes constantes XlBorderWeight: xlHairline, xlThin, xlMedium o xlThick. Long de Lectura/Escritura.


Ejemplo de la propiedad Weight

Este ejemplo establece el grosor del borde de la elipse uno de la Hoja1.

Worksheets("Hoja1").Ovals(1).Border.Weight = xlMedium


Método XYGroups

En un gráfico 2D, devuelve un objeto que representa a un sólo grupo de gráficos de dispersión (un objeto ChartGroup, sintaxis 1) o a un conjunto de los grupos de gráficos de dispersión (un conjunto de ChartGroups, sintaxis 2).

Sintaxis 1

expresión.XYGroups(Index)

Sintaxis 2

expresión.XYGroups

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index   Variant opcional. Especifica el grupo de gráficos.


Ejemplo del método XYGroups

Este ejemplo establece que el grupo XY uno (gráfico de dispersión) utilice un color diferente en cada marcador de datos. El ejemplo debe ejecutarse en un gráfico 2D.

Charts("Gráfico1").XYGroups(1).VaryByCategories = True


Propiedad ZOrder

Devuelve la posición del objeto en el orden z. Long de sólo lectura.

Comentarios

En un conjunto de objetos, el objeto anterior en el orden z es collection(1) y el objeto en primer plano del orden z es collection(collection.Count). Por ejemplo, si la hoja activa contiene gráficos incrustados, el gráfico anterior en el orden z será ActiveSheet.ChartObjects(1), mientras que el gráfico en el primer plano del orden z será ActiveSheet.ChartObjects(ActiveSheet.ChartObjects.Count).


Ejemplo de la propiedad ZOrder

Este ejemplo muestra la posición en el orden z del gráfico incrustado en la Hoja1.

MsgBox "La posición de orden z del gráfico es " & _

Worksheets("Hoja1").ChartObjects(1).ZOrder


Propiedad CopyObjectsWithCells

True los objetos se cortan, copian, extraen y ordenan con celdas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CopyObjectsWithCells

Este ejemplo configura Microsoft Excel para que corte, copie, extraiga y ordene objetos con celdas.

Application.CopyObjectsWithCells = True


Método CopyFromRecordset

Copia el contenido de un objeto DAO Recordset en una hoja de cálculo, comenzando en la esquina superior izquierda del rango especificado. Si el objeto Recordset contiene campos con objetos OLE, este método fallará.

Sintaxis

expresión.CopyFromRecordset(Data, MaxRows, MaxColumns)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Data   Void requerido. El objeto Recordset que se copiará en el rango.

MaxRows   Variant opcional. El número máximo de registros que se copiarán en la hoja de cálculo. Si este argumento se omite, se copiarán todos los registros del objeto Recordset.

MaxRows   Variant opcional. El número máximo de campos que se copiarán en la hoja de cálculo. Si este argumento se omite, se copiarán todos los campos del objeto Recordset.

Comentarios

La copia comienza en la fila activa del objeto Recordset. Al finalizar la copia, la propiedad EOF del objeto Recordset será True.


Ejemplo del método CopyFromRecordset

Este ejemplo copia los nombres de campo de un objeto DAO Recordset en la primera fila de una hoja de cálculo y los pone en negrita. A continuación, el ejemplo copia el conjunto de registros en la hoja de cálculo, comenzando en la celda A2.

For iCols = 0 to rs.Fields.Count - 1

ws.Cells(1, iCols + 1).Value = rs.Fields(iCols).Name

Next

ws.Range(ws.Cells(1, 1), _

ws.Cells(1, rs.Fields.Count)).Font.Bold = True

ws.Range("A2").CopyFromRecordset rs


Propiedad Cursor

Devuelve o establece el aspecto del puntero del mouse (ratón) en Microsoft Excel. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlMousePointer:

Constante	Descripción
xlDefault	El puntero predeterminado
xlWait	El puntero reloj de arena
xlNorthwestArrow	El puntero flecha noroeste
xlIBeam	El puntero en I
Comentarios

La propiedad Cursor no se restablecerá automáticamente cuando la macro termine de ejecutarse. Deberá restablecer el puntero del mouse (ratón) como xlDefault antes de que termine la ejecución de la macro.


Ejemplo de la propiedad Cursor

Este ejemplo establece la forma del puntero del mouse (ratón) como I, realiza una pausa y, a continuación, lo cambia por el puntero predeterminado.

Sub CambiarCursor()

Application.Cursor = xlIBeam

For x = 1 To 1000

For y = 1 to 1000

Next y

Next x

Application.Cursor = xlDefault

End Sub


Propiedad EnableAutoFilter

True si están activadas las flechas de Filtro automático cuando se activa la protección de la interfaz del usuario. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se aplica a cada hoja de cálculo y no se guarda con la hoja ni la sesión.


Ejemplo de la propiedad EnableAutoFilter

Este ejemplo activa las flechas de Filtro automático en una hoja de cálculo protegida.

ActiveSheet.EnableAutoFilter = True

ActiveSheet.Protect contents:=True, userInterfaceOnly:=True


Propiedad EnableOutlining

True si están activados los símbolos de esquema cuando se activa la protección de la interfaz del usuario. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se aplica a cada hoja de cálculo y no se guarda con la hoja ni la sesión.


Ejemplo de la propiedad EnableOutlining

Este ejemplo activa los símbolos de esquema en una hoja de cálculo protegida.

ActiveSheet.EnableOutlining = True

ActiveSheet.Protect contents:=True, userInterfaceOnly:=True


Propiedad EnablePivotTable

True si están activados los controles y acciones de tabla dinámica cuando se activa la protección de la interfaz del usuario. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se aplica a cada hoja de cálculo y no se guarda con la hoja ni la sesión.

Debe haber un número suficiente de celdas desbloqueadas debajo y a la derecha de la tabla dinámica para que Microsoft Excel recalcule y muestre la tabla dinámica.


Ejemplo de la propiedad EnablePivotTable

Este ejemplo activa los controles de tabla dinámica en una hoja de cálculo protegida.

ActiveSheet.EnablePivotTable = True

ActiveSheet.Protect contents:=True, userInterfaceOnly:=True


Propiedad RefersToRange

Devuelve el objeto Range al que se hace referencia mediante un objeto Name. Es de sólo lectura.

Comentarios

Si el objeto Name no hace referencia a un rango (por ejemplo, si hace referencia a una constante o una fórmula), esta propiedad fallará.

Para cambiar el rango al que hace referencia un nombre, use la propiedad RefersTo.


Ejemplo de la propiedad RefersToRange

Este ejemplo muestra el número de filas y columnas en el área de impresión de la hoja de cálculo activa.

p = Names("Área_Impresión").RefersToRange.Value

MsgBox "Área_Impresión: " & UBound(p, 1) & " filas, " & _

UBound(p, 2) & " columnas"


Propiedad Background

Devuelve o establece el tipo de fondo del texto. Puede ser una de las siguientes constantes XlBackground: xlBackgroundAutomatic, xlBackgroundOpaque o xlBackgroundTransparent. Esta propiedad se usa únicamente para el texto de los gráficos. Long de Lectura/Escritura.


Ejemplo de la propiedad Background

Este ejemplo agrega un título al gráfico incrustado uno de la Hoja1 y, a continuación, establece el tamaño de fuente y el tipo de fondo del título.

With Worksheets("Hoja1").ChartObjects(1).Chart

.HasTitle = True

.ChartTitle.Text = "Precipitaciones totales por mes 1995"

With .ChartTitle.Font

.Size = 10

.Background = xlBackgroundTransparent

End With

End With


Propiedad Bold

True si la fuente es negrita. Variant de Lectura/Escritura.


Ejemplo de la propiedad Bold

Este ejemplo establece como negrita la fuente del rango A1:A5 de la Hoja1.

Worksheets("Hoja1").Range("a5").Font.Bold = True


Propiedad CategoryLocal

Devuelve o establece la categoría del nombre especificado, en el lenguaje del usuario, si el nombre hace referencia a una función o un comando personalizado. String de Lectura/Escritura.


Ejemplo de la propiedad CategoryLocal

Este ejemplo muestra, en el lenguaje del usuario, la categoría de una función o un comando personalizado creado en una hoja de macros de Microsoft Excel 4.0. Da por sentado que el nombre de la función o el comando personalizado es el único nombre del libro.

With ActiveWorkbook.Names(1)

If .MacroType <> xlNone Then

MsgBox "La categoría de este nombre es " & .CategoryLocal

Else

MsgBox "Este nombre no hace referencia a" & _

" una función o un comando personalizado."

End If

End With


Método CentimetersToPoints

Convierte una medida de centímetros a puntos (un punto equivale a 0,035 centímetros).

Sintaxis

expresión.CentimetersToPoints(Centimeters)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Centimeters   Double requerido. Especifica el valor en centímetros que se convertirá a puntos.


Ejemplo del método CentimetersToPoints

Este ejemplo establece el margen izquierdo de la Hoja1 como 5 centímetros.

Worksheets("Hoja1").PageSetup.LeftMargin = _

Application.CentimetersToPoints(5)


Método ChartObjects

Devuelve un objeto que representa un solo gráfico incrustado (un objeto ChartObject, sintaxis 1) o un conjunto de todos los gráficos incrustados (un objeto ChartObjects, sintaxis 2) de la hoja.

Sintaxis 1

expression.ChartObjects(Index)

Sintaxis 2

expresión.ChartObjects

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a. Si se especifica un objeto Chart, deberá ser una hoja de gráfico (no puede ser un gráfico incrustado).

Index   Variant opcional. El nombre o número del gráfico. Este argumento puede ser una matriz, para permitir especificar varios gráficos.

Comentarios

Este método no es equivalente a la propiedad Charts. El método devuelve gráficos incrustados, mientras que la propiedad Charts devuelve hojas de gráficos. Use la propiedad Chart para devolver el objeto Chart de un gráfico incrustado.


Ejemplo del método ChartObjects

Este ejemplo agrega un título al gráfico incrustado uno de la Hoja1.

With Worksheets("Hoja1").ChartObjects(1).Chart

.HasTitle = True

.ChartTitle.Text = "Precipitaciones totales por mes 1995"

End With

Este ejemplo crea una nueva serie en el gráfico incrustado uno de la Hoja1. El origen de datos de la nueva serie es el rango B1:B10 de la Hoja1.

Worksheets("Hoja1").ChartObjects(1).Activate

ActiveChart.SeriesCollection.Add _

source:=Worksheets("Hoja1").Range("B1:B10")

Este ejemplo borra el formato del gráfico incrustado uno de la Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart.ChartArea.ClearFormats


Propiedad CircularReference

Devuelve un objeto Range que representa el rango que contiene la primera referencia circular de la hoja de cálculo o bien Nothing si no hay referencias circulares. Para que puedan efectuarse los cálculos es necesario eliminar la referencia circular. Es de sólo lectura.


Ejemplo de la propiedad CircularReference

Este ejemplo selecciona la primera celda de la primera referencia circular de la Hoja1.

Worksheets("Hoja1").CircularReference.Select


Propiedad ColorIndex

Devuelve o establece el color del borde, la fuente o el interior, como se muestra en la tabla siguiente. El color se especifica como un valor de índice para la paleta de colores activa o bien como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone. Variant de Lectura/Escritura.

Objeto	ColorIndex:
Border	El color del borde.
Borders	El color de los cuatro bordes. Devuelve Null si el color de los cuatro bordes no es el mismo.
Font	El color de la fuente. Especifique xlColorIndexAutomatic para usar el color automático.
Interior	El color del relleno del interior. Establezca esta propiedad como xlColorIndexNone para especificar que no desea un relleno del interior. Establezca esta propiedad como xlColorIndexAutomatic para especificar que el relleno es automático (en objetos de dibujo).
Comentarios

Esta propiedad especifica un color como un índice para la paleta de colores del libro. Se puede usar el método Colors para devolver la paleta de colores activa.

En la siguiente ilustración se muestran los valores de índice de color de la paleta de colores predeterminada.


Ejemplo de la propiedad ColorIndex

Los ejemplos siguientes dan por sentado que se está usando la paleta de colores predeterminada.

Este ejemplo cambia a rojo el color de la fuente de la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Font.ColorIndex = 3

Este ejemplo establece el color de las líneas de división principales del eje de valores del Gráfico1.

With Charts("Gráfico1").Axes(xlValue)

If .HasMajorGridlines Then

.MajorGridlines.Border.ColorIndex = 5	'establece color azul

End If

End With

Este ejemplo establece el color interior del área del Gráfico1 como rojo y el color del borde como azul.

With Charts("Gráfico1").ChartArea

.Interior.ColorIndex = 3

.Border.ColorIndex = 5

End With


Método DataLabels

Devuelve un objeto que representa un único rótulo de datos (un objeto DataLabel, sintaxis 1) o un conjunto de todos los rótulos de datos de la serie (un conjunto de DataLabels, sintaxis 2).

Sintaxis 1

expresión.DataLabels(Index)

Sintaxis 2

expresión.DataLabels

expresión   Requerida. Una expresión que devuelve un objeto Series.

Index   Variant opcional. El número del rótulo de datos.

Comentarios

Si la serie tiene activada la opción Mostrar valor para los rótulos de datos, el conjunto que se devuelve puede contener hasta un rótulo por cada punto. Los rótulos de datos pueden activarse o desactivarse para puntos individuales de la serie.

Si la serie está en un gráfico de áreas y tiene activada la opción Mostrar rótulo para los rótulos, el conjunto que devuelve contiene sólo un rótulo, que corresponde a la serie de área.


Ejemplo del método DataLabels

Este ejemplo configura los rótulos de datos de la serie uno del Gráfico1 para que se muestre su leyenda, suponiendo que sus valores estén visibles cuando se ejecute el ejemplo.

With Charts("Gráfico1").SeriesCollection(1)

.HasDataLabels = True

With .DataLabels

.ShowLegendKey = True

.Type = xlValue

End With

End With


Propiedad DisplayScrollBars

True si las barras de desplazamiento están visibles en todos los libros. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayScrollBars

Este ejemplo desactiva las barras de desplazamiento en todos los libros.

Application.DisplayScrollBars = False


Propiedad DownBars

Devuelve un objeto DownBars que representa las barras descendentes de un gráfico de líneas. Sólo se aplica a gráficos de líneas. Es de sólo lectura.


Ejemplo de la propiedad DownBars

Este ejemplo activa las barras ascendentes y descendentes para el grupo de gráficos uno del Gráfico1 y, a continuación, establece sus colores. El ejemplo debe ejecutarse en un gráfico de líneas 2D con dos series que se crucen en uno o más puntos de datos.

With Charts("Gráfico1").ChartGroups(1)

.HasUpDownBars = True

.DownBars.Interior.ColorIndex = 3

.UpBars.Interior.ColorIndex = 5

End With


Propiedad DropLines

Devuelve un objeto DropLines que representa las líneas de unión de una serie en un gráfico de áreas o de líneas. Sólo se aplica a gráficos de áreas o de líneas. Es de sólo lectura.


Ejemplo de la propiedad DropLines

Este ejemplo activa las líneas de unión para el grupo de gráficos uno del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de líneas 2D con una serie.

With Charts("Gráfico1").ChartGroups(1)

.HasDropLines = True

With .DropLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Propiedad Explosion

Devuelve o establece el porcentaje de expansión de un sector en un gráfico circular o de anillos. Devuelve 0 (cero) si no hay expansión (el vértice del sector está en el centro del círculo). Long de Lectura/Escritura.


Ejemplo de la propiedad Explosion

Este ejemplo establece el valor de expansión del punto dos del Gráfico1. El ejemplo debe ejecutarse en un gráfico circular.

Charts("Gráfico1").SeriesCollection(1).Points(2).Explosion= 20


Propiedad FirstSliceAngle

Devuelve o establece el ángulo del primer sector del gráfico circular o de anillos, en grados (en el sentido de las agujas del reloj con respecto a la vertical). Se aplica únicamente a gráficos circulares y de anillos 3D. Long de Lectura/Escritura.


Ejemplo de la propiedad FirstSliceAngle

Este ejemplo establece el ángulo del primer sector circular del grupo de gráficos uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico circular 2D.

Charts("Gráfico1").ChartGroups(1).FirstSliceAngle = 15


Propiedad FormulaLocal

Devuelve o establece la fórmula del objeto, usando referencias de estilo A1 en lenguaje del usuario. Variant de Lectura/Escritura para objetos Range, String de Lectura/Escritura para objetos Series.

Comentarios

Si la celda contiene una constante, esta propiedad la devolverá. Si está vacía, devolverá una cadena vacía. Si la celda contiene una fórmula, la propiedad devolverá la fórmula en forma de cadena, con el mismo formato en que se presentaría en la barra de fórmulas (incluido el signo igual).

Si se define el valor o la fórmula de una celda como una fecha, Microsoft Excel comprobará si dicha celda ya tiene uno de los formatos numéricos de fecha u hora. De lo contrario, cambiará el formato numérico al formato numérico de fecha corto predeterminado.

Si el rango tiene una o dos dimensiones, puede definir la fórmula conforme a una matriz de Visual Basic de las mismas dimensiones. Asimismo, es posible introducir la fórmula en una matriz de Visual Basic.

Si define la fórmula de un rango de varias celdas, se llenarán todas las celdas del rango con la fórmula.


Ejemplo de la propiedad FormulaLocal

Supongamos que introduce la formula =SUMA(A1\A10) en la celda A11 de la hoja de cálculo uno, usando la versión en inglés americano de Microsoft Excel. Si abre el libro en un equipo en el que se usa la versión alemana y ejecuta el ejemplo siguiente, éste mostrará la fórmula =SUMME(A1\A10) en un cuadro de mensaje.

MsgBox Worksheets(1).Range(A11).FormulaLocal


Propiedad FormulaR1C1

Devuelve o establece la fórmula del objeto, usando la notación de estilo L1C1 en lenguaje de la macro. Variant de Lectura/Escritura para objetos Range, String de Lectura/Escritura para objetos Series.

Comentarios

Si la celda contiene una constante, esta propiedad la devolverá. Si está vacía, devolverá una cadena vacía. Si la celda contiene una fórmula, la propiedad devolverá la fórmula en forma de cadena, con el mismo formato en que se presentaría en la barra de fórmulas (incluido el signo igual).

Si se define el valor o la fórmula de una celda como una fecha, Microsoft Excel comprobará si dicha celda ya tiene uno de los formatos numéricos de fecha u hora. De lo contrario, cambiará el formato numérico al formato numérico de fecha corto predeterminado.

Si el rango tiene una o dos dimensiones, puede definir la fórmula conforme a una matriz de Visual Basic de las mismas dimensiones. Asimismo, es posible introducir la fórmula en una matriz de Visual Basic.

Si define la fórmula de un rango de varias celdas, se llenarán todas las celdas del rango con la fórmula.


Ejemplo de la propiedad FormulaR1C1

Este ejemplo establece una fórmula para la celda B1 de la Hoja1.

Worksheets("Hoja1").Range("B1").FormulaR1C1 = "=RAIZ(L1C1)"


Propiedad FormulaR1C1Local

Devuelve o establece la fórmula del objeto, usando la notación de estilo L1C1 en lenguaje del usuario. Variant de Lectura/Escritura para objetos Range, String de Lectura/Escritura para objetos Series.

Comentarios

Si la celda contiene una constante, esta propiedad la devolverá. Si está vacía, devolverá una cadena vacía. Si la celda contiene una fórmula, la propiedad devolverá la fórmula en forma de cadena, con el mismo formato en que se presentaría en la barra de fórmulas (incluido el signo igual).

Si se define el valor o la fórmula de una celda como una fecha, Microsoft Excel comprobará si dicha celda ya tiene uno de los formatos numéricos de fecha u hora. De lo contrario, cambiará el formato numérico al formato numérico de fecha corto predeterminado.

Si el rango tiene una o dos dimensiones, puede definir la fórmula conforme a una matriz de Visual Basic de las mismas dimensiones. Asimismo, es posible introducir la fórmula en una matriz de Visual Basic.

Si define la fórmula de un rango de varias celdas, se llenarán todas las celdas del rango con la fórmula.


Ejemplo de la propiedad FormulaR1C1Local

Supongamos que introduce la formula =SUMA(A1\A10) en la celda A11 de la hoja de cálculo uno, usando la versión en inglés americano de Microsoft Excel. Si abre el libro en un equipo en el que se usa la versión alemana y ejecuta el ejemplo siguiente, éste mostrará la fórmula =SUMME(Z1S1\Z10S1) en un cuadro de mensaje.

MsgBox Worksheets(1).Range(A11).FormulaR1C1Local


Método GetOpenFilename

Presenta el cuadro de diálogo estándar Abrir y obtiene un nombre de archivo que selecciona el usuario sin que en realidad se abra ningún archivo.

Sintaxis

expresión.GetOpenFilename(FileFilter, FilterIndex, Title, ButtonText, MultiSelect)

expresión   Requerida. Una expresión que devuelve un objeto Application.

FileFilter   Variant opcional. Una cadena que especifica los criterios de filtrado de archivos.

En Microsoft Windows, esta cadena consta de pares de cadenas de filtros de archivos seguidas de la especificación de filtro de archivo comodín de MS-DOS, separados cada par y cada parte por comas. Se enumera cada par individual en el cuadro de lista desplegable Tipo de archivo. Por ejemplo, la siguiente cadena especifica dos filtros de archivos, texto y macros automáticas: "Archivos de texto (*.txt),*.txt,Archivos de Macros automáticas (*.xla),*.xla"

Si desea usar varias expresiones comodín de MS-DOS para un solo tipo de filtro de archivo, separe dichas expresiones con signos de punto y coma; por ejemplo, "Archivos de Visual Basic (*.bas; *.txt),*.bas;*.txt".

Si se omite en Windows, este parámetro tomará el valor predeterminado de "Todos los archivos (*.*),*.".

En Macintosh, esta cadena es una lista de códigos de tipos de archivos separados por comas, ("TEXT,XLA5,XLS4"). Los espacios tienen un significado y no deben insertarse antes ni después de los separadores de coma, salvo que formen parte del código de tipo de archivo. Si se omite, este parámetro tomará el valor predeterminado de todos los archivos.

FilterIndex   Variant opcional. Sólo en Windows (se ignora en Macintosh). Especifica los números de índice del criterio predeterminado de filtrado de archivos, que puede ser desde 1 hasta el número de filtros especificado en FileFilter. Si este argumento se omite o es mayor que el número de filtros presentes, se usará el primer filtro de archivo.

Title   Variant opcional. Sólo en Windows (se ignora en Macintosh). Especifica el título del cuadro de diálogo. Si este argumento se omite, el título será “Abrir”.

ButtonText   Variant opcional. Sólo Macintosh (se ignora en Windows). Especifica el texto usado para el botón Abrir del cuadro de diálogo. Si este argumento se omite, el texto del botón será "Abrir".

MultiSelect   Variant opcional. True para que se permita la selección de varios nombres de archivo. False para que sólo se permita seleccionar un nombre de archivo. El valor predeterminado es False.

Comentarios

Este método devuelve el nombre del archivo seleccionado o el nombre introducido por el usuario. El nombre que se devuelve puede incluir una especificación de ruta de acceso. Si MultiSelect es True, el valor que se devuelve será una matriz de los nombres de archivo seleccionados (aunque sólo esté seleccionado uno). Devuelve False si el usuario cancela el cuadro de diálogo.

Este método puede cambiar la unidad de disco o carpeta activas.


Ejemplo del método GetOpenFilename

Este ejemplo muestra el cuadro de diálogo Abrir, con el filtro de archivos definido como archivos de texto. Si el usuario elige un nombre de archivo, el código lo mostrará en un cuadro de mensaje.

archivoAAbrir = Application.GetOpenFilename("Archivos de texto (*.txt), *.txt")

If archivoAAbrir <> False Then

MsgBox "Abrir " & archivoAAbrir

End If

Este ejemplo es el mismo en Microsoft Excel para Macintosh.

archivoAAbrir = Application.GetOpenFilename("TEXTO")

If archivoAAbrir <> False Then

MsgBox "Abrir " & archivoAAbrir

End If


Método GetSaveAsFilename

Presenta el cuadro de diálogo estándar Guardar como y obtiene el nombre de archivo seleccionado por el usuario sin guardar realmente ningún archivo.

Sintaxis

expresión.GetSaveAsFilename(InitialFilename, FileFilter, FilterIndex, Title, ButtonText)

expresión   Requerida. Una expresión que devuelve un objeto Application.

InitialFilename   Variant opcional. Especifica el nombre de archivo sugerido. Si este argumento se omite, Microsoft Excel usará el nombre del libro activo.

FileFilter   Variant opcional. Una cadena que especifica los criterios de filtrado de archivos.

En Microsoft Windows, esta cadena consta de pares de cadenas de filtros de archivos seguidas de la especificación de filtro de archivo comodín de MS-DOS, separados cada par y cada parte por comas. Se enumera cada par individual en el cuadro de lista desplegable Tipo de archivo. Por ejemplo, la siguiente cadena especifica dos filtros de archivos, texto y macros automáticas: "Archivos de texto (*.txt), *.txt, Archivos de macro automática (*.xla), *.xla".

Si desea usar varias expresiones comodín de MS-DOS para un solo tipo de filtro de archivo, separe dichas expresiones con signos de punto y coma; por ejemplo, "Archivos de Visual Basic (*.bas; *.txt),*.bas;*.txt".

Si se omite en Windows, este parámetro tomará el valor predeterminado de "Todos los archivos (*.*),*.".

En Macintosh, esta cadena es una lista de códigos de tipos de archivos separados por comas, ("TEXT,XLA5,XLS4"). Los espacios tienen un significado y no deben insertarse antes ni después de los separadores de coma, salvo que formen parte del código de tipo de archivo. Si se omite, este parámetro tomará el valor predeterminado de todos los archivos.

FilterIndex   Variant opcional. Sólo en Windows (se ignora en Macintosh). Especifica el número de índice de los criterios predeterminados de filtrado de archivos, que puede ser desde 1 hasta el número de filtros especificado en FileFilter. Si este argumento se omite o es mayor que el número de filtros presentes, se usará el primer filtro de archivo.

Title   Variant opcional. Especifica el título del cuadro de diálogo. Si este argumento se omite, se usará el título predeterminado.

ButtonText   Variant opcional. Sólo Macintosh (se ignora en Windows). Especifica el texto usado para el botón Guardar del cuadro de diálogo. Si este argumento se omite, el texto del botón será "Guardar".

Comentarios

Este método devuelve el nombre del archivo seleccionado o el nombre introducido por el usuario. El nombre que se devuelve puede incluir una especificación de ruta de acceso. Devuelve False si el usuario cancela el cuadro de diálogo.

Este método puede cambiar la unidad de disco o carpeta activas.


Ejemplo del método GetSaveAsFilename

Este ejemplo muestra el cuadro de diálogo Guardar como, con el filtro de archivos definido como archivos de texto. Si el usuario elige un nombre de archivo, el ejemplo lo mostrará en un cuadro de mensaje.

guardarNombreArchivo = Application.GetSaveAsFilename( _

fileFilter:="Archivos de texto (*.txt), *.txt")

If guardarNombreArchivo <> False Then

MsgBox "Guardar como " & guardarNombreArchivo

End If

Este ejemplo es el mismo en Microsoft Excel para Macintosh.

guardarNombreArchivo = Application.GetSaveAsFilename( _

fileFilter:="TEXT")

If guardarNombreArchivo <> False Then

MsgBox "Guardar como " & FileSaveName

End If


Propiedad GridlineColorIndex

Devuelve o establece el color de las líneas de división como un índice para la paleta de colores activa o bien como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone. Variant de Lectura/Escritura.

Comentarios

Establezca esta propiedad como xlColorIndexAutomatic para especificar color automático.

En la siguiente ilustración se muestran los valores de índice de color de la paleta de colores predeterminada.


Ejemplo de la propiedad GridlineColorIndex

Este ejemplo establece en azul el color de las líneas de división de la ventana activa.

ActiveWindow.GridlineColorIndex = 5


Propiedad HasDataLabels

True si la serie tiene rótulos de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasDataLabels

Este ejemplo activa los rótulos de datos en la serie tres del Gráfico1.

With Charts("Gráfico1").SeriesCollection(3)

.HasDataLabels = True

.ApplyDataLabels type:=xlValue

End With


Propiedad HasDropLines

True si el gráfico de líneas o de áreas tiene líneas de unión. Se aplica sólo a los gráficos de líneas y de áreas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasDropLines

Este ejemplo activa las líneas de unión para el grupo de gráficos uno del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de líneas 2D con una serie.

With Charts("Gráfico1").ChartGroups(1)

.HasDropLines = True

With .DropLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Propiedad HasHiLoLines

True si el gráfico de líneas tiene líneas de máximos y mínimos. Sólo se aplica a gráficos de líneas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasHiLoLines

Este ejemplo activa las líneas de máximos y mínimos en el grupo de gráficos uno del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de líneas 2D con tres series de datos del tipo de cotizaciones de bolsa (máximos, mínimos, cierre).

With Charts("Gráfico1").ChartGroups(1)

.HasHiLoLines = True

With .HiLoLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Propiedad HasRadarAxisLabels

True si un gráfico radial tiene rótulos de ejes. Se aplica sólo a gráficos radiales. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasRadarAxisLabels

Este ejemplo activa los rótulos de los ejes de gráficos radiales en el grupo de gráficos uno del Gráfico1 y establece su color. El ejemplo debe ejecutarse en un gráfico radial.

With Charts("Gráfico1").ChartGroups(1)

.HasRadarAxisLabels = True

.RadarAxisLabels.Font.ColorIndex = 3

End With


Propiedad HasSeriesLines

True si un gráfico de columnas o barras apiladas tiene líneas de serie o un gráfico de sectores circulares o de barras de gráfico circular tiene líneas de conexión entre las dos secciones. Se aplica únicamente a los gráficos de columnas apiladas, gráficos de barras, gráficos de sectores circulares o gráficos de barras de sector circular. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasSeriesLines

Este ejemplo activa las líneas de serie en el grupo de gráficos uno del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de columnas apiladas 2D con dos o más series.

With Charts("Gráfico1").ChartGroups(1)

.HasSeriesLines = True

With .SeriesLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Propiedad HasUpDownBars

True si un gráfico de líneas tiene barras ascendentes y descendentes. Sólo se aplica a gráficos de líneas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasUpDownBars

Este ejemplo activa las barras ascendentes y descendentes en el grupo de gráficos uno del Gráfico1 y, a continuación, establece sus colores. El ejemplo debe ejecutarse en un gráfico de líneas 2D con dos series que se crucen en uno o más puntos de datos.

With Charts("Gráfico1").ChartGroups(1)

.HasUpDownBars = True

.DownBars.Interior.ColorIndex = 3

.UpBars.Interior.ColorIndex = 5

End With


Propiedad HiLoLines

Devuelve un objeto HiLoLines que representa las líneas de máximos y mínimos de una serie en un gráfico de líneas. Sólo se aplica a gráficos de líneas. Es de sólo lectura.


Ejemplo de la propiedad HiLoLines

Este ejemplo activa líneas de máximos y mínimos en el grupo de gráficos del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de líneas 2D con tres series de datos del tipo de cotizaciones de bolsa (máximos, mínimos, cierre).

With Charts("Gráfico1").ChartGroups(1)

.HasHiLoLines = True

With .HiLoLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Método InchesToPoints

Convierte una medida de pulgadas a puntos.

Sintaxis

expresión.InchesToPoints(Inches)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Inches   Double requerido. Especifica el valor en pulgadas que se convertirá a puntos.


Ejemplo del método InchesToPoints

Este ejemplo establece el margen izquierdo de la Hoja1 en 2,5 pulgadas.

Worksheets("Hoja1").PageSetup.LeftMargin = _

Application.InchesToPoints(2.5)


Propiedad Italic

True si el estilo de la fuente es cursiva. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Italic

Este ejemplo establece como cursiva el estilo de la fuente del rango A1:A5 de la Hoja1.

Worksheets("Hoja1").Range("A1:A5").Font.Italic = True


Método LargeScroll

Desplaza el contenido de la ventana por páginas.

Sintaxis

expresión.LargeScroll(Down, Up, ToRight, ToLeft)

expresión   Requerida. Una expresión que devuelve un objeto Window.

Down   Variant opcional. El número de páginas hacia abajo que se desplazará el contenido.

Up   Variant opcional. El número de páginas hacia arriba que se desplazará el contenido.

ToRight   Variant opcional. El número de páginas hacia la derecha que se desplazará el contenido.

ToLeft   Variant opcional. El número de páginas hacia la izquierda que se desplazará el contenido.

Comentarios

Si se especifican a la vez Down y Up, el contenido de la ventana se desplazará según la diferencia de ambos argumentos. Por ejemplo, si Down es 3 y Up es 6, el contenido se desplazará tres páginas hacia arriba.

Si se especifican a la vez ToLeft y ToRight, el contenido de la ventana se desplazará según la diferencia de ambos argumentos. Por ejemplo, si ToLeft es 3 y ToRight es 6, el contenido se desplazará tres páginas hacia la derecha.

Todos los argumentos pueden ser números negativos.


Ejemplo del método LargeScroll

Este ejemplo desplaza el contenido de la ventana activa de la Hoja1 tres páginas hacia abajo.

Worksheets("Hoja1").Activate

ActiveWindow.LargeScroll down:=3


Propiedad Outline

Devuelve un objeto Outline que representa el esquema de la hoja de cálculo especificada. Es de sólo lectura.


Ejemplo de la propiedad Outline

Este ejemplo configura el esquema de la Hoja1 para que use estilos automáticos.

Worksheets("Hoja1").Outline.AutomaticStyles = True


Propiedad Overlap

Esta propiedad especifica cómo se sitúan las barras y las columnas. Puede ser un valor comprendido entre – 100 y 100. Se aplica únicamente a los gráficos de barras 2D y de columnas 2D. Long de Lectura/Escritura.

Comentarios

Si se establece el valor  – 100 para esta propiedad, las barras se situarán de tal manera que exista un espacio entre ellas igual al grosor de una barra. Con superposición igual a 0 (cero), no hay espacio entre las barras (cada barra empieza inmediatamente después de la que le precede). Si la superposición es 100, las barras se colocarán unas sobre otras.


Ejemplo de la propiedad Overlap

Este ejemplo establece la superposición del grupo de gráficos uno como  – 50. Debe ejecutarse en un gráfico de columnas 2D que tenga dos o más series.

Charts("Gráfico1").ChartGroups(1).Overlap = -50


Propiedad RadarAxisLabels

Devuelve un objeto TickLabels que representa los rótulos de los ejes de gráfico radial para el grupo de gráficos especificado. Es de sólo lectura.


Ejemplo de la propiedad RadarAxisLabels

Este ejemplo activa los rótulos de los ejes de un gráfico radial para el grupo de gráficos uno del Gráfico1 y, a continuación, establece su color. El ejemplo debe ejecutarse en un gráfico radial.

With Charts("Gráfico1").ChartGroups(1)

.HasRadarAxisLabels = True

.RadarAxisLabels.Font.ColorIndex = 3

End With


Propiedad RefersToLocal

Devuelve o establece la fórmula a la que hace referencia el nombre. La fórmula estará en el lenguaje del usuario, con la notación de estilo A1 y un signo igual al principio. String de Lectura/Escritura.


 Ejemplo de la propiedad RefersToLocal

Este ejemplo crea una hoja de cálculo nueva y, a continuación, inserta una lista de todos los nombres del libro activo, incluidas sus fórmulas (en la notación de estilo A1 y el lenguaje del usuario).

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.NameLocal

nuevaHoja.Cells(i, 2).Value = "'" & nm.RefersToLocal

i = i + 1

Next


Propiedad RefersToR1C1

Devuelve o establece la fórmula a la que hace referencia el nombre. La fórmula estará en el lenguaje de la macro, con la notación de estilo F1C1 y un signo igual al principio. String de Lectura/Escritura.


Ejemplo de la propiedad RefersToR1C1

Este ejemplo crea una hoja de cálculo nueva y, a continuación, inserta una lista de todos los nombres del libro activo, incluidas sus fórmulas (en la notación de estilo F1C1 y el lenguaje de la macro).

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.Name

nuevaHoja.Cells(i, 2).Value = "'" & nm.RefersToR1C1

i = i + 1

Next


Propiedad RefersToR1C1Local

Devuelve o establece la fórmula a la que hace referencia el nombre. La fórmula estará en el lenguaje del usuario, con la notación de estilo F1C1 y un signo igual al principio. String de Lectura/Escritura.


Ejemplo de la propiedad RefersToR1C1Local

Este ejemplo crea una hoja de cálculo nueva y, a continuación, inserta una lista de todos los nombres del libro activo, incluidas sus fórmulas (en la notación de estilo F1C1 y el lenguaje del usuario).

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.NameLocal

nuevaHoja.Cells(i, 2).Value = "'" & nm.RefersToR1C1Local

i = i + 1

Next


Propiedad SeriesLines

Devuelve un objeto SeriesLines que representa las líneas de serie de un gráfico de columnas o barras apiladas. Sólo se aplica a gráficos de columnas y barras apiladas. Es de sólo lectura.


Ejemplo de la propiedad SeriesLines

Este ejemplo activa las líneas de serie en el grupo de gráficos uno del Gráfico1 y, a continuación, establece el estilo, grosor y color de las líneas. El ejemplo debe ejecutarse en un gráfico de columnas apiladas 2D con dos o más series.

With Charts("Gráfico1").ChartGroups(1)

.HasSeriesLines = True

With .SeriesLines.Border

.LineStyle = xlThin

.Weight = xlMedium

.ColorIndex = 3

End With

End With


Método SmallScroll

Desplaza el contenido de la ventana por filas o columnas.

Sintaxis

expresión.SmallScroll(Down, Up, ToRight, ToLeft)

expresión   Requerida. Una expresión que devuelve un objeto Window.

Down   Variant opcional. El número de filas hacia abajo que se desplazará el contenido.

Up   Variant opcional. El número de filas hacia arriba que se desplazará el contenido.

ToRight   Variant opcional. El número de columnas hacia la derecha que se desplazará el contenido.

ToLeft   Variant opcional. El número de columnas hacia la izquierda que se desplazará el contenido.

Comentarios

Si se especifican a la vez Down y Up, el contenido de la ventana se desplazará según la diferencia de ambos argumentos. Por ejemplo, si Down es 3 y Up es 6, el contenido se desplazará tres filas hacia arriba.

Si se especifican a la vez ToLeft y ToRight, el contenido de la ventana se desplazará según la diferencia de ambos argumentos. Por ejemplo, si ToLeft es 3 y ToRight es 6, el contenido se desplazará tres columnas hacia la derecha.

Todos los argumentos pueden ser números negativos.


Ejemplo del método SmallScroll

Este ejemplo desplaza el contenido de la ventana activa de la Hoja1 tres filas hacia abajo.

Worksheets("Hoja1").Activate

ActiveWindow.SmallScroll down:=3


Método SortSpecial

Sintaxis 1: Usa métodos de ordenación del Lejano Oriente para ordenar el rango o bien la región actual si el rango contiene únicamente una celda.

Sintaxis 2: Usa métodos de ordenación del Lejano Oriente para ordenar una tabla dinámica. Para obtener más información, consulte la lista de argumentos.

Sintaxis 1

expresión.SortSpecial(SortMethod, Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, OrderCustom, MatchCase, Orientation)

Sintaxis 2

expresión.SortSpecial(SortMethod, Key1, Order1, Type, OrderCustom, Orientation)

expresión   Requerida. Una expresión que devuelve un objeto Range.

SortMethod   Variant opcional. Especifica cómo se lleva a cabo la ordenación: Puede ser una de las siguientes constantes XlSortMethod: xlSyllabary (para ordenar por fonética) o xlCodePage (para ordenar por código de página). El valor predeterminado es xlSyllabary.

Key1   Variant opcional. El primer campo de ordenación, ya sea como texto (un nombre de campo de tabla dinámica o de rango) o un objeto Range (por ejemplo, "Depart" o Cells(1, 1)).

Order1   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Use xlAscending para ordenar Key1 por orden ascendente. Use xlDescending para ordenar Key1 por orden descendente. El valor predeterminado es xlAscending.

Key2   Variant opcional. El segundo campo de ordenación, ya sea como texto (un nombre de tabla dinámica o de rango) o un objeto Range. Si este argumento se omite, no se usará un segundo campo de ordenación. No se emplea para ordenar tablas dinámicas.

Type   Variant opcional. Especifica qué elementos se ordenarán. Puede ser una de las siguientes constantes XlSortType: xlSortValues o xlSortLabels. Se emplea sólo para ordenar tablas dinámicas.

Order2   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Use xlAscending para ordenar Key2 por orden ascendente. Use xlDescending para ordenar Key2 por orden descendente. El valor predeterminado es xlAscending. No se emplea para ordenar tablas dinámicas.

Key3   Variant opcional. El tercer campo de ordenación, ya sea como texto (un nombre de rango) o un objeto Range. Si este argumento se omite, no se usará un tercer campo de ordenación. No se emplea para ordenar tablas dinámicas.

Order3   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Use xlAscending para ordenar Key3 por orden ascendente. Use xlDescending para ordenar Key3 por orden descendente. El valor predeterminado es xlAscending. No se emplea para ordenar tablas dinámicas.

Header   Variant opcional. Especifica si la primera fila contiene encabezados. Puede ser una de las siguientes constantes XlYesNoGuess: xlYes, xlNo o xlGuess. Use xlYes si la primera fila contiene encabezados (no debe estar ordenada). Use xlNo si no hay encabezados (todo el rango debe estar ordenado). Use xlGuess para que Microsoft Excel determine si hay encabezado, así como su ubicación, si existe. El valor predeterminado es xlNo. No se emplea para ordenar tablas dinámicas.

OrderCustom   Variant opcional. Desviación de enteros basada en uno con respecto a la lista de ordenación. Si este argumento se omite, se usará 1 (Normal).

MatchCase   Variant opcional. True para llevar a cabo una ordenación que distinga mayúsculas y minúsculas; False para que no se distingan mayúsculas y minúsculas. No se emplea para ordenar tablas dinámicas.

Orientation   Variant opcional. Si es xlTopToBottom o se omite, la ordenación se realizará de arriba a abajo (por filas). Si es xlLeftToRight, la ordenación se llevará a cabo de izquierda a derecha (por columnas).


Ejemplo del método SortSpecial

Este ejemplo ordena el rango A1:G37 de la Hoja1, usando la celda A1 como primera clave de ordenación y la celda C1 como segunda clave. La ordenación se realiza en orden ascendente de página de códigos por fila y no hay encabezados.

Worksheets("Hoja1").Range("A1:G37").SortSpecial _

sortMethod:=xlCodePage, _

key1:=Range("A1"), order1:=xlAscending, _

key2:=Range("C1"), order2:=xlAscending


Propiedad SourceData

Devuelve el origen de datos de la tabla dinámica, tal como aparece en la siguiente tabla. Variant de sólo lectura.

Origen de datos	Valor devuelto
Lista o base de datos de Microsoft Excel	La referencia de la celda, en forma de texto.
Origen de datos externos	Una matriz. Cada fila consta de una cadena de conexiones SQL con los elementos restantes como cadena de consultas, desglosada en segmentos de 200 caracteres.
Varios rangos de consolidación	Una matriz de dos dimensiones. Cada fila consta de una referencia y sus elementos de campo de página asociados.
Otra tabla dinámica	Uno de los tres tipos de información anteriores.


Ejemplo de la propiedad SourceData

Supongamos que se usó un origen de datos externo para crear una tabla dinámica en la Hoja1. Este ejemplo inserta la cadena de conexiones SQL y la cadena de consulta en una hoja de cálculo nueva.

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

sdArray = Worksheets("Hoja1").UsedRange.PivotTable.SourceData

For i = LBound(sdArray) To UBound(sdArray)

nuevaHoja.Cells(i, 1) = sdArray(i)

Next i


Propiedad Strikethrough

True si la fuente está tachada con una línea horizontal. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Strikethrough

Este ejemplo establece como tachado la fuente de la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.Font.Strikethrough = True


Propiedad Underline

Devuelve o establece el tipo de subrayado que se aplicará a la fuente. Puede ser una de las siguientes constantes XlUnderlineStyle: xlUnderlineStyleNone, xlUnderlineStyleSingle, xlUnderlineStyleDouble, xlUnderlineStyleSingleAccounting o xlUnderlineStyleDoubleAccounting. Long de Lectura/Escritura.


Ejemplo de la propiedad Underline

Este ejemplo establece como subrayado simple la fuente de la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.Font.Underline = xlUnderlineStyleSingle


Propiedad UpBars

Devuelve un objeto UpBars que representa las barras ascendentes de un gráfico de líneas. Sólo se aplica a gráficos de líneas. Es de sólo lectura.


Ejemplo de la propiedad UpBars

Este ejemplo activa las barras ascendentes y descendentes en el grupo de gráficos uno del Gráfico1 y, a continuación, establece sus colores. El ejemplo debe ejecutarse en un gráfico de líneas 2D con dos series que se crucen en uno o más puntos de datos.

With Charts("Gráfico1").ChartGroups(1)

.HasUpDownBars = True

.DownBars.Interior.ColorIndex = 3

.UpBars.Interior.ColorIndex = 5

End With


Propiedad VaryByCategories

Esta propiedad es True si Microsoft Excel asigna un color o un diseño diferente a cada marcador de datos. El gráfico debe contener una sola serie. Boolean de Lectura/Escritura.


Ejemplo de la propiedad VaryByCategories

Este ejemplo asigna un color o modelo diferente a cada marcador de datos del grupo de gráficos uno. El ejemplo debe ejecutarse en un gráfico de líneas 2D que tenga marcadores de datos en una serie.

Charts("Gráfico1").ChartGroups(1).VaryByCategories = True


Método ExclusiveAccess

Asigna al usuario actual acceso exclusivo al libro que está abierto como una lista compartida.

Sintaxis

expresión.ExclusiveAccess

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

El método ExclusiveAccess guarda todos los cambios efectuados en el libro y solicita a los demás usuarios que estén trabajando en el libro que guarden sus cambios en otro archivo.

Si el libro especificado no está abierto como una lista compartida, este método fallará. Para determinar si un libro está abierto como una lista compartida, use la propiedad MultiUserEditing.


Ejemplo del método ExclusiveAccess

Este ejemplo determina si el libro activo está abierto como una lista compartida. De ser así, el ejemplo asignará al usuario actual acceso exclusivo.

If ActiveWorkbook.MultiUserEditing Then

ActiveWorkbook.ExclusiveAccess

End If


Propiedad MultiUserEditing

True si el libro está abierto como una lista compartida. Boolean de sólo lectura.

Comentarios

Para guardar un libro como una lista compartida, use el método SaveAs. Para cambiar el libro del modo compartido al exclusivo, use el método ExclusiveAccess.


Ejemplo de la propiedad MultiUserEditing

Este ejemplo determina si el libro activo está abierto en modo exclusivo. En ese caso, el ejemplo guardará el libro activo como una lista compartida.

If Not ActiveWorkbook.MultiUserEditing Then

ActiveWorkbook.SaveAs fileName:=ActiveWorkbook.FullName, _

accessMode:=xlShared

End If


Propiedad RevisionNumber

Devuelve el número de veces que se ha guardado el libro mientras estaba abierto como una lista compartida. Si el libro está abierto en modo exclusivo, este propiedad devolverá 0 (cero). Long de sólo lectura.

Comentarios

La propiedad RevisionNumber sólo se actualizará cuando se guarde la copia local del libro, no cuando se guarden copias remotas.


Ejemplo de la propiedad RevisionNumber

Este ejemplo usa el número de revisión para determinar si el libro activo está abierto en modo exclusivo. En ese caso, el ejemplo guardará el libro activo como una lista compartida.

If ActiveWorkbook.RevisionNumber = 0 Then

    ActiveWorkbook.SaveAs filename:=ActiveWorkbook.FullName, _

        accessMode:=xlShared, conflictResolution:=xlOtherSessionChanges

End If


Propiedad ShowConflictHistory

True si la hoja de cálculo Historial de conflictos está visible en un libro abierto como una lista compartida. Boolean de Lectura/Escritura.

Comentarios

Si el libro especificado no está abierto como una lista compartida, esta propiedad fallará. Para determinar si un libro está abierto como una lista compartida, use la propiedad MultiUserEditing.


Ejemplo de la propiedad ShowConflictHistory

Este ejemplo determina si el libro activo está abierto como una lista compartida. Si lo está, el ejemplo mostrará la hoja de cálculo Historial de conflictos.

If ActiveWorkbook.MultiUserEditing Then

ActiveWorkbook.ShowConflictHistory = True

End If


Propiedad UserStatus

Devuelve una matriz bidimensional basada en unos que especifica información acerca de los usuarios que tienen el libro abierto como una lista compartida. El primer elemento de la segunda dimensión es el nombre del usuario, el segundo es la fecha y hora en que el usuario abrió el libro por última vez y el tercero es un número que indica el tipo de la lista (1 indica exclusiva y 2 compartida). Variant de sólo lectura.

Comentarios

La propiedad UserStatus no devuelve información de los usuarios que tienen el libro especificado abierto como de sólo lectura.


Ejemplo de la propiedad UserStatus

Este ejemplo crea un nuevo libro e inserta en él información de todos los usuarios que tienen el libro activo abierto como una lista compartida.

users = ActiveWorkbook.UserStatus

With Workbooks.Add.Sheets(1)

For fila = 1 To ubound(users, 1)

.Cells(fila, 1) = users(fila, 1)

.Cells(fila, 2) = users(fila, 2)

Select Case users(fila, 3)

Case 1

.Cells(fila, 3).Value = "Exclusivo"

Case 2

.Cells(fila, 3).Value = "Compartido"

End Select

Next

End With


Método ActivateMicrosoftApp

Activa una aplicación de Microsoft. Si la aplicación ya se está ejecutando, este método activará la aplicación. De lo contrario, el método iniciará una nueva instancia de la aplicación.

Sintaxis

expresión.ActivateMicrosoftApp(index)

expresión   Requerida. Una expresión que devuelve un objeto Application.

index    Long requerido. Especifica la aplicación de Microsoft que se activará. Puede ser una de las siguientes constantes XlMSApplication: xlMicrosoftWord, xlMicrosoftPowerPoint, xlMicrosoftMail, xlMicrosoftAccess, xlMicrosoftFoxPro, xlMicrosoftProject o xlMicrosoftSchedulePlus.


Ejemplo del método ActivateMicrosoftApp

Este ejemplo inicia y activa Word.

Application.ActivateMicrosoftApp xlMicrosoftWord


Método ActivateNext

Activa la ventana especificada y la envía hacia atrás en el orden z de la ventana.

Sintaxis

expresión.ActivateNext

expresión   Requerida. Una expresión que devuelve un objeto Window.


Ejemplo del método ActivateNext

Este ejemplo envía la ventana activa hacia atrás en el orden z.

ActiveWindow.ActivateNext


Método ActivatePrevious

Activa la ventana especificada y, a continuación, la que se encuentra detrás en el orden z de la ventana.

Sintaxis

expresión.ActivatePrevious

expresión   Requerida. Una expresión que devuelve un objeto Window.


Ejemplo del método ActivatePrevious

Este ejemplo activa la ventana que se encuentra detrás del orden z.

ActiveWindow.ActivatePrevious


Propiedad AxisTitle

Devuelve un objeto AxisTitle que representa el título del eje especificado. Es de sólo lectura.


Ejemplo de la propiedad AxisTitle

Este ejemplo agrega un rótulo al eje de categorías del Gráfico1.

With Charts("Gráfico1").Axes(xlCategory)

.HasTitle = True

.AxisTitle.Text = "Ventas julio"

End With


Propiedad BCCRecipients

Devuelve o establece los destinatarios de la copia oculta del formulario. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Variant de Lectura/Escritura.

Comentarios

Esta propiedad usa una matriz de cadenas que especifica la dirección de cada destinatario, en uno de los formatos siguientes:

•	Un registro en el Catálogo personal preferente. Estos nombres tienen un solo nivel de profundidad (por ejemplo, "Ana" o "Julia").

•	Una ruta de acceso completa que especifica un registro de un catálogo personal ("HD:Carpeta Excel:Mi Catálogo:Tomás") o un registro normal ("HD:Carpeta:Felipe").

•	Una ruta de acceso relativa con respecto a la carpeta de trabajo activa, que especifica un registro de un catálogo personal ("Mi Catálogo:Tomás") o un registro normal ("Felipe").

•	Una ruta de acceso en un árbol de catálogos de PowerShare, en la forma "NOMBRE_CATÁLOGO:<nodo>:NOMBRE_REGISTRO", donde <nodo> es una ruta de acceso a un catálogo de PowerShare. Por ejemplo, una ruta de acceso completa podría ser "AppleTalk:Zona Edificio Norte:Mac de Vicente".


Ejemplo de la propiedad BCCRecipients

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad CategoryNames

Devuelve o establece los nombres de categorías de todos los ejes especificados, en forma de matriz de texto. Esta propiedad puede establecerse como una matriz o como un objeto Range que contenga los nombres de las categorías. Variant de Lectura/Escritura.

Comentarios

Los nombres de las categorías son en realidad una propiedad de la serie "especial" en una agrupación de ejes. Si se elimina o modifica esta serie especial, se cambiarán los nombres de las categorías en todas las series que usen el eje.


Ejemplo de la propiedad CategoryNames

Este ejemplo establece los nombres de categorías del Gráfico1 como los valores de las celdas B1:B5 de la Hoja1.

Set Charts("Gráfico1").Axes(xlCategory).CategoryNames = _

Worksheets("Hoja1").Range("B1:B5")

Este ejemplo usa una matriz para establecer nombres de categorías individuales en el Gráfico1.

Charts("Gráfico1").Axes(xlCategory).CategoryNames = _

Array ("1985", "1986", "1987", "1988", "1989")


Propiedad CCRecipients

Devuelve o establece los destinatarios de la copia oculta (copia indirecta) del formulario. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Variant de Lectura/Escritura.

Comentarios

Esta propiedad usa una matriz de cadenas que especifica la dirección, en uno de los formatos siguientes:

•	Un registro en el Catálogo personal preferente. Estos nombres tienen un solo nivel de profundidad (por ejemplo, "Ana" o "Julia").

•	Una ruta de acceso completa que especifica un registro de un catálogo personal ("HD:Carpeta Excel:Mi Catálogo:Tomás") o un registro normal ("HD:Carpeta:Felipe").

•	Una ruta de acceso relativa con respecto a la carpeta de trabajo activa, que especifica un registro de un catálogo personal ("Mi Catálogo:Tomás") o un registro normal ("Felipe").

•	Una ruta de acceso en un árbol de catálogos de PowerShare, en la forma "NOMBRE_CATÁLOGO:<nodo>:NOMBRE_REGISTRO", donde <nodo> es una ruta de acceso a un catálogo de PowerShare. Por ejemplo, una ruta de acceso completa podría ser "AppleTalk:Zona Edificio Norte:Mac de Vicente".


Ejemplo de la propiedad CCRecipients

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad ChartTitle

Devuelve un objeto ChartTitle que representa el título del gráfico especificado. Es de sólo lectura.


Ejemplo de la propiedad ChartTitle

Este ejemplo establece el texto del título del Gráfico1.

With Charts("Gráfico1")

.HasTitle = True

.ChartTitle.Text = "Ventas del primer trimestre"

End With


Método Deselect

Cancela la selección del gráfico especificado.

Sintaxis

expresión.Deselect

expresión   Requerida. Una expresión que devuelve un objeto Chart.


Ejemplo del método Deselect

Este ejemplo equivale a presionar la tecla ESC mientras se trabaja en el gráfico activo. El ejemplo debe ejecutarse en un gráfico que tenga seleccionado un componente (por ejemplo, un eje).

ActiveChart.Deselect


Propiedad DoughnutHoleSize

Devuelve o establece el tamaño del agujero en un grupo de gráficos de anillos. El tamaño del agujero se expresa como un porcentaje del tamaño del gráfico, comprendido entre el 10 y el 90%. Long de Lectura/Escritura.


Ejemplo de la propiedad DoughnutHoleSize

Este ejemplo establece el tamaño del agujero del grupo de gráficos de anillos del Gráfico1. El ejemplo debe ejecutarse en un gráfico de anillos 2D.

Charts("Gráfico1").DoughnutGroups(1).DoughnutHoleSize = 10


Propiedad EnableCancelKey

Controla la forma en que Microsoft Excel manipula las interrupciones del usuario CTRL+INTERRUPCIÓN (o ESC o COMANDO+PERIODO) en el procedimiento que se ejecuta. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlEnableCancelKey:

Constante	Significado
xlDisabled	La detección de la tecla de cancelación está completamente inhabilitada.
xlInterrupt	El procedimiento activo se interrumpe y el usuario puede depurar o finalizar el procedimiento.
xlErrorHandler	La interrupción se envía al procedimiento como un error, que puede detectarse mediante un controlador de errores configurado con un enunciado On Error GoTo. El código de error detectable es 18.
Comentarios

Esta propiedad debe usarse con mucho cuidado. Si usa xlDisabled, no podrá interrumpir un bucle infinito u otro código que no termine por sí mismo. Similarmente, si usa xlErrorHandler con un controlador de errores que siempre usa el enunciado Resume para regresar, tampoco habrá forma de detener un código erróneo.

La propiedad EnableCancelKey siempre se restablece a xlInterrupt cuando Microsoft Excel vuelve al estado inactivo y no se está ejecutando ningún código. Para detectar o inhabilitar la cancelación en un procedimiento se debe cambiar explícitamente la propiedad EnableCancelKey cada vez que se llame al procedimiento.


Ejemplo de la propiedad EnableCancelKey

Este ejemplo muestra cómo puede utilizarse la propiedad EnableCancelKey para configurar un controlador de cancelación personalizado.

On Error GoTo cancelarControl

Application.EnableCancelKey = xlErrorHandler

MsgBox "Esto puede tardar mucho: presione ESC para cancelar"

For x = 1 To 1000000	' Hace algo 1.000.000 de veces (¡muy largo!)

' hacer algo aquí

Next x

cancelarControl:

If Err = 18 Then

MsgBox "Ha cancelado"

End If


Propiedad Enclosures

Devuelve o establece los archivos adjuntos al formulario del libro como una matriz de cadenas, cada una de las cuales indica la ruta de acceso del archivo que se adjuntará como datos adjuntos. Se permiten rutas de acceso relativas y se considera que se basan en la carpeta actual. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Variant de Lectura/Escritura.


Ejemplo de la propiedad Enclosures

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad EndStyle

Devuelve o establece el estilo final de las barras de error. Puede ser una de las siguientes constantes XlEndStyleCap: xlCap o xlNoCap. Long de Lectura/Escritura.


Ejemplo de la propiedad EndStyle

Este ejemplo establece el estilo final de las barras de error para la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D que tenga barras de error Y para la primera serie.

Charts("Gráfico1").SeriesCollection(1).ErrorBars.EndStyle = xlCap


Método ForwardMailer

Configura el formulario del libro que se reenviará, creando un nuevo formulario previamente configurado con el tema y los documentos adjuntos del formulario ya existente. Válido únicamente si el libro tiene adjunto un formulario recibido (sólo es posible reenviar los libros que se han recibido). Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado.

Sintaxis

expresión.ForwardMailer

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

Después de usar este método para configurar un formulario de libro para reenvío, es posible cambiar el grupo de configuraciones del formulario (si es necesario) mediante la propiedad Mailer y, a continuación, usar el método SendMailer para reenviarlo.

Este método produce un error si se usa en Microsoft Windows.


Ejemplo del método ForwardMailer

Este ejemplo reenvía el libro activo.

ActiveWorkbook.ForwardMailer


Propiedad HasMailer

True si el libro tiene un formulario. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasMailer

Este ejemplo responde al remitente del libro activo.

Set original = ActiveWorkbook

If original.HasMailer Then

original.Reply

original.Mailer.Subject = "Esta es mi respuesta"

ActiveWorkbook.SendMailer

End If


Propiedad HasRoutingSlip

True si el libro tiene una lista de distribución. Boolean de Lectura/Escritura.

Comentarios

Si establece esta propiedad como True, creará una lista de distribución con valores predeterminados. Si la establece como False, eliminará la lista de distribución.


Ejemplo de la propiedad HasRoutingSlip

Este ejemplo crea una lista de distribución para LIBRO1.XLS y, a continuación, envía el libro a tres destinatarios de forma consecutiva.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés García", "Juan Ramírez", "Carlos Díaz")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

End With

Workbooks("LIBRO1.XLS").Route


Propiedad Mailer

Devuelve un objeto Mailer que representa el formulario de PowerTalk adjunto al libro. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Es de sólo lectura.

Comentarios

El objeto Mailer contiene las propiedades necesarias para enviar los libros con PowerTalk. Para enviar un libro por correo, active el formulario con la propiedad HasMailer, establezca sus propiedades y después envíe el libro y el formulario con el método SendMailer.


Ejemplo de la propiedad Mailer

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad MarkerBackgroundColor

Devuelve o establece el color de fondo del marcador como un valor RGB. Se aplica sólo a los gráficos de líneas, dispersión y radiales. Long de Lectura/Escritura.


Ejemplo de la propiedad MarkerBackgroundColor

Este ejemplo establece los colores de fondo y primer plano del marcador para el segundo punto de la serie uno del Gráfico1.

With Charts("Gráfico1").SeriesCollection(1).Points(2)

.MarkerBackgroundColor = RGB(0,255,0)	' verde

.MarkerForegroundColor = RGB(255,0,0)	' rojo

End With


Propiedad MarkerBackgroundColorIndex

Devuelve o establece el color de fondo de los marcadores como un índice para la paleta de colores activa o bien como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone. Se aplica sólo a los gráficos de líneas, dispersión y radiales. Long de Lectura/Escritura.

Comentarios

En la siguiente ilustración se muestran los valores de índice de color de la paleta de colores predeterminada.


Ejemplo de la propiedad MarkerBackgroundColorIndex

Este ejemplo establece los colores de fondo y primer plano del marcador para el segundo punto de la serie uno del Gráfico1.

With Charts("Gráfico1").SeriesCollection(1).Points(2)

.MarkerBackgroundColorIndex = 4	'verde

.MarkerForegroundColorIndex = 3	'rojo

End With


Propiedad MarkerForegroundColor

Devuelve o establece el color de primer plano del marcador, especificado como un valor RGB. Se aplica sólo a los gráficos de líneas, dispersión y radiales. Long de Lectura/Escritura.


Ejemplo de la propiedad MarkerForegroundColor

Este ejemplo establece los colores de fondo y primer plano del marcador para el segundo punto de la serie uno del Gráfico1.

With Charts("Gráfico1").SeriesCollection(1).Points(2)

.MarkerBackgroundColor = RGB(0,255,0)	' verde

.MarkerForegroundColor = RGB(255,0,0)	' rojo

End With


Propiedad MarkerForegroundColorIndex

Devuelve o establece el color de primer plano de los marcadores como un índice para la paleta de colores activa o bien, como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone. Se aplica sólo a los gráficos de líneas, dispersión y radiales. Long de Lectura/Escritura.

Comentarios

En la siguiente ilustración se muestran los valores de índice de color de la paleta de colores predeterminada.


Ejemplo de la propiedad MarkerForegroundColorIndex

Este ejemplo establece los colores de fondo y primer plano del marcador para el segundo punto de la serie uno del Gráfico1.

With Charts("Gráfico1").SeriesCollection(1).Points(2)

.MarkerBackgroundColorIndex = 4	'verde

.MarkerForegroundColorIndex = 3	'rojo

End With


Método NavigateArrow

Mueve una flecha de rastreo del rango especificado a la celda o celdas precedentes, dependientes o causantes de error. Selecciona la celda precedente, dependiente o de error y devuelve un objeto Range que representa la nueva selección. Este método causa un error si se aplica a una celda sin flechas de rastreo visibles.

Sintaxis

expresión.NavigateArrow(TowardPrecedent, ArrowNumber, LinkNumber)

expresión   Requerida. Una expresión que devuelve un objeto Range.

TowardPrecedent   Variant opcional. Especifica la dirección de movimiento: True si el movimiento es hacia las precedentes, False para moverse hacia las dependientes.

ArrowNumber   Variant opcional. Especifica el número de flecha para moverse; corresponde a la referencia numerada en la fórmula de la celda.

LinkNumber   Variant opcional. Si la flecha es una flecha de referencia externa, el argumento indica qué referencia externa se seguirá. Si este argumento se omite, se seguirá la primera referencia externa.


Ejemplo del método NavigateArrow

Este ejemplo se desplaza a lo largo de la primera flecha de rastreo de la celda A1 de la Hoja1 hacia la celda precedente. El ejemplo debe ejecutarse en una hoja de cálculo que contenga una fórmula en la celda A1 con referencias a las celdas D1, D2 y D3 (por ejemplo, la fórmula =D1*D2*D3). Antes de ejecutar el ejemplo, muestre la barra de herramientas Auditoría, seleccione la celda A1 y elija el botón Rastrear precedentes.

Worksheets("Hoja1").Activate

Range("A1").Select

ActiveCell.NavigateArrow True, 1


Método OpenText

Carga y redistribuye un archivo de texto en forma de libro nuevo con una sola hoja que contiene los datos redistribuidos del archivo de texto.

Sintaxis

expresión.OpenText(Filename, Origin, StartRow, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo)

expresión   Requerida. Una expresión que devuelve un objeto Workbooks.

Filename   String requerida. Especifica el nombre del archivo de texto que se abrirá y redistribuirá.

Origin   Variant opcional. Especifica el origen del archivo de texto. Puede ser una de las siguientes constantes XlPlatform: xlMacintosh, xlWindows o xlMSDOS. Si este argumento se omite, el método usará la configuración actual de la opción Origen del archivo del Asistente para importación de texto.

StartRow   Variant opcional. El número de fila en que comienza a redistribuirse el texto. El valor predeterminado es 1.

DataType   Variant opcional. Especifica el formato de columna de los datos del archivo. Puede ser una de las siguientes constantes XlTextParsingType: xlDelimited o xlFixedWidth. El valor predeterminado es xlDelimited.

TextQualifier   Variant opcional. Especifica el calificador de texto. Puede ser una de las siguientes constantes XlTextQualifier: xlTextQualifierDoubleQuote, xlTextQualifierSingleQuote o xlTextQualifierNone. El valor predeterminado es xlTextQualifierDoubleQuote.

ConsecutiveDelimiter   Variant opcional. True para que los delimitadores consecutivos se consideren uno solo. La configuración predeterminada es False.

Tab   Variant opcional. True para que el delimitador sea el carácter de tabulación (DataType debe ser xlDelimited). El valor predeterminado es False.

Semicolon   Variant opcional. True para que el delimitador sea el signo de punto y coma (DataType debe ser xlDelimited). El valor predeterminado es False.

Comma   Variant opcional. True para que el delimitador sea el carácter de coma (DataType debe ser xlDelimited). El valor predeterminado es False.

Space   Variant opcional. True para que el delimitador sea el carácter de espacio (DataType debe ser xlDelimited). El valor predeterminado es False.

Other   Variant opcional. True para que el delimitador sea el carácter especificado por el argumento OtherChar (DataType debe ser xlDelimited). El valor predeterminado es False.

OtherChar   Variant opcional (requerida si Other es True). Especifica el carácter delimitador cuando Other es True. Si se especifica más de un carácter, sólo se usará el primero de la cadena de caracteres y se ignorará el resto.

FieldInfo   Variant opcional. Una matriz que contiene información redistribuida de las columnas de datos individuales. La interpretación depende del valor de DataType.

Si los datos están delimitados, el argumento será una matriz de matrices de dos elementos, cada una de los cuales especifica las opciones de conversión de una columna en particular. El primer elemento es el número de columna (basado en unos) y el segundo elemento es uno de los siguientes, que especifican cómo se redistribuye la columna:

1	General
2	Texto
3	Fecha MDA
4	Fecha DMA
5	Fecha AMD
6	Fecha MAD
7	Fecha DAM
8	Fecha ADM
9	Se omite la columna
Los especificadores de columna pueden tener cualquier orden. Si un especificador de columna no está presente para una columna en particular de los datos de entrada, la columna se redistribuirá usando la configuración General. En este ejemplo se omite la tercera columna, la primera se redistribuye en forma de texto y las columnas restantes de los datos de origen se redistribuyen con la configuración General:

Array(Array(3, 9), Array(1, 2))

Si los datos de origen tienen columnas de ancho fijo, el primer elemento de cada matriz de dos elementos especificará la posición del primer carácter de la columna (como un entero; un carácter 0 (cero) es el primer carácter). El segundo elemento de la matriz de dos elementos especifica la opción de redistribución de la columna como un número comprendido entre uno y nueve, como se indica en la tabla anterior.

En el siguiente ejemplo se redistribuyen dos columnas de un archivo de ancho fijo. La primera columna incluye los caracteres de 1 a 10. Los caracteres 11, 12, 14 y 15 se omiten. La segunda incluye desde el carácter 16 hasta el último de la línea.

Array(Array(0, 1), Array(10, 9), Array(15, 1))


Ejemplo del método OpenText

Este ejemplo abre el archivo DATOS.TXT y usa el carácter de tabulación como delimitador para distribuir el archivo de texto en una hoja de cálculo.

Workbooks.OpenText filename:="DATOS.TXT", _

dataType:=xlDelimited, tab:=True


Propiedad OutlineFont

True si la fuente es una fuente de contorno. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad no tiene efecto en Windows, pero se conserva su valor (puede establecerse y devolverse).


Ejemplo de la propiedad OutlineFont

Este ejemplo establece la fuente de la celda A1 de la Hoja1 como una fuente de contorno.

Worksheets("Hoja1").Range("A1").Font.OutlineFont = True


Propiedad PatternColor

Devuelve o establece el color de la trama interior, especificado como un valor RGB. Variant de Lectura/Escritura.


Ejemplo de la propiedad PatternColor

Este ejemplo establece el color del diseño interior en el rectángulo uno de la Hoja1.

With Worksheets("Hoja1").Rectangles(1).Interior

.Pattern = xlGrid

.PatternColor = RGB(255,0,0)

End With


Propiedad PatternColorIndex

Devuelve o establece el color del diseño interior como un índice para la paleta de colores activa o bien como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone. Long de Lectura/Escritura.

Comentarios

Establezca esta propiedad como xlColorIndexAutomatic para especificar que el diseño de las celdas o el estilo de relleno de los objetos de dibujo sean automáticos. Establezca esta propiedad como xlColorIndexNone para especificar que no desea un diseño (equivale a establecer la propiedad Pattern del objeto Interior como xlPatternNone).

Comentarios

En la siguiente ilustración se muestran los valores de índice de color de la paleta de colores predeterminada.


Ejemplo de la propiedad PatternColorIndex

Este ejemplo establece el color del diseño interior en el rectángulo uno de la Hoja1.

With Worksheets("Hoja1").Rectangles(1).Interior

.Pattern = xlChecker

.PatternColorIndex = 5

End With


Propiedad Received

True si se ha recibido el formulario del libro (otro usuario lo ha enviado al usuario actual) y el usuario actual no lo ha modificado usando uno de los métodos Reply, ReplyAll o ForwardMailer. PowerTalk requiere que los formularios se reciban para poder reenviarlos o responder a ellos. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Boolean de sólo lectura.


Ejemplo de la propiedad Received

Este ejemplo muestra el estado actual de la propiedad Received.

With ActiveWorkbook

If .HasMailer Then

If .Mailer.Received Then

state = "True"

Else

state = "False"

End If

MsgBox "La propiedad Received es " & state

Else

MsgBox "El libro no tiene formulario"

End If

End With


Método RegisterXLL

Carga un recurso de código XLL y registra automáticamente las funciones y comandos que contiene.

Sintaxis

expresión.RegisterXLL(Filename)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Filename   String requerida. Especifica el nombre del XLL que se cargará.

Comentarios

Este método devuelve True si el recurso de código se carga correctamente; de lo contrario, devuelve False.


Ejemplo del método RegisterXLL

Este ejemplo carga un archivo XLL y registra las funciones y los comandos que contiene.

Application.RegisterXLL "XLMAPI.XLL"


Método Reply

Responde al libro creando un copia del mismo y preiniciando el formulario del nuevo libro que se enviará al autor del libro. Válido únicamente si el libro tiene adjunto un formulario recibido (sólo es posible responder a los libros que se han recibido). Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado.

Sintaxis

expresión.Reply

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

Para responder a un libro, use este método para configurar el formulario, la propiedad Mailer para ajustar los valores del formulario (si es necesario) y después el método SendMailer para enviar la respuesta.

Este método produce un error si se usa en Windows.


Ejemplo del método Reply

Este ejemplo contesta al remitente del libro activo.

Set original = ActiveWorkbook

If original.HasMailer Then

original.Reply

original.Mailer.Subject = "Esta es mi respuesta"

ActiveWorkbook.SendMailer

End If


Método ReplyAll

Responde al libro creando un copia del mismo y preiniciando el formulario del nuevo libro que se enviará a todos los destinatarios del libro. Válido únicamente si el libro tiene adjunto un formulario recibido (sólo es posible responder a los libros que se han recibido). Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado.

Sintaxis

expresión.ReplyAll

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

Para responder a todos los destinatarios de un libro, use este método para configurar el formulario, la propiedad Mailer para ajustar los valores del formulario (si es necesario) y después el método SendMailer para enviar la respuesta.

Este método produce un error si se usa en Windows.


Ejemplo del método ReplyAll

Este ejemplo responde a todos los destinatarios del libro activo.

Set original = ActiveWorkbook

If original.HasMailer Then

original.ReplyAll

original.Mailer.Subject = "Esta es mi respuesta"

ActiveWorkbook.SendMailer

End If


Método Route

Distribuye el libro usando la lista de distribución activa.

Sintaxis

expresión.Route

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

La distribución de un libro establece la propiedad Routed como True.


Ejemplo del método Route

Este ejemplo crea una lista de distribución para LIBRO1.XLS y, a continuación, envía el libro a tres destinatarios de forma consecutiva.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés Díaz", "Juan Ramírez", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

End With

Workbooks("LIBRO1.XLS").Route


Propiedad Routed

True si el libro se ha distribuido al siguiente destinatario. False si aún no se ha distribuido. Boolean de sólo lectura.

Comentarios

Si el libro no se ha distribuido al destinatario actual, esta propiedad siempre será False (por ejemplo, si el documento no tiene lista de distribución o si se acaba de crear una).


Ejemplo de la propiedad Routed

Este ejemplo envía el libro al siguiente destinatario.

If ActiveWorkbook.HasRoutingSlip And _

Not ActiveWorkbook.Routed Then

ActiveWorkbook.Route

End If


Propiedad RoutingSlip

Devuelve un objeto RoutingSlip que representa la lista de distribución del libro. Si esta propiedad se lee y no existe una lista de distribución, se producirá un error (compruebe primero la propiedad HasRoutingSlip). Es de sólo lectura.


Ejemplo de la propiedad RoutingSlip

Este ejemplo crea una lista de distribución para LIBRO1.XLS y, a continuación, envía el libro a tres destinatarios de forma consecutiva.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés García", "Juan Díaz", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

End With

Workbooks("LIBRO1.XLS").Route


Método SaveCopyAs

Guarda una copia del libro en un archivo pero no modifica el libro abierto en la memoria.

Sintaxis

expresión.SaveCopyAs(Filename)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Filename   Requerido. Especifica el nombre de archivo de la copia.


Ejemplo del método SaveCopyAs

Este ejemplo guarda una copia del libro activo.

ActiveWorkbook.SaveCopyAs "C:\TEMP\XXXX.XLS"

Este ejemplo es el mismo en Microsoft Excel para Macintosh.

ActiveWorkbook.SaveCopyAs "HD:Carpeta Temporal:Archivo de Libro Temporal"


Propiedad SendDateTime

Devuelve la fecha y la hora en que se envió el formulario. Para que esta propiedad sea válida el formulario ya debe haberse enviado. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Date de sólo lectura.


Ejemplo de la propiedad SendDateTime

Este ejemplo muestra el remitente del libro, junto a la fecha y la hora en que se envió.

If ActiveWorkbook.HasMailer Then

MsgBox "Este libro lo ha enviado " & _

ActiveWorkbook.Mailer.Sender & " a las " & _

Format(ActiveWorkbook.Mailer.SendDateTime, "Fecha general")

End If


Propiedad Sender

Devuelve el nombre del usuario que envió el formulario del libro. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. String de sólo lectura.


Ejemplo de la propiedad Sender

Este ejemplo muestra el remitente del libro, junto a la fecha y la hora en que se envió.

If ActiveWorkbook.HasMailer Then

MsgBox "Este libro lo ha enviado " & _

ActiveWorkbook.Mailer.Sender & " a las " & _

Format(ActiveWorkbook.Mailer.SendDateTime, "Fecha general")

End If


Método SendMail

Envía el libro usando el sistema de correo que esté instalado.

Sintaxis

expresión.SendMail(Recipients, Subject, ReturnReceipt)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Recipients   Variant requerida. Especifica el nombre del destinatario en forma de texto o bien como una matriz de cadenas de texto, si hay varios destinatarios. Debe especificarse al menos un destinatario para que todos se agreguen como destinatarios de correo electrónico.

Subject   Variant opcional. Especifica el asunto del mensaje. Si este argumento se omite, se usará el nombre del documento.

ReturnReceipt   Variant opcional. True para solicitar un acuse de recibo. False para no solicitar acuse de recibo. El valor predeterminado es False.

Comentarios

Use el método SendMail en los sistemas de correo electrónico de Microsoft Mail (MAPI o Microsoft Mail para Apple Macintosh). Pase la información de dirección como parámetros.

Use el método SendMailer en los sistemas de correo electrónico de PowerTalk en Macintosh. El objeto Mailer contiene la información de dirección de PowerTalk.


Ejemplo del método SendMail

Este ejemplo envía el libro activo a un solo destinatario.

ActiveWorkbook.SendMail recipients:="Juan Díaz"


Método SendMailer

Envía el libro usando el formulario de PowerTalk. Sólo disponible en Macintosh, con el sistema de correo electrónico PowerTalk instalado y sólo puede emplearse en un libro que tenga un formulario adjunto.

Sintaxis

expresión.SendMailer(FileFormat, Priority)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

FileFormat   Variant opcional. Especifica el formato de archivo del libro que se enviará. Vea la propiedad FileFormat para obtener una lista de los tipos válidos.

Priority   Variant opcional. Especifica la prioridad de entrega del mensaje. Puede ser una de las siguientes constantes XlPriority: xlPriorityNormal, xlPriorityHigh o xlPriorityLow. El valor predeterminado es xlPriorityNormal.

Comentarios

Use el método SendMail en los sistemas de correo electrónico de Microsoft Mail (MAPI o Microsoft Mail para Apple Macintosh). Pase la información de dirección como parámetros.

Use el método SendMailer en los sistemas de correo electrónico de PowerTalk en Macintosh. El objeto Mailer contiene la información de dirección de PowerTalk.


Ejemplo del método SendMailer

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad ToRecipients

Devuelve o establece los destinatarios directos del formulario. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Variant de Lectura/Escritura.

Comentarios

Esta propiedad es una matriz de cadenas que especifica la dirección, en uno de los formatos siguientes:

•	Un registro en el Catálogo personal preferente. Estos nombres tienen un solo nivel de profundidad (por ejemplo, "Felipe" o "Julia").

•	Una ruta de acceso completa que especifica un registro de un catálogo personal ("HD:Carpeta Excel:Mi Catálogo:Tomás") o un registro normal ("HD:Carpeta:Felipe").

•	Una ruta de acceso relativa con respecto a la carpeta de trabajo activa, que especifica un registro de un catálogo personal ("Mi Catálogo:Tomás") o un registro normal ("Tomás").

•	Una ruta de acceso en un árbol de catálogos de PowerShare, en la forma "NOMBRE_CATÁLOGO:<nodo>:NOMBRE_REGISTRO", donde <nodo> es una ruta de acceso a un catálogo de PowerShare. Por ejemplo, una ruta de acceso completa podría ser "AppleTalk:Zona Edificio Norte:Mac de Vicente".


Ejemplo de la propiedad ToRecipients

Este ejemplo configura el objeto Mailer para el libro uno y, a continuación, envía el libro.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Carlos")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Método UpdateFromFile

Actualiza un libro de sólo lectura con la versión del archivo del libro guardada en el disco, si dicha versión es más reciente que la copia actual del libro en la memoria. Si la copia del disco no ha cambiado desde que se cargó el libro, no volverá a cargarse la copia del libro en la memoria.

Sintaxis

expresión.UpdateFromFile

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

Este método es útil si un usuario A abre un libro como de sólo lectura y otro usuario B lo abre como de Lectura/Escritura. Si el usuario B guarda en el disco una versión más reciente del libro mientras el usuario A tiene abierto el libro, el usuario A no podrá obtener una versión actualizada sin antes cerrar y volver a abrir el libro, por lo que perderá las configuraciones de presentación en pantalla. El método UpdateFromFile actualiza la copia del libro en la memoria a partir del archivo en el disco.


Ejemplo del método UpdateFromFile

Este ejemplo actualiza el libro activo a partir de su versión guardada en el disco.

ActiveWorkbook.UpdateFromFile


Método Volatile

Marca una función definida por el usuario como volátil. Una función volátil debe volver a calcularse siempre que se efectúe un cálculo en cualquier celda de la hoja de cálculo. Una función no volátil se vuelve a calcular sólo cuando cambian las variables de entrada. Este método no tiene efecto si no está contenido en una función definida por el usuario empleada para calcular una celda de hoja de cálculo.

Sintaxis

expresión.Volatile(Volatile)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Volatile   Variant opcional. True para marcar la función como volátil. False para marcarla como no volátil. El valor predeterminado es True.


Ejemplo del método Volatile

Este ejemplo marca la función definida por el usuario “Mi_Func” como volátil. La función se volverá a calcular cuando se efectúe un cálculo en alguna celda de la hoja en la que aparezca esta función.

Function Mi_Func()

Application.Volatile

'

'	Resto de la función

'

End Function


Propiedad WindowNumber

Devuelve el número de la ventana. Por ejemplo, una ventana llamada “Libro1.xls:2” tiene como número de ventana 2. La mayoría de las ventanas tienen el número 1. Long de sólo lectura.

Comentarios

El número de ventana no es lo mismo que el índice de ventana (el valor que devuelve la propiedad Index), que es la posición de la ventana en el conjunto Windows.


Ejemplo de la propiedad WindowNumber

Este ejemplo crea una nueva ventana de la ventana activa y, a continuación, muestra el número de la nueva ventana.

ActiveWindow.NewWindow

MsgBox ActiveWindow.WindowNumber


Propiedad XValues

Devuelve o establece una matriz de los valores X de una serie de un gráfico. La propiedad XValues puede establecerse como un rango de una hoja de cálculo o bien como una matriz de valores, pero no puede ser una combinación de ambos. Variant de Lectura/Escritura.


Ejemplo de la propiedad XValues

Este ejemplo establece los valores X de la serie uno del Gráfico1 como el rango B1:B5 de la Hoja1.

Charts("Gráfico1").SeriesCollection(1).XValues = _

Worksheets("Hoja1").Range("B1:B5")

Este ejemplo usa una matriz para establecer los valores de los puntos individuales de la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1).XValues = _

Array(5.0, 6.3, 12.6, 28, 50)


Códigos de formato para encabezados y pies de página

Los códigos de formato especiales que se indican a continuación pueden incluirse como parte de las propiedades de encabezado y pie de página (LeftHeader, CenterHeader, RightHeader, LeftFooter, CenterFooter, RightFooter).

Código de formato	Descripción
&L	Alinea a la izquierda los caracteres que le siguen.
&C	Centra los caracteres que le siguen.
&R	Alinea a la derecha los caracteres que le siguen.
&E	Activa o desactiva la impresión del doble subrayado.
&X	Activa o desactiva la impresión de superíndices.
&Y	Activa o desactiva la impresión de subíndices.
&B	Activa o desactiva la impresión de negritas.
&I	Activa o desactiva la impresión de cursiva.
&U	Activa o desactiva la impresión del subrayado.
&S	Activa o desactiva la impresión del tachado.
&O	Activa o desactiva la impresión de contornos (sólo Macintosh).
&H	Activa o desactiva la impresión de sombreados (sólo Macintosh).
&D	Imprime la fecha de actual.
&T	Imprime la hora actual.
&F	Imprime el nombre del documento.
&A	Imprime el nombre de la ficha del libro.
&P	Imprime el número de página.
&P+número	Imprime el número de página más el número especificado.
&P-número	Imprime el número de página menos el número especificado.
&&	Imprime un solo símbolo de “y” comercial.
& "fuente"	Imprime los caracteres que siguen en la fuente especificada. Asegúrese de incluir comillas dobles.
&nn	Imprime los caracteres que siguen en el tamaño de fuente especificado. Use un número de dos cifras para especificar un tamaño en puntos.
&N	Imprime el número total de páginas del documento.


Método AddCustomList

Agrega una lista personalizada para Autorrelleno y para ordenación personalizados.

Sintaxis

expresión.AddCustomList(ListArray, ByRow)

expresión   Requerida. Una expresión que devuelve un objeto Application.

ListArray   Variant requerida. Especifica los datos de origen, ya sea como una matriz de cadenas o como un objeto Range.

ByRow   Variant opcional. Se usa únicamente si ListArray es un objeto Range. True para crear una lista personalizada a partir de cada fila del rango. False para crear una lista personalizada a partir de cada columna del rango. Si este argumento se omite y el rango contiene más filas que columnas (o el mismo número de ambas), Microsoft Excel creará una lista personalizada a partir de cada columna del rango. Si este argumento se omite y el número de columnas es mayor que el de filas, Microsoft Excel creará una lista personalizada a partir de cada fila del rango.

Comentarios

Si la lista que se intenta agregar ya existe, este método no hará nada.


Ejemplo del método AddCustomList

Este ejemplo agrega una matriz de cadenas como una lista personalizada.

Application.AddCustomList Array("piñones", "catalinas", _

"aparatos", "instrumentos")


Propiedad AlertBeforeOverwriting

True si Microsoft Excel muestra un mensaje antes de sobrescribir el contenido de las celdas no vacías durante una operación de edición con arrastrar y colocar. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AlertBeforeOverwriting

Este ejemplo hace que Microsoft Excel muestre un mensaje de alerta antes de sobrescribir las celdas no vacías durante una operación de edición con arrastrar y colocar.

Application.AlertBeforeOverwriting = True


Método AutoFilter

Sintaxis 1: Muestra u oculta las flechas desplegables de Autofiltro.

Sintaxis 2: Filtra una lista usando Autofiltro.

Sintaxis 1

expresión.AutoFilter

Sintaxis 2

expresión.AutoFilter(Field, Criteria1, Operator, Criteria2)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Field   Variant opcional. El valor en enteros del desplazamiento del campo que servirá de base para el filtro (medido desde la izquierda de la lista; el campo de la izquierda el campo número uno).

Criteria1   Variant opcional. El criterio (una cadena; por ejemplo, "101"). Use "=" para buscar campos vacíos o bien "<>" para buscar campos no vacíos. Si este argumento se omite, el título será Todos. Si Operator es xlTop10Items, Criteria1 especifica el número de elementos (por ejemplo, "10").

Operator   Variant opcional. Puede ser una de las siguientes constantes XlAutoFilterOperator: xlAnd, xlBottom10Items, xlBottom10Percent, xlOr, xlTop10Items o xlTop10Percent. Use xlAnd y xlOr con Criteria1 y Criteria2 para crear criterios compuestos.

Criteria2   Variant opcional. El segundo criterio (una cadena). Se emplea con Criteria1 y Operator para crear criterios compuestos.


Ejemplo del método AutoFilter

Este ejemplo filtra una lista que comienza en la celda A1 de la Hoja1 para mostrar sólo las entradas en las que el campo uno sea igual a la cadena "Otis".

Worksheets("Hoja1").Range("A1").AutoFilter _

field:=1, _

criteria1:="Otis"


Propiedad AutomaticStyles

True si el esquema usa estilos automáticos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AutomaticStyles

Este ejemplo configura el esquema de la Hoja1 para que use estilos automáticos.

Worksheets("Hoja1").Outline.AutomaticStyles = True


Propiedad BottomMargin

Devuelve o establece el tamaño del margen inferior, en puntos. Double de Lectura/Escritura.

Comentarios

Los márgenes se establecen o devuelven en puntos. Use uno de los métodos InchesToPoints o CentimetersToPoints para la conversión.


Ejemplo de la propiedad BottomMargin

Estos dos ejemplos establecen el margen inferior de la Hoja1 como 0,5 pulgadas (36 puntos).

Worksheets("Hoja1").PageSetup.BottomMargin = _

Application.InchesToPoints(0.5)

Worksheets("Hoja1").PageSetup.BottomMargin = 36

Este ejemplo muestra el valor actual del margen inferior de la Hoja1.

marginInches = Worksheets("Hoja1").PageSetup.BottomMargin / _

Application.InchesToPoints(1)

MsgBox "El margen inferior actual mide " & marginInches & " pulgadas"


Propiedad CenterFooter

Devuelve o establece la parte central de un pie de página. String de Lectura/Escritura.

Comentarios

En el texto del pie de página pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad CenterFooter

Este ejemplo imprime el nombre del libro y el número de página en la parte inferior de cada página.

Worksheets("Hoja1").PageSetup.CenterFooter = "&F página &P"


Propiedad CenterHeader

Devuelve o establece la parte central del encabezado. String de Lectura/Escritura.

Comentarios

En el texto de los encabezados pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad CenterHeader

Este ejemplo imprime la fecha y el número de página en la parte superior de cada página.

Worksheets("Hoja1").PageSetup.CenterHeader = "&D página &P de &N"


Propiedad CenterHorizontally

True si la hoja se centra horizontalmente en la página cuando se imprima. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CenterHorizontally

Este ejemplo centra horizontalmente la Hoja1 cuando se imprime.

Worksheets("Hoja1").PageSetup.CenterHorizontally = True


Propiedad CenterVertically

True si la hoja se centrará verticalmente en la página cuando se imprima. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CenterVertically

Este ejemplo centra la Hoja1 verticalmente cuando se imprime.

Worksheets("Hoja1").PageSetup.CenterVertically = True


Propiedad ChartSize

Devuelve o establece cómo se ajustará la escala de un gráfico para que ocupe una página. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlObjectSize:

Constante	Significado
xlScreenSize	Imprime el gráfico con el mismo tamaño que tiene en la pantalla
xlFitToPage	Imprime el gráfico con el mayor tamaño posible, conservando la relación de alto y ancho que se muestra en la pantalla.
xlFullPage	Imprime el gráfico ajustado al tamaño de la página, ajustando la relación de alto y ancho según sea necesario.
Comentarios

Esta propiedad sólo se aplica a hojas de gráficos (no puede emplearse con gráficos incrustados)


Ejemplo de la propiedad ChartSize

Este ejemplo ajusta la escala del primer gráfico del libro activo para que ocupe una página completa.

ActiveWorkbook.Charts(1).PageSetup.ChartSize = xlFullPage


Método DeleteCustomList

Elimina una lista personalizada.

Sintaxis

expresión.DeleteCustomList(ListNum)

expresión   Requerida. Una expresión que devuelve un objeto Application.

ListNum   Long requerido. El número de la lista personalizada. Debe ser mayor o igual que 5 (Microsoft Excel tiene cuatro listas personalizadas integradas, que no pueden eliminarse).

Comentarios

Este método produce un error si el número de la lista es menor que 5 o si hace referencia a una lista personalizada inexistente.


Ejemplo del método DeleteCustomList

Este ejemplo elimina una lista personalizada.

n = Application.GetCustomListNum(Array("piñones", "catalinas", _

"aparatos", "instrumentos"))

Application.DeleteCustomList n


Propiedad DisplayHorizontalScrollBar

True si la barra de desplazamiento horizontal está visible. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayHorizontalScrollBar

Este ejemplo activa la barra de desplazamiento horizontal en la ventana activa.

ActiveWindow.DisplayHorizontalScrollBar = True


Propiedad DisplayVerticalScrollBar

True si la barra de desplazamiento vertical está visible. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayVerticalScrollBar

Este ejemplo activa la barra de desplazamiento vertical en la ventana activa.

ActiveWindow.DisplayVerticalScrollBar = True


Propiedad DisplayWorkbookTabs

True si se muestran las fichas del libro. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayWorkbookTabs

Este ejemplo activa las etiquetas del libro.

ActiveWindow.DisplayWorkbookTabs = True


Propiedad Draft

True si la hoja se imprime sin gráficos. Boolean de Lectura/Escritura.

Comentarios

Establezca esta propiedad como True para acelerar la impresión (ya que no se imprimen los gráficos).


Ejemplo de la propiedad Draft

Este ejemplo desactiva la impresión de gráficos en la Hoja1.

Worksheets("Hoja1").PageSetup.Draft = True


Propiedad EditDirectlyInCell

True si Microsoft Excel permite operaciones de edición en las celdas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EditDirectlyInCell

Este ejemplo activa la edición en las celdas.

Application.EditDirectlyInCell = True


Propiedad FilterMode

True si la hoja de cálculo está en el modo filtrar. Boolean de sólo lectura.

Comentarios

Esta propiedad tiene el valor True si la hoja de cálculo contiene una lista filtrada en la cual hay filas ocultas.


Ejemplo de la propiedad FilterMode

Este ejemplo muestra el estado de filtro de la Hoja1 en un cuadro de mensaje.

If Worksheets("Hoja1").FilterMode = True Then

MsgBox "El modo de filtro está activado"

Else

MsgBox "El modo de filtro está desactivado"

End If


Propiedad FirstPageNumber

Devuelve o establece el primer número de página que se usará para la impresión. Si es xlAutomatic, Microsoft Excel elegirá el primer número de página. El valor predeterminado es xlAutomatic. Long de Lectura/Escritura.


Ejemplo de la propiedad FirstPageNumber

Este ejemplo establece el primer número de página de la Hoja1 como 100.

Worksheets("Hoja1").PageSetup.FirstPageNumber = 100


Propiedad FitToPagesTall

Devuelve o establece el número de páginas en que se ajustará el tamaño vertical de la hoja de cálculo para la impresión. Esta propiedad sólo se aplica a hojas de cálculo. Variant de Lectura/Escritura.

Comentarios

Si esta propiedad es False, Microsoft Excel ajustará el tamaño de la hoja de cálculo de acuerdo con la propiedad FitToPagesWide.

Si la propiedad Zoom es True, se omitirá la propiedad FitToPagesTall.


Ejemplo de la propiedad FitToPagesTall

Este ejemplo hace que Microsoft Excel imprima la Hoja1 exactamente en una página.

With Worksheets("Hoja1").PageSetup

.Zoom = False

.FitToPagesTall = 1

.FitToPagesWide = 1

End With


Propiedad FitToPagesWide

Devuelve o establece el número de páginas en que se ajustará la escala a lo ancho de la hoja de cálculo para la impresión. Esta propiedad sólo se aplica a hojas de cálculo. Variant de Lectura/Escritura.

Comentarios

Si esta propiedad es False, Microsoft Excel ajustará la escala de la hoja de cálculo de acuerdo con la propiedad FitToPagesTall.

Si la propiedad Zoom es True, se omitirá la propiedad FitToPagesWide.


Ejemplo de la propiedad FitToPagesWide

Este ejemplo hace que Microsoft Excel imprima la Hoja1 exactamente en una página.

With Worksheets("Hoja1").PageSetup

.Zoom = False

.FitToPagesTall = 1

.FitToPagesWide = 1

End With


Propiedad FontStyle

Devuelve o establece el estilo de la fuente. String de Lectura/Escritura.

Comentarios

El cambio de esta propiedad puede afectar a otras propiedades Font (por ejemplo, Bold e Italic).


Ejemplo de la propiedad FontStyle

Este ejemplo establece el estilo de fuente de la celda A1 de la Hoja1 como negrita y cursiva.

Worksheets("Hoja1").Range("A1").Font.FontStyle = "Negrita cursiva"


Propiedad FooterMargin

Devuelve o establece la distancia en puntos desde el borde inferior de la página hasta el pie de página.


Ejemplo de la propiedad FooterMargin

Este ejemplo establece el margen del pie de página de la Hoja1 en 0,5 pulgadas.

Worksheets("Hoja1").PageSetup.FooterMargin = _

Application.InchesToPoints(0.5)


Método GetCustomListContents

Devuelve el número de la lista personalizada (una matriz de cadenas de caracteres).

Sintaxis

expresión.GetCustomListContents(ListNum)

expresión   Requerida. Una expresión que devuelve un objeto Application.

ListNum   Long requerido. El número de la lista.


Ejemplo del método GetCustomListContents

Este ejemplo escribe los elementos de la primera lista personalizada en la columna uno de la Hoja1.

listArray = Application.GetCustomListContents(1)

For i = LBound(listArray, 1) To UBound(listArray, 1)

Worksheets("hoja1").Cells(i, 1).Value = listArray(i)

Next i


Método GetCustomListNum

Devuelve el número de la lista personalizada correspondiente a una matriz de cadenas. Puede usar este método para buscar listas integradas y listas definidas por el usuario.

Sintaxis

expresión.GetCustomListNum(ListArray)

expresión   Requerida. Una expresión que devuelve un objeto Application.

ListArray   Variant requerida. Una matriz de cadenas de caracteres.

Comentarios

Este método produce un error si no existe una lista correspondiente.


Ejemplo del método GetCustomListNum

Este ejemplo elimina una lista personalizada.

n = Application.GetCustomListNum(Array("piñones", "catalinas", _

"aparatos", "instrumentos"))

Application.DeleteCustomList n


Propiedad HeaderMargin

Devuelve o establece la distancia en puntos desde el borde superior de la página hasta el encabezado. Double de Lectura/Escritura.

Comentarios

Los márgenes se establecen o devuelven en puntos. Use uno de los métodos InchesToPoints o CentimetersToPoints para convertir medidas de pulgadas a centímetros.


Ejemplo de la propiedad HeaderMargin

Este ejemplo establece el margen del encabezado de la Hoja1 en 0,5 pulgadas.

Worksheets("Hoja1").PageSetup.HeaderMargin = _

Application.InchesToPoints(0.5)


Propiedad LeftFooter

Devuelve o establece la parte izquierda del pie de página. String de Lectura/Escritura.

Comentarios

En el texto del pie de página pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad LeftFooter

Este ejemplo imprime el número de página en la esquina inferior izquierda de cada página.

Worksheets("Hoja1").PageSetup.LeftFooter = "&P"


Propiedad LeftHeader

Devuelve o establece la parte izquierda del encabezado. String de Lectura/Escritura.

Comentarios

En el texto de los encabezados pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad LeftHeader

Este ejemplo imprime la fecha en la esquina superior izquierda de cada página.

Worksheets("Hoja1").PageSetup.LeftHeader = "&D"


Propiedad LeftMargin

Devuelve o establece el tamaño del margen izquierdo, en puntos. Double de Lectura/Escritura.

Comentarios

Los márgenes se establecen o devuelven en puntos. Use uno de los métodos InchesToPoints o CentimetersToPoints para convertir medidas de pulgadas a centímetros.


Ejemplo de la propiedad LeftMargin

Este ejemplo establece el margen izquierdo de la Hoja1 en 1,5 pulgadas.

Worksheets("Hoja1").PageSetup.LeftMargin = _

Application.InchesToPoints(1.5)

Este ejemplo establece el margen izquierdo de la Hoja1 en 2 centímetros.

Worksheets("Hoja1").PageSetup.LeftMargin = _

Application.CentimetersToPoints(2)

Este ejemplo muestra el valor actual del margen izquierdo de la Hoja1.

marginInches = Worksheets("Hoja1").PageSetup.LeftMargin / _

Application.InchesToPoints(1)

MsgBox "El margen izquierdo actual mide " & marginInches & " pulgadas"


Método MailLogoff

Cierra una sesión de correo MAPI establecida por Microsoft Excel.

Sintaxis

expresión.MailLogoff

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Este método no puede emplearse para cerrar o abandonar Microsoft Mail.


Ejemplo del método MailLogoff

Este ejemplo cierra la sesión de correo establecida, si existe.

If Not IsNull(Application.MailSession) Then Application.MailLogoff


Método MailLogon

Inicia MAPI Mail o Microsoft Exchange y establece una sesión de correo. Si todavía no se está ejecutando Microsoft Mail, deberá emplear este método para establecer una sesión de correo que le permita usar las funciones de correo o de distribución de documentos.

Sintaxis

expresión.MailLogon(Name, Password, DownloadNewMail)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Name   Variant opcional. El nombre de la cuenta de correo o del perfil de Microsoft Exchange. Si este argumento se omite, se usará el nombre de la cuenta de correo predeterminada.

Password   Variant opcional. La contraseña de la cuenta de correo. Este argumento se omite en Microsoft Exchange.

DownloadNewMail   Variant opcional. True para transferir el correo nuevo inmediatamente.

Comentarios

Microsoft Excel abandonará las sesiones de correo que previamente estableció antes de intentar establecer la nueva sesión.

Para entrar en la sesión de correo predeterminada del sistema, omita los parámetros de nombre y contraseña.


Ejemplo del método MailLogon

Este ejemplo inicia la sesión de correo y transfiere el correo existente inmediatamente.

If IsNull(Application.MailSession) Then

Application.MailLogon "oscarx", "micontraseña", True

End If


Propiedad MailSession

Devuelve el número de sesión de MAPI Mail en forma de cadena de caracteres hexadecimal (si hay una sesión activa) o bien Null si no hay ninguna sesión. Variant de sólo lectura.

Comentarios

Esta propiedad sólo se aplica a sesiones de correo creadas por Microsoft Excel (no devuelve un número de sesión para Microsoft Mail).

Esta propiedad no se usa en sistemas de correo PowerTalk.


Ejemplo de la propiedad MailSession

Este ejemplo cierra la sesión de correo establecida, si existe.

If Not IsNull(Application.MailSession) Then Application.MailLogoff


Propiedad MailSystem

Devuelve el sistema de correo instalado en la máquina central. Puede ser una de las siguientes constantes XlMailSystem: xlNoMailSystem, xlMAPI o xlPowerTalk. Long de sólo lectura.


Ejemplo de la propiedad MailSystem

Este ejemplo muestra el nombre del sistema de correo instalado en el equipo.

Select Case Application.MailSystem

Case xlMAPI

MsgBox "El sistema de correo es Microsoft Mail"

Case xlPowerTalk

MsgBox "El sistema de correo es PowerTalk"

Case xlNoMailSystem

MsgBox "No hay ningún sistema de correo instalado"

End Select


Método NextLetter

Abre el mensaje más antiguo no leído de Microsoft Excel que se encuentra en la bandeja de entrada. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado.

Sintaxis

expresión.NextLetter

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Este método devuelve un objeto Workbook para el libro que se acaba de abrir o bien Null si no hay más libros para abrir.

Este método produce un error si se usa en Windows.


Ejemplo del método NextLetter

Este ejemplo abre la carta no leída más antigua de Microsoft Excel que se encuentra en la bandeja de entrada.

If Application.MailSystem = xlPowerTalk Then _

Application.NextLetter


Propiedad Order

Objeto PageSetup: Devuelve o establece el orden que Microsoft Excel usará para numerar las páginas al imprimir una hoja de cálculo extensa. Puede ser una de las siguientes constantes XlOrder: xlDownThenOver o xlOverThenDown. Esta propiedad sólo se aplica a hojas de cálculo. Long de Lectura/Escritura.

Objeto Trendline: Devuelve o establece el orden de línea de tendencia (un entero mayor que uno) si el tipo de la línea de tendencia es xlPolynomial. Long de Lectura/Escritura.


Ejemplo de la propiedad Order

Este ejemplo divide la Hoja1 en páginas cuando se imprime la hoja de cálculo. La numeración y la impresión empiezan en la primera página, siguiendo hacia las páginas de la derecha y después hacia abajo para continuar imprimiendo la hoja.

Worksheets("Hoja1").PageSetup.Order = xlOverThenDown


Propiedad PaperSize

Sólo Windows. Devuelve o establece el tamaño del papel. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlPaperSize (es posible que algunas impresoras no acepten algunos de los tamaños de papel):

Constante	Significado
xlPaperLetter	Carta (8 1/2 x 11 pda)
xlPaperLetterSmall	Carta pequeña (8 1/2 x 11 pda)
xlPaperTabloid	Tabloide (11 pda. x 17 pda.)
xlPaperLedger	Doble hoja (11 pda. x 17 pda.)
xlPaperLegal	Oficio (8 1/2 x 14 pda)
xlPaperStatement	Factura (5 1/2 x 8 1/2 pda)
xlPaperExecutive	Ejecutivo (7 1/2 x 10 1/2 pda)
xlPaperA3	A3 (297 mm x 420 mm)
xlPaperA4	A4 (210 mm x 297 mm)
xlPaperA4Small	A4 (210 mm x 297 mm)
xlPaperA5	A5 (148 mm x 210 mm)
xlPaperB4	B4 (250 mm x 354 mm)
xlPaperB5	B5 (182 mm x 257 mm)
xlPaperFolio	Circular (8 1/2 x 13 pda)
xlPaperQuarto	Cuarto (215 mm x 275 mm)
xlPaper10x14	10 pda x 14 pda
xlPaper11x17	11 pda x 17 pda
xlPaperNote	Nota (8 1/2 x 11 pda)
xlPaperEnvelope9	Sobre #9 (3 7/8 x 8 7/8 pda)
xlPaperEnvelope10	Sobre #10 (4 1/8 x 9 1/2 pda)
xlPaperEnvelope11	Sobre #11 (4 1/2 x 10 3/8 pda)
xlPaperEnvelope12	Sobre #12 (4 1/2 x 11 pda)
xlPaperEnvelope14	Sobre #14 (5 x 11 ½ pda)
xlPaperCsheet	Hoja tamaño C
xlPaperDsheet	Hoja tamaño D
xlPaperEsheet	Hoja tamaño E
xlPaperEnvelopeDL	Sobre DL (110 x 220 mm)
xlPaperEnvelopeC3	Sobre C3 (324 x 458 mm)
xlPaperEnvelopeC4	Sobre C4 (229 x 324 mm)
xlPaperEnvelopeC5	Sobre C5 (162 x 229 mm)
xlPaperEnvelopeC6	Sobre C6 (114 x 162 mm)
xlPaperEnvelopeC65	Sobre C65 (114 x 229 mm)
xlPaperEnvelopeB4	Sobre B4 (250 x 353 mm)
xlPaperEnvelopeB5	Sobre B5 (176 x 250 mm)
xlPaperEnvelopeB6	Sobre B6 (176 x 125 mm)
xlPaperEnvelopeItaly	Sobre (110 x 230 mm)
xlPaperEnvelopeMonarch	Sobre Monarca (3 7/8 x 7 1/2 pda)
xlPaperEnvelopePersonal	Sobre (3 5/8 x 6 ½ pda)
xlPaperFanfoldUS	Continuo estándar (14 7/8 x 11 pda)
xlPaperFanfoldStdGerman	Continuo alemán estándar (8 1/2 x 12 pda)
xlPaperFanfoldLegalGerman	Continuo alemán oficio (8 1/2 x 13 pda)
xlPaperUser	Definido por el usuario.


Ejemplo de la propiedad PaperSize

Este ejemplo establece el tamaño de papel de la Hoja1 como oficio.

Worksheets("Hoja1").PageSetup.PaperSize = xlPaperLegal


Propiedad PrintGridlines

True si las líneas de división de las celdas se imprimen en la página. Esta propiedad sólo se aplica a hojas de cálculo. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PrintGridlines

Este ejemplo imprime las líneas de división de las celdas cuando se imprime la Hoja1.

Worksheets("Hoja1").PageSetup.PrintGridlines = True


Propiedad PrintHeadings

True si se imprimen encabezados de fila y de columna en esta página. Esta propiedad sólo se aplica a hojas de cálculo. Boolean de Lectura/Escritura.

Comentarios

La propiedad DisplayHeadings controla la presentación en pantalla de los encabezados.


Ejemplo de la propiedad PrintHeadings

Este ejemplo desactiva la impresión de encabezados en la Hoja1.

Worksheets("Hoja1").PageSetup.PrintHeadings = False


Propiedad PrintNotes

True si las notas de las celdas se imprimen como notas finales de la hoja. Esta propiedad sólo se aplica a hojas de cálculo. Boolean de Lectura/Escritura.

Comentarios

Use la propiedad PrintComments para imprimir los comentarios como cuadros de texto o notas finales.


Ejemplo de la propiedad PrintNotes

Este ejemplo desactiva la impresión de notas.

Worksheets("Hoja1").PageSetup.PrintNotes = False


Propiedad PromptForSummaryInfo

True si Microsoft Excel solicita un resumen la primera vez que se guardan los archivos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PromptForSummaryInfo

Este ejemplo muestra un mensaje solicitando información de resumen la primera vez que se guardan los archivos.

Application.PromptForSummaryInfo = True


Propiedad RightFooter

Devuelve o establece la parte derecha del pie de página. String de Lectura/Escritura.

Comentarios

En el texto del pie de página pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad RightFooter

Este ejemplo imprime el número de página en la esquina inferior derecha de cada página.

Worksheets("Hoja1").PageSetup.RightFooter = "&P"


Propiedad RightHeader

Devuelve o establece la parte derecha del encabezado. String de Lectura/Escritura.

Comentarios

En el texto de los encabezados pueden emplearse códigos de formato especiales.


Ejemplo de la propiedad RightHeader

Este ejemplo imprime el nombre de archivo en la esquina superior derecha de cada página.

Worksheets("Hoja1").PageSetup.RightHeader = "&F"


Propiedad RightMargin

Devuelve o establece el tamaño del margen derecho, en puntos. Double de Lectura/Escritura.

Comentarios

Los márgenes se establecen o devuelven en puntos. Use uno de los métodos InchesToPoints o CentimetersToPoints para convertir medidas de pulgadas a centímetros.


Ejemplo de la propiedad RightMargin

Este ejemplo establece el margen derecho de la Hoja1 en 1,5 pulgadas.

Worksheets("Hoja1").PageSetup.RightMargin = _

Application.InchesToPoints(1,5)

Este ejemplo establece el margen derecho de la Hoja1 en 2 centímetros.

Worksheets("Hoja1").PageSetup.RightMargin = _

Application.CentimetersToPoints(2)

Este ejemplo muestra el valor actual del margen derecho para la Hoja1.

marginInches = Worksheets("Hoja1").PageSetup.RightMargin / _

Application.InchesToPoints(1)

MsgBox "El margen derecho actual mide " & marginInches & " pulgadas"


Propiedad ScrollColumn

Devuelve o establece el número de la columna situada más a la izquierda en el panel o la ventana. Long de Lectura/Escritura.

Comentarios

Si la ventana está dividida, la propiedad ScrollColumn del objeto Window hará referencia a la sección superior izquierda. Si las secciones están inmovilizadas, la propiedad ScrollColumn del objeto Window excluirá las áreas inmovilizadas.


Ejemplo de la propiedad ScrollColumn

Este ejemplo desplaza la columna tres para situarla en la columna más a la izquierda de la ventana.

Worksheets("Hoja1").Activate

ActiveWindow.ScrollColumn = 3


Propiedad ScrollRow

Devuelve o establece el número de la fila que aparece en la parte superior de la sección o la ventana. Long de Lectura/Escritura.

Comentarios

Si la ventana está dividida, la propiedad ScrollRow del objeto Window hará referencia a la sección superior izquierda. Si las secciones están inmovilizadas, la propiedad ScrollRow del objeto Window excluirá las áreas inmovilizadas.


Ejemplo de la propiedad ScrollRow

Este ejemplo desplaza la fila diez a la parte superior de la ventana.

Worksheets("Hoja1").Activate

ActiveWindow.ScrollRow = 10


Método ScrollWorkbookTabs

Desplaza las etiquetas del libro que están en el borde inferior de la ventana. No afecta a la hoja de cálculo activa en el libro.

Sintaxis

expresión.ScrollWorkbookTabs(Sheets, Position)

expresión   Requerida. Una expresión que devuelve un objeto Window.

Sheets   Variant opcional. El número de hojas de cálculo en que se desplazará las etiquetas. Use un número positivo para desplazar hacia adelante o negativo para desplazar hacia atrás o bien 0 (cero) para que no se desplacen. Especifique Sheets si no se especifica Position.

Position   Variant opcional. Use xlFirst para desplazarse a la primera hoja de cálculo o xlLast para desplazarse a la última. Especifique Position si no se especifica Sheets.


Ejemplo del método ScrollWorkbookTabs

Este ejemplo desplaza las etiquetas del libro hasta la última hoja del libro.

ActiveWindow.ScrollWorkbookTabs position:=xlLast


Propiedad SheetsInNewWorkbook

Devuelve o establece el número de hojas de cálculo que Microsoft Excel insertará automáticamente en los libros nuevos. Long de Lectura/Escritura.


Ejemplo de la propiedad SheetsInNewWorkbook

Este ejemplo muestra el número de hojas insertadas automáticamente en los libros nuevos.

MsgBox "Microsoft Excel insertará " & _

Application.SheetsInNewWorkbook & _

" hoja(s) en cada nuevo libro"


Método ShowLevels

Muestra el número especificado de niveles de fila o columna en un esquema.

Sintaxis

expresión.ShowLevels(RowLevels, ColumnLevels)

expresión   Requerida. Una expresión que devuelve un objeto Outline.

RowLevels   Variant opcional. Especifica el número de niveles de fila que se mostrarán en un esquema. Si el esquema tiene menos niveles que el número especificado, Microsoft Excel mostrará todos los niveles. Si este argumento es 0 (cero) o se omite, no se efectuará ninguna acción en las filas.

ColumnLevels   Variant opcional. Especifica el número de niveles de columna que se mostrarán en un esquema. Si el esquema tiene menos niveles que el número especificado, Microsoft Excel mostrará todos los niveles. Si este argumento es 0 (cero) o se omite, no se efectuará ninguna acción en las columnas.

Comentarios

Especifique por lo menos un argumento.


Ejemplo del método ShowLevels

Este ejemplo muestra los niveles de fila de uno a tres y el nivel de columna uno del esquema de la Hoja1.

Worksheets("Hoja1").Outline.ShowLevels rowLevels:=3, columnLevels:=1


Propiedad StandardFont

Devuelve o establece el nombre de la fuente estándar. String de Lectura/Escritura.

Comentarios

Si cambia la fuente estándar mediante esta propiedad, el cambio no será efectivo hasta que vuelva a abrir Microsoft Excel.


Ejemplo de la propiedad StandardFont

Este ejemplo establece la fuente estándar como Geneva (en Macintosh) Arial (en Windows).

If Application.OperatingSystem Like "*Macintosh*" Then

Application.StandardFont = "Geneva"

Else

Application.StandardFont = "Arial"

End If


Propiedad StandardFontSize

Devuelve o establece el tamaño de fuente estándar en puntos. Long de Lectura/Escritura.

Comentarios

Si cambia el tamaño de la fuente estándar mediante esta propiedad, el cambio no será efectivo hasta que vuelva a abrir Microsoft Excel.


Ejemplo de la propiedad StandardFontSize

Este ejemplo establece el tamaño de fuente estándar en 12 puntos.

Application.StandardFontSize = 12


Propiedad Subscript

True si la fuente tiene el formato de subíndice. Su valor predeterminado es False. Variant de Lectura/Escritura.


Ejemplo de la propiedad Subscript

Este ejemplo convierte en subíndice el segundo carácter de la celda A1.

Worksheets("Hoja1").Range("A1").Characters(2, 1).Font.Subscript = True


Propiedad SummaryColumn

Devuelve o establece la ubicación de las columnas de resumen del esquema, como se muestra en la tabla siguiente. Long de Lectura/Escritura.

Valor	Significado
xlLeft	La columna de resumen estará a la izquierda de las columnas de detalle del esquema.
xlRight	La columna de resumen estará a la derecha de las columnas de detalle del esquema.


Ejemplo de la propiedad SummaryColumn

Este ejemplo crea un esquema con estilos automáticos, la fila de resumen encima de las filas de detalle y la columna de resumen a la derecha de las columnas de detalle.

Worksheets("Hoja1").Activate

Selection.AutoOutline

With ActiveSheet.Outline

.SummaryRow = xlAbove

.SummaryColumn = xlRight

.AutomaticStyles = True

End With


Propiedad SummaryRow

Devuelve o establece la ubicación de las filas de resumen del esquema, como se muestra en la tabla siguiente. Long de Lectura/Escritura.

Valor	Significado
xlAbove	La fila de resumen estará sobre las filas de detalle en el esquema.
xlBelow	La fila de resumen estará debajo de las filas de detalle en el esquema.
Comentarios

Establezca SummaryRow como xlAbove para los esquemas con estilo de Microsoft Word, en los que los encabezados de categorías están encima de la información de detalle. Establezca SummaryRow como xlBelow para los esquemas con estilo de contabilidad, en los que los totales están debajo de la información detallada.


Ejemplo de la propiedad SummaryRow

Este ejemplo crea un esquema con estilos automáticos, la fila de resumen encima de las filas de detalle y la columna de resumen a la derecha de las columnas de detalle.

Worksheets("Hoja1").Activate

Selection.AutoOutline

With ActiveSheet.Outline

.SummaryRow = xlAbove

.SummaryColumn = xlRight

.AutomaticStyles = True

End With


Propiedad Superscript

True si la fuente tiene formato de superíndice; False como valor predeterminado. Variant de Lectura/Escritura.


Ejemplo de la propiedad Superscript

Este ejemplo convierte en superíndice el último carácter de la celda A1.

n = Worksheets("Hoja1").Range("A1").Characters.Count

Worksheets("Hoja1").Range("A1").Characters(n, 1).Font.Superscript = _

True


Propiedad TabRatio

Devuelve o establece la proporción del ancho del área de las etiquetas del libro con respecto al ancho de la barra de desplazamiento horizontal de la ventana (como un número comprendido entre cero y uno; el valor predeterminado es 0,75). Double de Lectura/Escritura.

Comentarios

Esta propiedad no tiene efecto si se asigna el valor False a DisplayWorkbookTabs (se conserva el valor, pero no tiene efecto en la presentación).


Ejemplo de la propiedad TabRatio

Este ejemplo configura las etiquetas del libro de trabajo con la mitad del ancho de la barra de desplazamiento horizontal.

ActiveWindow.TabRatio = 0,5


Propiedad TopMargin

Devuelve o establece el tamaño del margen superior, en puntos. Double de Lectura/Escritura.

Comentarios

Los márgenes se establecen o devuelven en puntos. Use uno de los métodos InchesToPoints o CentimetersToPoints para convertir medidas de pulgadas a centímetros.


Ejemplo de la propiedad TopMargin

Estos dos ejemplos establecen el margen superior de la Hoja1 en 0,5 pulgadas (36 puntos).

Worksheets("Hoja1").PageSetup.TopMargin = _

Application.InchesToPoints(0,5)

Worksheets("Hoja1").PageSetup.TopMargin = 36

Este ejemplo muestra el valor actual del margen superior.

marginInches = ActiveSheet.PageSetup.TopMargin / _

Application.InchesToPoints(1)

MsgBox "El margen superior actual mide " & marginInches & " pulgadas"


Propiedad Zoom

Objeto PageSetup:

Devuelve o establece un porcentaje (entre 10 y 400%) según el cual Microsoft Excel ajustará la escala de la hoja de cálculo para la impresión. Esta propiedad sólo se aplica a hojas de cálculo. Variant de Lectura/Escritura.

Si esta propiedad es False, las propiedades FitToPagesWide  y FitToPagesTall controlarán el ajuste de la escala de la hoja de cálculo.

Objeto Window:

Devuelve o establece el tamaño de la ventana en la pantalla, en forma de porcentaje (100 equivale al tamaño normal, 200 equivale al doble, etc.). Variant de Lectura/Escritura.

También puede configurar la propiedad como True para ajustar el tamaño de la ventana al tamaño de la selección actual.

Comentarios

Objeto PageSetup:

Los ajustes de escala conservarán la relación de aspecto del documento original.

Objeto Window:

Esta función sólo afectará a la hoja que esté activa en la ventana. Para usar esta propiedad en otras hojas, primero debe activarlas.


Ejemplo de la propiedad Zoom

Este ejemplo ajusta la escala de la Hoja1 un 150% cuando se imprime la hoja de cálculo.

Worksheets("Hoja1").PageSetup.Zoom = 150


punto

Una unidad de medida equivalente a 1/72 pulgadas.


Propiedad ActiveChart

Devuelve un objeto Chart que representa el gráfico activo (un gráfico incrustado o una hoja de gráficos). Un gráfico incrustado se considera activo cuando está seleccionado o activado. Si no hay ningún gráfico activo, esta propiedad devolverá Nothing. Es de sólo lectura.

Comentarios

Si no especifica un calificador de objeto, la propiedad devolverá el gráfico activo del libro activo.


Ejemplo de la propiedad ActiveChart

Este ejemplo activa la leyenda del gráfico activo.

ActiveChart.HasLegend = True


Método AddChartAutoFormat

Agrega un autoformato de gráfico personalizado a la lista de autoformatos de gráfico disponibles.

Sintaxis

expresión.AddChartAutoFormat(Chart, Name, Description)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Chart   Chart requerida. Un gráfico que contiene el formato que se aplicará junto con el nuevo autoformato de gráfico.

Name   String requerida. El nombre del autoformato.

Description   String opcional. Una descripción del autoformato personalizado.


Ejemplo del método AddChartAutoFormat

Este ejemplo agrega un nuevo autoformato basado en el Gráfico1.

Application.AddChartAutoFormat _

Chart:=Charts("Gráfico1"), Name:="Gráfico de Presentación"


Método AdvancedFilter

Filtra o copia datos de una lista en función de un rango de criterios. Si la selección inicial es una sola celda, se usará su región actual.

Sintaxis

expresión.AdvancedFilter(Action, CriteriaRange, CopyToRange, Unique)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Action   Long requerido. La operación de filtrado. Puede ser una de las siguientes constantes XlFilterAction: xlFilterInPlace o xlFilterCopy.

CriteriaRange   Variant opcional. El rango de criterios. Si este argumento se omite, no se usarán criterios.

CopyToRange   Variant opcional. El rango de destino de las filas copiadas si Action es xlFilterCopy. De lo contrario, se hará caso omiso del argumento.

Unique   Variant opcional. True para que sólo se filtren los registros únicos. False para filtrar todos los registros que cumplan los criterios. El valor predeterminado es False.


Ejemplo del método AdvancedFilter

Este ejemplo filtra una base de datos (denominada "Base de datos") basándose en un rango de criterios denominado "Criterios".

Range("Base de datos").AdvancedFilter _

Action:=xlFilterInPlace, _

CriteriaRange:=Range("Criterios")


Propiedad AutoFilterMode

Esta propiedad es True si las flechas desplegables de Filtro automático están visibles actualmente en la hoja. Esta propiedad es independiente de la propiedad FilterMode. Boolean de lectura o escritura.

Comentarios

Esta propiedad devuelve True si las flechas desplegables están visibles. Es posible asignar el valor False a esta propiedad para eliminar las flechas, pero no es posible asignarle el valor True. Use el método AutoFilter para filtrar una lista y mostrar las flechas desplegables.


Ejemplo de la propiedad AutoFilterMode

Este ejemplo muestra el estado actual de la propiedad AutoFilterMode en la Hoja1.

If Worksheets("Hoja1").AutoFilterMode Then

isOn = "Activada"

Else

isOn = "Desactivada"

End If

MsgBox "AutoFilterMode está " & isOn


Método AutoOutline

Crea automáticamente un esquema en el rango especificado. Si el rango es una sola celda, Microsoft Excel creará un esquema para toda la hoja. El esquema nuevo reemplazará a cualquier esquema ya existente.

Sintaxis

expresión.AutoOutline

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método AutoOutline

Este ejemplo crea un esquema para el rango A1:G37 de la Hoja1. El rango debe contener una fila de resumen o una columna de resumen.

Worksheets("Hoja1").Range("A1:G37").AutoOutline


Método BorderAround

Agrega un borde al rango y establece las propiedades Color, LineStyle y Weight del borde.

Sintaxis

expresión.BorderAround(LineStyle, Weight, ColorIndex, Color)

expresión   Requerida. Una expresión que devuelve un objeto Range.

LineStyle   Variant opcional. El estilo de línea del borde. Puede ser una de las siguientes constantes XlBorderLineStyle: xlBorderLineStyleNone, xlBorderLineStyleContinuous, xlBorderLineStyleDash, xlBorderLineStyleDot o xlBorderLineStyleDouble. El valor predeterminado es xlBorderLineStyleContinuous.

Weight   Variant opcional. El grosor del borde. Puede ser una de las siguientes constantes XlBorderWeight: xlHairline, xlThin, xlMedium o xlThick. El valor predeterminado es xlThin.

ColorIndex   Variant opcional. El color del borde, especificado como un índice para la paleta de colores activa o bien como una de las siguientes constantes XlColorIndex: xlColorIndexAutomatic o xlColorIndexNone.

Color   Variant opcional. El color del borde, como un valor RGB.

Comentarios

Puede especificar ColorIndex o Color, pero no ambos. Si no especifica ninguno de estos argumentos, Microsoft Excel usará el índice de color xlAutomatic.

Del mismo modo, puede especificar LineStyle o Weight, pero no ambos. Si no especifica ninguno de estos argumentos, Microsoft Excel creará un borde predeterminado.

Este método crea un esquema en todo el rango sin aplicarle un relleno. Para establecer los bordes de todas las celdas, establezca las propiedades Color, LineStyle y Weight del conjunto Borders. Para borrar el borde deberá establecer la propiedad xlBorderLineStyleNone como LineStyle en todas las celdas del rango.


Ejemplo del método BorderAround

Este ejemplo agrega un borde rojo grueso alrededor del rango A1:D4 de la Hoja1.

Worksheets("Hoja1").Range("A1:D4").BorderAround _

ColorIndex:=3, Weight:=xlThick


Método ChangeLink

Cambia un vínculo de un documento a otro.

Sintaxis

expresión.ChangeLink(Name, NewNameM, Type)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Name   String requerida. El nombre del vínculo de Microsoft Excel o DDE/OLE que se cambiará, tal como lo devuelve el método LinkSources.

NewName   String requerida. El nuevo nombre del vínculo.

Type   Variant opcional. El tipo del vínculo. Puede ser una de las siguientes constantes XlLinkType: xlLinkTypeExcelLinks o xlLinkTypeOLELinks. El valor predeterminado es xlLinkTypeExcelLinks. Use xlLinkTypeOLELinks para vínculos de tipo DDE y OLE.


Ejemplo del método ChangeLink

Este ejemplo cambia un vínculo de Microsoft Excel.

ActiveWorkbook.ChangeLink "c:\excel\libro1.xls", _

"c:\excel\libro2.xls", xlExcelLinks


Método ChartWizard

Modifica las propiedades del gráfico especificado. Puede usar este método para aplicar rápidamente un formato a un gráfico sin tener que establecer propiedades individuales. Este método no es interactivo y cambia únicamente las propiedades especificadas.

Sintaxis

expresión.ChartWizard(Source, Gallery, Format, PlotBy, CategoryLabels, SeriesLabels, HasLegend, Title, CategoryTitle, ValueTitle, ExtraTitle)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Source   Variant opcional. El rango que contiene los datos de origen del nuevo gráfico. Si este argumento se omite, Microsoft Excel modificará la hoja de gráficos activa o el gráfico seleccionado en la hoja de cálculo activa.

Gallery   Variant opcional. El tipo del gráfico. Puede ser una de las siguientes constantes XlChartType: xlArea, xlBar, xlColumn, xlLine, xlPie, xlRadar, xlXYScatter, xlCombination, xl3DArea, xl3DBar, xl3DColumn, xl3DLine, xl3DPie, xl3DSurface, xlDoughnut o xlDefaultAutoFormat.

Format   Variant opcional. El número de opción de los autoformatos incorporados. Puede ser un número del 1 al 10, dependiendo del tipo de la galería. Si este argumento se omite, Microsoft Excel elegirá un valor predeterminado basándose en el tipo de la galería y en el origen de los datos.

PlotBy   Variant opcional. Especifica si los datos de cada serie se ubican en filas o en columnas. Puede ser una de las siguientes constantes XlRowCol: xlRows o xlColumns.

CategoryLabels   Variant opcional. Un número entero que especifica el número de filas o de columnas del rango de origen que contienen rótulos de categorías. Los valores permitidos van desde cero hasta uno menos que el número máximo de las categorías o series correspondientes.

SeriesLabels   Variant opcional. Un número entero que especifica el número de filas o de columnas del rango de origen que contienen rótulos de series. Los valores permitidos van desde cero hasta uno menos que el número máximo de las categorías o series correspondientes.

HasLegend   Variant opcional. True si se incluye una leyenda.

Title   Variant opcional. El texto del título del gráfico

CategoryTitle   Variant opcional. El texto del título del eje de categorías.

ValueTitle   Variant opcional. El texto del título del eje de valores.

ExtraTitle   Variant opcional. El título del eje de series en gráficos 3D o el segundo título del eje de valores en gráficos 2D.

Comentarios

Si se omite Source y la selección no es un gráfico incrustrado en la hoja de cálculo activa o la hoja activa no es un gráfico existente, el método fallará y se producirá un error.


Ejemplo del método ChartWizard

Este ejemplo cambia el formato del Gráfico1 a un gráfico de líneas, agrega una leyenda y después títulos a los ejes de categorías y valores.

Charts("Gráfico1").ChartWizard _

Gallery:=xlLine, _

HasLegend:=True, CategoryTitle:="Año", ValueTitle:="Ventas"


Método ClearOutline

Borra el esquema del rango especificado.

Sintaxis

expresión.ClearOutline

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método ClearOutline

Este ejemplo borra el esquema del rango A1:G37 de la Hoja1.

Worksheets("Hoja1").Range("A1:G37").ClearOutline


Propiedad ConsolidationFunction

Devuelve el código de función que se emplea en la consolidación actual. Puede ser una de las siguientes constantes XlConsolidationFunction: xlAverage, xlCount, xlCountNums, xlMax, xlMin, xlProduct, xlStDev, xlStDevP, xlSum, xlVar o xlVarP. Long de sólo lectura.


Ejemplo de la propiedad ConsolidationFunction

Este ejemplo muestra un cuadro de mensaje si la consolidación actual ejecuta la función SUMA.

If Worksheets("Hoja1").ConsolidationFunction = xlSum Then

MsgBox "Hoja1 usa la función SUMA para consolidación."

End If


Propiedad ConsolidationOptions

Devuelve una matriz de tres elementos de opciones de consolidación, como se muestra en la siguiente tabla. Si el elemento es True, se establecerá la opción. Variant de sólo lectura.

Elemento	Significado
1	Use rótulos en la fila superior.
2	Use rótulos en la columna izquierda.
3	Cree vínculos con los datos de origen.


Ejemplo de la propiedad ConsolidationOptions

Este ejemplo muestra las opciones de consolidación de la Hoja1. La lista aparece en una nueva hoja de cálculo creada por el ejemplo.

Set nuevaHoja = Worksheets.Add

aOptions = Worksheets("Hoja1").ConsolidationOptions

nuevaHoja.Range("A1").Value = "Use rótulos en la fila superior"

nuevaHoja.Range("A2").Value = "Use rótulos en la columna izquierda"

nuevaHoja.Range("A3").Value = "Cree vínculos con los datos de origen"

For elem = 1 To 3

If aOptions(elem) = True Then

nuevaHoja.Cells(elem, 2).Value = "True"

Else

nuevaHoja.Cells(elem, 2).Value = "False"

End If

Next elem

nuevaHoja.Columns("A:B").AutoFit


Propiedad ConsolidationSources

Devuelve una matriz de valores de cadena que asignan un nombre a las hojas de origen de la consolidación actual de la hoja de cálculo. Devuelve Empty si no hay ninguna consolidación en la hoja. Variant de sólo lectura.


Ejemplo de la propiedad ConsolidationSources

Este ejemplo muestra los nombres de los rangos de origen para la consolidación de la Hoja1. La lista aparece en una nueva hoja de cálculo creada por el ejemplo.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Range("A1").Value = "Orígenes de consolidación"

aSources = Worksheets("Hoja1").ConsolidationSources

If IsEmpty(aSources) Then

nuevaHoja.Range("A2").Value = "ninguno"

Else

For elem = 1 To UBound(aSources)

nuevaHoja.Cells(elem + 1, 1).Value = aSources(elem)

Next elem

End If

nuevaHoja.Columns("A:B").AutoFit


Método DeleteChartAutoFormat

Elimina un autoformato de gráfico personalizado de la lista de autoformatos de gráfico disponibles.

Sintaxis

expresión.DeleteChartAutoFormat(Name)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Name   String requerida. El nombre del autoformato personalizado que se eliminará.


Ejemplo del método DeleteChartAutoFormat

Este ejemplo elimina el formato automático personalizado llamado "Gráfico de presentación".

Application.DeleteChartAutoFormat name:="Gráfico de presentación"


Propiedad DisplayClipboardWindow

Sólo aplicable en equipos Macintosh. True si se muestra la ventana del Portapapeles. Boolean de lectura o escritura.

Comentarios

En Windows, esta propiedad mantiene su valor, pero no tiene efecto.


Ejemplo de la propiedad DisplayClipboardWindow

Este ejemplo muestra la ventana del Portapapeles.

Application.DisplayClipboardWindow = True


Propiedad DisplayRightToLeft

True si la ventana se muestra de derecha a izquierda y no de izquierda a derecha. Sólo está disponible en las versiones Árabe y Hebrea de Microsoft Excel. Boolean de lectura o escritura.


Ejemplo de la propiedad DisplayRightToLeft

Este ejemplo establece que la ventana uno se muestre de derecha a izquierda.

ActiveWorkbook.Windows(1).DisplayRightToLeft = True


Método EditionOptions

Establece las opciones de las publicaciones y suscripciones en el libro. Sólo disponible en Sistema 7 de Macintosh

Sintaxis

expresión.EditionOptions(Type, Option, Name, Reference, Appearance, ChartSize, Formats)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Type   Long requerido. El tipo de edición que se cambiará. Puede ser una de las siguientes constantes XlEditionType: xlPublisher o xlSubscriber.

Option   Long requerido. El tipo de información que se establecerá en la edición. Si Type es xlPublisher, Option puede ser una de las siguientes constantes XlEditionOptionsOption: xlCancel, xlSendPublisher, xlSelect, xlAutomaticUpdate, xlManualUpdate o xlChangeAttributes. Si Type es xlSubscriber, Option puede ser una de las siguientes constantes XlEditionOptionsOption: xlCancel, xlUpdateSubscriber, xlOpenSource, xlAutomaticUpdate o xlManualUpdate.

Name   Variant opcional. El nombre de la edición, según lo devuelve el método LinkSources. Si Name se omite, debe especificarse Reference.

Reference   Variant opcional (requerida si Name no se especifica). La referencia a la edición, en forma de texto con estilo F1C1. Este argumento se requiere si el libro contiene más de una publicación o una suscripción con el mismo nombre de edición o si se omite el argumento Name.

Appearance   Variant opcional. Si Option es xlChangeAttributes, este argumento especifica si la edición se ha publicado tal como se muestra en la pantalla o como se muestra cuando está impresa. Puede ser una de las siguientes constantes XlPictureAppearance: xlPrinter o xlScreen.

ChartSize   Variant opcional. Si Option es xlChangeAttributes y el objeto publicado es un gráfico, el argumento especifica el tamaño de la edición. Puede ser una de las siguientes constantes XlPictureAppearance: xlPrinter o xlScreen. Si la edición no es un gráfico, no se usará este argumento.

Formats   Variant opcional. If Option es xlChangeAttributes, el argumento especifica el formato de la edición publicada. Puede ser una combinación de las siguientes constantes XlEditionFormat: xlPICT, xlBIFF, xlRTF o xlVALU.


Método Extend

Agrega puntos de datos nuevos a un conjunto de series ya existente.

Sintaxis

expresión.Extend(Source, Rowcol, CategoryLabels)

expresión   Requerida. Una expresión que devuelve un objeto SeriesCollection.

Source   Variant requerida. Los nuevos datos que se agregarán al objeto SeriesCollection, ya sea como un objeto Range o como matriz de puntos de datos.

Rowcol   Variant opcional. Se ignora si Source es una matriz. Especifica si los nuevos valores están en las filas o en las columnas del origen de rango especificado. Puede ser una de las siguientes constantes XlRowCol: xlRows o xlColumns. Si este argumento se omite, Microsoft Excel intentará determinar dónde se encuentran los valores basándose en el tamaño y la orientación del rango seleccionado o en las dimensiones de la matriz.

CategoryLabels   Variant opcional. Se ignora si Source es una matriz. True para que la primera fila o columna contenga el nombre de los rótulos de categorías. False para que la primera fila o columna contengan el primer punto de datos de la serie. Si este argumento se omite, Microsoft Excel intentará determinar la ubicación del rótulo de categorías a partir del contenido de la primera fila o columna.


Ejemplo del método Extend

Este ejemplo amplía la serie del Gráfico1 agregando los datos de las celdas B1:B6 de la Hoja1.

Charts("Gráfico1").SeriesCollection.Extend _

Source:=Worksheets("Hoja1").Range("B1:B6")


Método FillAcrossSheets

Copia un rango en el mismo lugar en toda una serie de hojas de cálculo.

Sintaxis

expresión.FillAcrossSheets(Range, Type)

expresión   Requerida. Una expresión que devuelve un objeto Sheets o Worksheets.

Range   Range requerido. El rango con el que se rellenará un conjunto de hojas. El rango debe ser de una de las hojas de calculo del conjunto.

Type   Variant opcional. Especifica como se copiará el rango. Puede ser una de las siguientes constantes XlFillWith: xlFillWithAll, xlFillWithContents o xlFillWithFormulas. El valor predeterminado es xlFillWithAll.


Ejemplo del método FillAcrossSheets

Este ejemplo rellena el rango A1:C5 de la Hoja1, la Hoja5 y la Hoja7 con el contenido del mismo rango de la Hoja1.

x = Array("Hoja1", "Hoja5", "Hoja7")

Sheets(x).FillAcrossSheets _

Worksheets("Hoja1").Range("A1:C5")


Método LegendEntries

Devuelve un objeto que representa una sola entrada de leyenda (un objeto LegendEntry, sintaxis 1) o un conjunto de las entradas de leyenda de la leyenda (un objeto LegendEntries, sintaxis 2).

Sintaxis 1

expresión.LegendEntries(Index)

Sintaxis 2

expresión.LegendEntries

expresión   Requerida. Una expresión que devuelve un objeto Legend.

Index   Variant opcional. El número de la entrada de leyenda.


Ejemplo del método LegendEntries

Este ejemplo establece la fuente de la entrada de leyenda uno del Gráfico1.

Charts("Gráfico1").Legend.LegendEntries(1).Font.Name = "Arial"


Propiedad LegendKey

Devuelve un objeto LegendKey que representa la clave de leyenda correspondiente a la entrada.


Ejemplo de la propiedad LegendKey

Este ejemplo establece como un triángulo la clave de la entrada de leyenda uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D.

Charts("Gráfico1").Legend.LegendEntries(1).LegendKey _

.MarkerStyle = xlMarkerStyleTriangle


Método LinkInfo

Devuelve información acerca de la fecha y el estado de actualización del vínculo.

Sintaxis

expresión.LinkInfo(Name, LinkInfo, Type, EditionRef)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Name   String requerida. El nombre de la edición, según lo devuelve el método LinkSources.

LinkInfo   Long requerido. El tipo de información que se devolverá. Puede ser una de las siguientes constantes XlLinkInfo: xlUpdateState o xlEditionDate. xlEditionDate sólo es aplicable a ediciones. Para xlUpdateState, este método devuelve 1 si el vínculo se actualiza automáticamente y 2 si debe actualizarse de forma manual.

Type   Variant opcional. El tipo del vínculo que se devolverá. Puede ser una de las siguientes constantes XlLinkInfoType: xlLinkInfoOLELinks (también controla vínculos DDE), xlLinkInfoPublishers o xlLinkInfoSubscribers.

EditionRef   Variant opcional. Si el vínculo es una edición, este argumento especifica la referencia a la edición en forma de cadena con el estilo F1C1. Este argumento se requiere si el libro contiene más de una publicación o suscripción con el mismo nombre.


Ejemplo del método LinkInfo

Este ejemplo muestra un cuadro de mensaje si el vínculo se actualiza automáticamente.

If ActiveWorkbook.LinkInfo( _

"Word.Document|Document1!'!DDE_LINK1", xlUpdateState, _

xlOLELinks) = 1 Then

MsgBox "El vínculo se actualiza automáticamente"

End If


Método LinkSources

Devuelve una matriz de vínculos en el libro. Los nombres de la matriz son los nombres de los documentos vinculados, ediciones o servidores DDE u OLE. Devuelve Empty si no hay vínculos.

Sintaxis

expresión.LinkSources(Type)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Type   Opcional. El tipo del vínculo que se devolverá. Puede ser una de las siguientes constantes XlLink: xlExcelLinks, xlOLELinks (también controla vínculos DDE), xlPublishers o xlSubscribers.

Comentarios

El formato es el de una matriz de una sola dimensión para todos los tipos, excepto para publicaciones y suscripciones. Las cadenas de caracteres que se devuelven contienen el nombre del origen del vínculo, en la notación apropiada para cada tipo de vínculo. Por ejemplo, los vínculos DDE usan la sintaxis "Servidor|Documento!Elemento”.

Para vínculos de publicación y suscripción, la matriz devuelta tiene dos dimensiones. La primera columna de la matriz contiene los nombres de la edición y, la segunda, las referencias de las ediciones, en forma de texto.


Ejemplo del método LinkSources

Este ejemplo muestra una lista de los vínculos OLE y DDE del libro actual. El ejemplo debe ejecutarse en un libro que contenga uno o más objetos Word vinculados.

aLinks = ActiveWorkbook.LinkSources(xlOLELinks)

If Not IsEmpty(aLinks) Then

For elem = 1 To UBound(aLinks)

MsgBox "Vincula " & elem & ": " & Chr(13) & aLinks(elem)

Next elem

End If


Propiedad NameLocal

Devuelve o establece el nombre del objeto en el lenguaje del usuario. String de lectura o escritura para Name, String de sólo lectura para Style.

Comentarios

Si el estilo está incorporado, esta propiedad devolverá el nombre del estilo en el lenguaje del local actual.


Ejemplo de la propiedad NameLocal

Este ejemplo muestra el nombre y el nombre adaptado del estilo uno del libro activo.

With ActiveWorkbook.Styles(1)

MsgBox "El nombre del estilo es " & .Name

MsgBox "El nombre adaptado del estilo es " & .NameLocal

End With


Propiedad NumberFormatLocal

Devuelve o establece el código de formato del objeto, en forma de cadena de caracteres en el lenguaje del usuario. String de lectura o escritura.

Comentarios

La función Format usa cadenas de código de formato diferentes que las propiedades NumberFormat y NumberFormatLocal.


Ejemplo de la propiedad NumberFormatLocal

Este ejemplo muestra el formato de número de la celda A1 de la Hoja1, en el lenguaje del usuario.

MsgBox "El formato de número de la celda A1 es " & _

Worksheets("Hoja1").Range("A1").NumberFormatLocal


Propiedad Object

Devuelve el objeto de Automatización asociado a este objeto OLE. Object de sólo lectura.


Ejemplo de la propiedad Object

Este ejemplo inserta texto al principio de un objeto documento de Word incrustado en la Hoja1. Tenga en cuenta que los tres enunciados de la estructura de control With son de WordBasic.

Set objWord = Worksheets("Hoja1").OLEObjects(1)

objWord.Activate

With objWord.Object.Application.WordBasic

.StartOfDocument

.Insert "Este es el comienzo"

.InsertPara

End With


Método OLEObjects

Devuelve un objeto que representa un único objeto OLE (un objeto OLEObject, sintaxis 1) o un conjunto de todos los objetos OLE (un objeto OLEObjects, sintaxis 2) del gráfico o de la hoja. Es de sólo lectura.

Sintaxis 1

expresión.OLEObjects(Index)

Sintaxis 2

expresión.OLEObjects

expresión   Requerida. Una expresión que devuelve un objeto Chart o Worksheet.

Index   Variant opcional. El nombre o número del objeto OLE.


Ejemplo del método OLEObjects

Este ejemplo crea una lista de tipos de vínculo para los objetos OLE de la Hoja1. La lista aparece en una nueva hoja de cálculo creada por el ejemplo.

Set nuevaHoja = Worksheets.Add

i = 2

nuevaHoja.Range("A1").Value = "Nombre"

nuevaHoja.Range("B1").Value = "Tipo de vínculo"

For Each obj In Worksheets("Hoja1").OLEObjects

nuevaHoja.Cells(i, 1).Value = obj.Name

If obj.OLEType = xlOLELink Then

nuevaHoja.Cells(i, 2) = "Vinculado"

Else

nuevaHoja.Cells(i, 2) = "Incrustado"

End If

i = i + 1

Next


Propiedad OLEType

Devuelve el tipo del objeto OLE. Puede ser una de las siguientes constantes XlOLEType: xlOLELink o xlOLEEmbed. Devuelve xlOLELink si el objeto está vinculado (existe fuera del archivo) y xlOLEEmbed si el objeto está incrustado (está contenido totalmente en el archivo). Long de sólo lectura.


Ejemplo de la propiedad OLEType

Este ejemplo crea una lista de tipos de vínculo para los objetos OLE de la Hoja1. La lista aparece en una nueva hoja de cálculo creada por el ejemplo.

Set nuevaHoja = Worksheets.Add

i = 2

nuevaHoja.Range("A1").Value = "Nombre"

nuevaHoja.Range("B1").Value = "Tipo de vínculo"

For Each obj In Worksheets("Hoja1").OLEObjects

nuevaHoja.Cells(i, 1).Value = obj.Name

If obj.OLEType = xlOLELink Then

nuevaHoja.Cells(i, 2) = "Vinculado"

Else

nuevaHoja.Cells(i, 2) = "Incrustado"

End If

i = i + 1

Next


Método OpenLinks

Abre los documentos de apoyo de uno o más vínculos.

Sintaxis

expresión.OpenLinks(Name, ReadOnly, Type)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Name   String requerida. El nombre del vínculo de Microsoft Excel o DDE/OLE, según lo devuelve el método LinkSources.

ReadOnly   Variant opcional. True para que los documentos se abran como de sólo lectura. El valor predeterminado es False.

Type   Opcional. El tipo del vínculo. Puede ser una de las siguientes constantes XlLink: xlExcelLinks, xlOLELinks (también controla vínculos DDE), xlPublishers o xlSubscribers.


Ejemplo del método OpenLinks

Este ejemplo abre el vínculo OLE uno del libro activo.

linkArray = ActiveWorkbook.LinkSources(xlOLELinks)

ActiveWorkbook.OpenLinks linkArray(1)

Este ejemplo abre todos los documentos de apoyo de Microsoft Excel para el libro activo.

ActiveWorkbook.OpenLinks _

name:=ActiveWorkbook.LinkSources(xlExcelLinks)


Propiedad OutlineLevel

Devuelve o establece el nivel de esquema actual de la columna o fila especificada. Variant de Lectura/Escritura.

Comentarios

El nivel uno es el nivel de resumen más exterior.


Ejemplo de la propiedad OutlineLevel

Este ejemplo establece el nivel de esquema de la fila dos de la Hoja1.

Worksheets("Hoja1").Rows(2).OutlineLevel = 1


Método Parse

Redistribuye un rango de datos y lo divide en varias celdas. Distribuye el contenido del rango de manera que llene varias columnas adyacentes; el rango no puede tener más de una columna de ancho.

Sintaxis

expresión.Parse(ParseLine, Destination)

expresión   Requerida. Una expresión que devuelve un objeto Range.

ParseLine   Variant opcional. Una cadena que contiene corchetes de apertura y cierre para indicar dónde se dividirán las celdas. Por ejemplo, "[xxx][xxx]" inserta los tres primeros caracteres en la primera columna del rango de destino y los tres siguientes en la segunda columna. Si este argumento se omite, Microsoft Excel se basará en la separación de la celda superior izquierda del rango para calcular dónde debe dividir las columnas. Si desea usar un rango para estimar la línea de redistribución, use un objeto Range como argumento ParseLine. El rango debe ser una de las celdas que se redistribuyen. El argumento ParseLine no puede tener más de 255 caracteres, incluidos corchetes y espacios.

Destination   Variant opcional. Un objeto Range que representa la esquina superior izquierda del rango de destino de los datos redistribuidos. Si este argumento se omite, Microsoft Excel hará la redistribución en el mismo lugar.


Ejemplo del método Parse

Este ejemplo divide en dos columnas los números de teléfono con formato 206-555-1212. La primera columna sólo contiene el código de área y la segunda el número de teléfono de siete dígitos, con el guión incluido.

Worksheets("Hoja1").Columns("A").Parse _

parseLine:="[xxx] [xxxxxxxx]", _

destination:=Worksheets("Hoja1").Range("B1")


Propiedad Period

Devuelve o establece el período de la línea de tendencia de media móvil. Long de Lectura/Escritura.


Ejemplo de la propiedad Period

Este ejemplo establece el período de la línea de tendencia de media móvil en el Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D con una sola serie que contenga 10 puntos de datos y una línea de tendencia de media móvil.

With Charts("Gráfico1").SeriesCollection(1).Trendlines(1)

If .Type = xlMovingAvg Then .Period = 5

End With


Propiedad PlotVisibleOnly

True si sólo se trazan las celdas visibles. False si se trazan las celdas visibles y las ocultas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PlotVisibleOnly

Este ejemplo hace que Microsoft Excel trace únicamente las celdas visibles del Gráfico1.

Charts("Gráfico1").PlotVisibleOnly = True


Propiedad Precedents

Devuelve un objeto Range que representa todas las celdas precedentes de una celda. Puede ser una selección múltiple (una unión de objetos Range) si hay más de una celda precedente. Es de sólo lectura.


Ejemplo de la propiedad Precedents

Este ejemplo selecciona las celdas precedentes de la celda A1 de la Hoja1.

Worksheets("Hoja1").Activate

Range("A1").Precedents.Select


Propiedad PrefixCharacter

Devuelve el carácter de prefijo de la celda. Variant de sólo lectura.

Comentarios

Si la propiedad TransitionNavigKeys tiene el valor False, el carácter de prefijo será ' para un rótulo de texto o un espacio en blanco. Si el valor de la propiedad TransitionNavigKeys es True, el carácter será ' para un rótulo justificado a la izquierda, " para un rótulo justificado a la derecha, ^ para un rótulo centrado, \ para un rótulo repetido o un espacio en blanco.


Ejemplo de la propiedad PrefixCharacter

Este ejemplo muestra el carácter de prefijo de la celda A1 de la Hoja1.

MsgBox "El carácter de prefijo es " & _

Worksheets("Hoja1").Range("A1").PrefixCharacter


Propiedad PrintArea

Devuelve o establece el rango que se imprimirá, como una cadena que usa referencias de estilo A1 en el lenguaje de la macro. String de Lectura/Escritura.

Comentarios

Establezca esta propiedad como False o como cadena vacía ("") para que el área de impresión sea toda la hoja.

Esta propiedad se aplica solamente a páginas de hoja de cálculo.


Ejemplo de la propiedad PrintArea

Este ejemplo establece el área de impresión como las celdas A1:C5 de la Hoja1.

Worksheets("Hoja1").PageSetup.PrintArea = "$A$1:$C$5"

Este ejemplo establece el área de impresión como la región actual de la Hoja1. Tenga en cuenta que usa la propiedad Address para devolver una dirección de estilo A1.

Worksheets("Hoja1").Activate

ActiveSheet.PageSetup.PrintArea = _

ActiveCell.CurrentRegion.Address


Propiedad PrintTitleColumns

Devuelve o establece las columnas que contienen las celdas que se repetirán en el lado izquierdo de cada página, en forma de cadena con la notación de estilo A1 del lenguaje de la macro. String de Lectura/Escritura.

Comentarios

Si especifica sólo parte de una o varias columnas, Microsoft Excel expandirá el rango a columnas completas.

Establezca el valor de esta propiedad como False o el valor cadena vacía ("") para desactivar las columnas de título.

Esta propiedad se aplica solamente a páginas de hoja de cálculo.


Ejemplo de la propiedad PrintTitleColumns

Este ejemplo define la fila tres como fila de título y las columnas de uno a tres como columnas de título.

Worksheets("Hoja1").Activate

ActiveSheet.PageSetup.PrintTitleRows = ActiveSheet.Rows(3).Address

ActiveSheet.PageSetup.PrintTitleColumns = _

ActiveSheet.Columns("A:C").Address


Propiedad PrintTitleRows

Devuelve o establece las filas que contienen las celdas que se repetirán en la parte superior de cada página, en forma de cadena con la notación de estilo A1 del lenguaje de la macro. String de Lectura/Escritura.

Comentarios

Si especifica sólo parte de una o más filas, Microsoft Excel expandirá el rango hasta cubrir filas completas

Establezca esta propiedad como False o como cadena vacía ("") para desactivar las filas de título.

Esta propiedad se aplica solamente a páginas de hoja de cálculo.


Ejemplo de la propiedad PrintTitleRows

Este ejemplo define la fila tres como fila de título y las columnas de uno a tres como columnas de título.

Worksheets("Hoja1").Activate

ActiveSheet.PageSetup.PrintTitleRows = ActiveSheet.Rows(3).Address

ActiveSheet.PageSetup.PrintTitleColumns = _

ActiveSheet.Columns("A:C").Address


Propiedad ProtectScenarios

True si los escenarios de la hoja de cálculo están protegidos. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectScenarios

Este ejemplo muestra un cuadro de mensaje si los escenarios de la Hoja1 están protegidos.

If Worksheets("Hoja1").ProtectScenarios Then _

MsgBox "Los escenarios están protegidos en esta hoja de cálculo."


Propiedad RefersTo

Devuelve o establece la fórmula a la que debe hacer referencia el nombre, en la notación de estilo A1 y el lenguaje de la macro, comenzando con un signo igual. String de Lectura/Escritura.


Ejemplo de la propiedad RefersTo

Este ejemplo crea una lista de todos los nombres del libro activo y muestra sus fórmulas en notación de estilo A1 en el lenguaje de la macro. La lista aparece en una nueva hoja de cálculo creada por el ejemplo.

Set nuevaHoja = Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.Name

nuevaHoja.Cells(i, 2).Value = "'" & nm.RefersTo

i = i + 1

Next

nuevaHoja.Columns("A:B").AutoFit


Propiedad ShortcutKey

Devuelve o establece la tecla de método abreviado de un nombre definido como un comando macro personalizado de Microsoft Excel versión 4.0. String de Lectura/Escritura.


Ejemplo de la propiedad ShortcutKey

Este ejemplo establece la tecla de método abreviado del nombre uno del libro activo. El ejemplo debe ejecutarse en un libro en el que el nombre uno haga referencia a una macro de comando de Microsoft Excel 4.0.

ActiveWorkbook.Names(1).ShortcutKey = "K"


Método ShowAllData

Hace visibles todas las filas de la lista filtrada actual. Si se está usando Autofiltro, este método cambiará las flechas a “Todas”.

Sintaxis

expresión.ShowAllData

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.


Ejemplo del método ShowAllData

Este ejemplo hace visibles todos los datos de la Hoja1. El ejemplo debe ejecutarse en una hoja de cálculo que contenga una lista filtrada mediante el comando Autofiltro.

Worksheets("Hoja1").ShowAllData


Propiedad ShowToolTips

True si están activadas las sugerencias. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowToolTips

Este ejemplo hace que Microsoft Excel muestre sugerencias.

Application.ShowToolTips = True


Propiedad SizeWithWindow

True si el tamaño del gráfico se ajusta al de la ventana de la hoja de gráficos. False si el tamaño del gráfico no depende del tamaño de la ventana. Aplicable únicamente a las hojas de gráficos (no se aplica a los gráficos incrustados). Boolean de Lectura/Escritura.


Ejemplo de la propiedad SizeWithWindow

Este ejemplo establece que el tamaño del Gráfico1 se ajuste a su ventana.

Charts("Gráfico1").SizeWithWindow = True


Método TextToColumns

Redistribuye una columna de celdas que contiene texto en varias columnas.

Sintaxis

expresión.TextToColumns(Destination, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Destination   Variant opcional. Un objeto Range que especifica el lugar en que Microsoft Excel colocará los resultados. Si el rango es mayor que una sola celda, se usará la celda del extremo superior izquierdo.

DataType   Variant opcional. El formato del texto que se dividirá en columnas. Puede ser una de las siguientes constantes XlTextParsingType: xlDelimited o xlFixedWidth. El valor predeterminado es xlDelimited.

TextQualifier   Variant opcional. El calificador de texto. Puede ser una de las siguientes constantes XlTextQualifier: xlTextQualifierDoubleQuote, xlTextQualifierSingleQuote o xlTextQualifierNone. El valor predeterminado es xlTextQualifierDoubleQuote.

ConsecutiveDelimiter   Variant opcional. True para que Microsoft Excel considere los delimitadores consecutivos como uno solo. El valor predeterminado es False.

Tab   Variant opcional. True para que DataType tenga el valor xlDelimited y para que el carácter de tabulación sea un delimitador. El valor predeterminado es False.

Semicolon   Variant opcional. True para que DataType tenga el valor xlDelimited y para que el signo de punto y coma sea un delimitador. El valor predeterminado es False.

Comma   Variant opcional. True para que DataType tenga el valor xlDelimited y para que el signo de coma sea un delimitador. El valor predeterminado es False.

Space   Variant opcional. True para que DataType tenga el valor xlDelimited y para que el carácter de espacio sea un delimitador. El valor predeterminado es False.

Other   Variant opcional. True para que DataType tenga el valor xlDelimited y para que el carácter especificado por el argumento OtherChar sea un delimitador. El valor predeterminado es False.

OtherChar   Variant opcional. (requerida si Other es True). El carácter delimitador cuando Other es True. Si se especifica más de un carácter, sólo se usará el primero de la cadena de caracteres y se ignorará el resto.

FieldInfo   Variant opcional. Una matriz que contiene la información redistribuida de las columnas de datos individuales. La interpretación depende del valor de DataType.

Si los datos están delimitados, el argumento será una matriz de matrices de dos elementos, cada una de las cuales especificará las opciones de conversión de una columna en particular. El primer elemento es el número de columna (basado en unos) y el segundo elemento es uno de los siguientes números, que especifican cómo se redistribuye la columna:

1	General
2	Texto
3	Fecha MDA
4	Fecha DMA
5	Fecha AMD
6	Fecha MAD
7	Fecha DAM
8	Fecha ADM
9	Se omite la columna
Los especificadores de columna pueden tener cualquier orden. Si un especificador de columna dado no está presente en una columna en particular de los datos de entrada, la columna se redistribuirá usando la configuración General. En este ejemplo se omite la tercera columna, la primera se redistribuye en forma de texto y las columnas restantes de los datos de origen se redistribuyen con la configuración General.

Array(Array(3, 9), Array(1, 2))

Si los datos de origen tienen columnas de ancho fijo, el primer elemento de cada matriz de dos elementos especificará la posición del primer carácter de la columna (como un entero; un carácter 0 (cero) es el primer carácter). El segundo elemento de la matriz de dos elementos especifica la opción de redistribución de la columna como un número de uno a nueve, de la manera indicada anteriormente.

En el siguiente ejemplo se redistribuyen dos columnas de un archivo de ancho fijo, empezando la primera columna al principio de la línea y extendiéndose diez caracteres. La segunda columna empieza en la posición 15 y va hasta el final de la línea. Para evitar que se incluyan los caracteres comprendidos entre las posiciones 10 y 15, Microsoft Excel agrega una entrada de salto de columna.

Array(Array(0, 1), Array(10, 9), Array(15, 1))


Ejemplo del método TextToColumns

Este ejemplo convierte el contenido del Portapapeles, que contiene un tabla de texto delimitada por espacios, en columnas individuales de la Hoja1. Puede crear una tabla sencilla delimitada por espacios en el Bloc de notas o en WordPad (u otro editor de textos), copiarla en el Portapapeles, cambiar a Microsoft Excel y ejecutar este ejemplo.

Worksheets("Hoja1").Activate

ActiveSheet.Paste

Selection.TextToColumns DataType:=xlDelimited, _

ConsecutiveDelimiter:=True, Space:=True


Propiedad TransitionMenuKeyAction

Devuelve o establece la acción realizada cuando se presiona la tecla de menú alternativo. Puede ser xlExcelMenus o xlLotusHelp. Esta propiedad no puede establecerse como xlLotusHelp en Macintosh. Long de Lectura/Escritura.


Ejemplo de la propiedad TransitionMenuKeyAction

Este ejemplo establece la tecla de menú alternativo para ejecutar la Ayuda de Lotus 1-2-3. Esta propiedad no puede establecerse como xlLotusHelp en Macintosh.

Application.TransitionMenuKeyAction = xlLotusHelp


Método Update

Actualiza el vínculo o la tabla dinámica.

Sintaxis

expresión.Update

expresión   Requerida. Una expresión que devuelve un objeto OLEObject o PivotTable.


Ejemplo del método Update

Este ejemplo actualiza el vínculo con el objeto OLE uno de la Hoja1.

Worksheets("Hoja1").OLEObjects(1).Update


Método UpdateLink

Actualiza un vínculo (o vínculos) de Microsoft Excel, DDE u OLE.

Sintaxis

expresión.UpdateLink(Name, Type)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Name   String requerida. El nombre del vínculo de Microsoft Excel o DDE/OLE que se actualizará, tal como lo devuelve el método LinkSources.

Type   Variant opcional. El tipo del vínculo. Puede ser una de las siguientes constantes XlLinkType: xlLinkTypeExcelLinks o xlLinkTypeOLELinks (también se usa para vínculos DDE). El valor predeterminado es xlLinkTypeExcelLinks.


Ejemplo del método UpdateLink

Este ejemplo actualiza todos los vínculos del libro activo.

ActiveWorkbook.UpdateLink Name:=ActiveWorkbook.LinkSources


Método Verb

Envía un verbo al servidor del objeto OLE especificado.

Sintaxis

expresión.Verb(Verb)

expresión   Requerida. Una expresión que devuelve un objeto OLEObject.

Verb   Variant opcional. El verbo sobre el cual el servidor del objeto OLE debe actuar. Si este argumento se omite, se enviará el verbo predeterminado. Los verbos disponibles están determinados por la aplicación de origen del objeto. Los verbos habituales para un objeto OLE son Open y Primary (representados por las constantes XlOLEVerb xlOpen y xlPrimary).


Ejemplo del método Verb

Este ejemplo envía el verbo predeterminado al servidor del objeto OLE uno de la Hoja1.

Worksheets("Hoja1").OLEObjects(1).Verb


Propiedad VisibleRange

Devuelve un objeto Range que representa el rango de celdas que están visibles en la ventana o en el panel. Si una columna o una fila está visible parcialmente, se incluirá en el rango. Es de sólo lectura.


Ejemplo de la propiedad VisibleRange

Este ejemplo muestra el número de celdas visibles en la Hoja1.

Worksheets("Hoja1").Activate

MsgBox "Hay " & Windows(1).VisibleRange.Cells.Count _

& " celdas visibles"


Propiedad WallsAndGridlines2D

True si se trazan líneas de división en dos dimensiones en un gráfico 3D. Boolean de Lectura/Escritura.


Ejemplo de la propiedad WallsAndGridlines2D

Este ejemplo hace que Microsoft Excel dibuje líneas de división 2D en el Gráfico1.

Charts("Gráfico1").WallsAndGridlines2D = True


Método Paste (objeto Chart)

Pega los datos de gráfico que contiene el Portapapeles en el gráfico indicado.

Sintaxis

expresión.Paste(Type)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Type   Variant opcional. Especifica la información del gráfico que se pegará si el Portapapeles contiene un gráfico. Puede ser una de las siguientes constantes XlPasteType: xlFormats, xlFormulas o xlAll. El valor predeterminado es xlAll. Si el Portapapeles contiene datos que no son gráficos, no podrá usar este el argumento.

Comentarios

Este método cambia la selección actual.


Ejemplo del método Paste (objeto Chart)

Este ejemplo pega los datos del rango B1:B5 en la Hoja1 del Gráfico1.

Worksheets("Hoja1").Range("B1:B5").Copy

Charts("Gráfico1").Paste


Método Paste (objeto Point o Series)

Pega una imagen del Portapapeles en forma de marcador de la serie o el punto seleccionado. Este método puede ejecutarse en gráficos de columnas, barras, líneas o radiales y asigna el valor MarkerStyle a la propiedad xlMarkerStylePicture.

Sintaxis

expresión.Paste

expresión   Requerida. Una expresión que devuelve un objeto Point o Series.


Ejemplo del método Paste (objeto Point o Series)

Este ejemplo pega una imagen del Portapapeles en la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1).Paste


Método Paste (conjunto SeriesCollection)

Pega los datos del Portapapeles en el conjunto de series especificado.

Sintaxis

expresión.Paste(Rowcol, SeriesLabels, CategoryLabels, Replace, NewSeries)

expresión   Requerida. Una expresión que devuelve un objeto SeriesCollection.

Rowcol   Variant opcional. Especifica si los valores correspondientes a una serie de datos en particular se encuentran en filas o columnas. Puede ser una de las siguientes constantes XlRowCol: xlRows o xlColumns. El valor predeterminado es xlColumns.

SeriesLabels   Variant opcional. True para usar el contenido de la celda de la primera columna de cada fila (o de la primera fila de cada columna) como nombre de la serie de datos de dicha fila (o columna). False para usar el contenido de la celda de la primera columna de cada fila (o de la primera fila de cada columna) como primer punto de datos de la serie de datos. El valor predeterminado es False.

CategoryLabels   Variant opcional. True para usar el contenido de la primera fila (o columna) de la selección como categorías del gráfico. False para usar el contenido de la primera fila (o columna) como primera serie de datos del gráfico. El valor predeterminado es False.

Replace   Variant opcional. True para aplicar las categorías mientras se reemplazan las categorías ya existentes con información procedente del rango copiado. False para insertar nuevas categorías sin reemplazar a las anteriores. El valor predeterminado es True.

NewSeries   Variant opcional. True para pegar los datos como una serie nueva. False para pegar los datos como puntos nuevos de una serie ya existente. El valor predeterminado es True.


Ejemplo del método Paste (conjunto SeriesCollection)

Este ejemplo copia en el Portapapeles los datos de las celdas C1:C5 de la Hoja1 y los pega en el Gráfico1 como una serie nueva.

Worksheets("Hoja1").Range("C1:C5").Copy

Charts("Gráfico1").SeriesCollection.Paste


Método Paste (objeto Worksheet)

Pega el contenido del Portapapeles en la hoja.

Sintaxis

expresión.Paste(Destination, Link)

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.

Destination   Variant opcional. Un objeto Range que especifica dónde se pegará el contenido del Portapapeles. Si este argumento se omite, se usará la selección actual. El argumento sólo puede emplearse si el contenido del Portapapeles puede pegarse en un rango. Si se especifica el argumento, no podrá emplearse el argumento Link.

Link   Variant opcional. True para establecer un vínculo con el origen de los datos pegados. Si este argumento se especifica, no podrá emplearse el argumento Destination. El valor predeterminado es False.

Comentarios

Si no especifica el argumento Destination, para poder usar este método deberá seleccionar el rango de destino.

Es posible que este método modifique la selección de la hoja, dependiendo del contenido del Portapapeles.


Ejemplo del método Paste (objeto Worksheet)

Este ejemplo copia los datos de las celdas C1:C5 de la Hoja1 en las celdas D1:D5 de la misma hoja.

Worksheets("Hoja1").Range("C1:C5").Copy

ActiveSheet.Paste Destination:=Worksheets("Hoja1").Range("D1:D5")


Método PasteSpecial

Objeto Range: Pega los datos del Portapapeles en el rango especificado.

Objeto Worksheet: Pega los datos del Portapapeles en la hoja, usando un formato especificado. Use este método para pegar datos de otras aplicaciones o bien para pegarlos con un formato específico.


Método PasteSpecial (objeto Range)

Pega un objeto Range del Portapapeles en un rango especificado.

Sintaxis

expresión.PasteSpecial(Paste, Operation, SkipBlanks, Transpose)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Paste   Variant opcional. La parte del rango que se pegará. Puede ser una de las siguientes constantes XlPasteType: xlPasteAll, xlPasteFormulas, xlPasteValues, xlPasteFormats, xlPasteNotes o xlPasteAllExceptBorders. El valor predeterminado es xlPasteAll.

Operation   Variant opcional. La operación de pegar. Puede ser una de las siguientes constantes XlPasteSpecialOperation: xlPasteSpecialOperationNone, xlPasteSpecialOperationAdd, xlPasteSpecialOperationSubtract, xlPasteSpecialOperationMultiply o xlPasteSpecialOperationDivide. El valor predeterminado es xlPasteSpecialOperationNone.

SkipBlanks   Variant opcional. True para que las celdas vacías del rango del Portapapeles no se peguen en el rango de destino. El valor predeterminado es False.

Transpose   Variant opcional. True para transponer las filas columnas al pegar el rango. El valor predeterminado es False.


Ejemplo del método PasteSpecial (objeto Range)

Este ejemplo reemplaza los datos de las celdas D1:D5 de la Hoja1 por la suma de su contenido y el de las celdas C1:C5 de la Hoja1.

With Worksheets("Hoja1")

.Range("C1:C5").Copy

.Range("D1:D5").PasteSpecial Operation:=xlPasteSpecialOperationAdd

End With


Método PasteSpecial (objeto Worksheet)

Pega el contenido del Portapapeles en la hoja, usando un formato especificado. Use este método para pegar datos de otras aplicaciones o bien para pegarlos con un formato específico.

Sintaxis

expresión.PasteSpecial(Format, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel)

expresión   Requerida. Una expresión que devuelve un objeto DialogSheet o Worksheet.

Format   Variant opcional. Una cadena que especifica el formato de los datos del Portapapeles.

Link   Variant opcional. True para establecer un vínculo con el origen de los datos pegados. Si los datos de origen no son adecuados para crear vínculos o la aplicación de origen no es compatible con los vínculos, se hará caso omiso del parámetro. El valor predeterminado es False.

DisplayAsIcon   Variant opcional. True mostrar los datos pegados como un icono. El valor predeterminado es False.

IconFileName   Variant opcional. El nombre del archivo que contiene el icono que se usará si DisplayAsIcon es True.

IconIndex   Variant opcional. El número de índice del icono para el archivo de iconos.

IconLabel   Variant opcional. El rótulo de texto del icono.

Comentarios

Seleccione el rango de destino antes de usar este método.

Es posible que este método modifique la selección de la hoja, dependiendo del contenido del Portapapeles.


Ejemplo del método PasteSpecial (objeto Worksheet)

Este ejemplo pega un documento de Microsoft Word del Portapapeles en la celda D1 de la Hoja1.

Worksheets("Hoja1").Range("D1").Select

ActiveSheet.PasteSpecial format:="Objeto documento de Microsoft Word 8.0"

Este ejemplo pega el mismo objeto documento de Microsoft Word y lo muestra como un icono.

Worksheets("Hoja1").Range("F5").Select

ActiveSheet.PasteSpecial _

Format:="Objeto documento de Microsoft Word 8.0", _

DisplayAsIcon:=True


Método ApplyDataLabels

Aplica rótulos de datos a un punto, a una serie o a todas las series de un gráfico.

Sintaxis

expresión.ApplyDataLabels(Type, LegendKey)

expresión   Requerida. Una expresión que devuelve un objeto Chart, Point o Series.

Type   Variant opcional. El tipo de rótulo de datos. Puede ser una de las siguientes constantes XlDataLabelsType:

Constante	Descripción
xlDataLabelsShowNone	Sin rótulo de datos
xlDataLabelsShowValue	Valor del punto (supuesto si el argumento no se especifica).
xlDataLabelsShowPercent	Porcentaje del total. Disponible únicamente para los gráficos circulares y de anillos.
xlDataLabelsShowLabel	Categoría del punto. Es el valor predeterminado.
xlDataLabelsShowLabelAndPercent	Porcentaje del total y categoría del punto. Disponible únicamente para los gráficos circulares y de anillos.
LegendKey   Opcional Variant. True para mostrar la leyenda junto al punto. El valor predeterminado es False.


Ejemplo del método ApplyDataLabels

Este ejemplo aplica rótulos de categoría a la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1). _

ApplyDataLabels Type:=xlDataLabelsShowLabel


Propiedad DataLabel

Devuelve un objeto DataLabel que representa el rótulo de datos asociado al punto o la línea de tendencia. Es de sólo lectura.


Ejemplo de la propiedad DataLabel

Este ejemplo activa el rótulo de datos del punto siete en la serie tres del Gráfico1 y, a continuación, establece el color del rótulo como azul.

With Charts("Gráfico1").SeriesCollection(3).Points(7)

.HasDataLabel = True

.ApplyDataLabels type:=xlValue

.DataLabel.Font.ColorIndex = 5

End With


Propiedad HasDataLabel

True si el punto tiene rótulo de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasDataLabel

Este ejemplo activa el rótulo de datos del punto siete en la serie tres del Gráfico1 y, a continuación, establece el color del rótulo como azul.

With Charts("Gráfico1").SeriesCollection(3).Points(7)

.HasDataLabel = True

.ApplyDataLabels type:=xlValue

.DataLabel.Font.ColorIndex = 5

End With


Propiedad MarkerStyle

Devuelve o establece el estilo del marcador de un punto o una serie en un gráfico de líneas, de dispersión o radial. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlMarkerStyle:

Constante	Descripción
xlMarkerStyleNone	Sin marcadores.
xlMarkerStyleAutomatic	Marcadores automáticos.
xlMarkerStyleSquare	Marcadores cuadrados.
xlMarkerStyleDiamond	Marcadores con forma de diamante.
xlMarkerStyleTriangle	Marcadores triangulares.
xlMarkerStyleX	Marcadores cuadrados con una X.
xlMarkerStyleStar	Marcadores cuadrados con un asterisco.
xlMarkerStyleDot	Marcadores de barra corta.
xlMarkerStyleDash	Marcadores de barra larga.
xlMarkerStyleCircle	Marcadores circulares.
xlMarkerStylePlus	Marcadores cuadrados con un signo más.
xlMarkerStylePicture	Marcadores de imagen.


Ejemplo de la propiedad MarkerStyle

Este ejemplo establece el estilo de marcador de la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D.

Charts("Hoja1").SeriesCollection(1).MarkerStyle = xlMarkerStyleCircle


Método ApplyNames

Aplica nombres a las celdas del rango especificado.

Sintaxis

expresión.ApplyNames(Names, IgnoreRelativeAbsolute, UseRowColumnNames, OmitColumn, OmitRow, Order, AppendLast)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Names   Variant opcional. Una matriz de los nombres que se aplicarán. Si este argumento se omite, se aplicarán al rango todos los nombres de la hoja.

IgnoreRelativeAbsolute   Variant opcional. True para reemplazar las referencias por nombres, sin tener en cuenta los tipos de referencia, ya sean de nombres o de referencias. False para reemplazar las referencias absolutas sólo con nombres absolutos, las relativas sólo con nombres relativos y las mixtas sólo con nombres mixtos. El valor predeterminado es True.

UseRowColumnNames   Variant opcional. True para usar los nombres de los rangos de filas y columnas que contienen el rango especificado, si no se encuentran los nombres en el rango. False para que se ignoren los argumentos OmitColumn y OmitRow. El valor predeterminado es True.

OmitColumn   Variant opcional. True para reemplazar la referencia completa por el nombre con orientación de fila. El nombre con orientación de columna sólo puede omitirse si la celda a la que se hace referencia está en la misma columna que la fórmula y se encuentra dentro de un rango con nombre orientado a fila. El valor predeterminado es True.

OmitRow   Variant opcional. True para reemplazar la referencia completa por el nombre con orientación de columna. El nombre con orientación de fila sólo puede omitirse si la celda a la que se hace referencia está en la misma fila que la fórmula y se encuentra dentro de un rango con nombre orientado a columna. El valor predeterminado es True.

Order   Variant opcional. Determina qué nombre de rango se enumera primero cuando una referencia de celda se reemplaza por un nombre de rango con orientación de fila y de columna. Puede ser una de las siguientes constantes XlApplyNamesOrder: xlRowThenColumn o xlColumnThenRow.

AppendLast   Variant opcional. True para reemplazar las definiciones de los nombres de Names y también las definiciones de los últimos nombres que se definieron. False para que sólo se reemplacen las definiciones de los nombres de Names. El valor predeterminado es False.

Comentarios

Puede usar la función Array para crear la lista de nombres del argumento Names.

Si desea aplicar nombres a la totalidad de la hoja, use Cells.ApplyNames.

No es posible eliminar los nombres aplicados; para ello, use el método Delete.


Ejemplo del método ApplyNames

Este ejemplo aplica nombres a toda la hoja.

Cells.ApplyNames Names:=Array("Ventas", "Beneficios ")


Método ApplyOutlineStyles

Aplica estilos de esquema al rango.

Sintaxis

expresión.ApplyOutlineStyles

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método ApplyOutlineStyles

El ejemplo siguiente aplica estilos de esquema automáticos a la selección. La selección debe incluir el rango de esquema completo de una hoja de cálculo.

Selection.ApplyOutlineStyles


Método AutoFill

Rellena automáticamente las celdas del rango especificado.

Sintaxis

expresión.AutoFill(Destination, Type)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Destination   Objeto Range requerido. Las celdas que se rellenarán. El destino debe incluir el rango de origen.

Type   Variant opcional. Especifica el tipo de relleno. Puede ser una de las siguientes constantes XlFillType: xlFillDefault, xlFillSeries, xlFillCopy, xlFillFormats, xlFillValues, xlFillDays, xlFillWeekdays, xlFillMonths, xlFillYears, xlLinearTrend o xlGrowthTrend. Si este argumento tiene el valor xlFillDefault o se omite, Microsoft Excel seleccionará el tipo de relleno más apropiado basándose en el rango de origen.


Ejemplo del método AutoFill

Este ejemplo rellena automáticamente las celdas A1:A20 de la Hoja1, basándose en el rango de origen A1:A2 de la misma hoja. Antes de ejecutar este ejemplo, escriba 1 en la celda A1 y 2 en la celda A2.

Set rangoOrigen = Worksheets("Hoja1").Range("A1:A2")

Set llenarRango = Worksheets("Hoja1").Range("A1:A20")

rangoOrigen.AutoFill Destination:=llenarRango


Método AutoFormat

Da formato a un rango de celdas de forma automática usando un formato predefinido.

Sintaxis

expresión.AutoFormat(Format, Number, Font, Alignment, Border, Pattern, Width)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Format   Variant opcional. El Autoformato. Puede ser una de las siguientes constantes XlRangeAutoFormat:

xlRangeAutoFormat3DEffects1 xlRangeAutoFormat3DEffects2 xlRangeAutoFormatAccounting1 xlRangeAutoFormatAccounting2 xlRangeAutoFormatAccounting3 xlRangeAutoFormatAccounting4 xlRangeAutoFormatClassic1 xlRangeAutoFormatClassic2 xlRangeAutoFormatClassic3 xlRangeAutoFormatColor1 xlRangeAutoFormatColor2	xlRangeAutoFormatColor3 xlRangeAutoFormatList1 xlRangeAutoFormatList2 xlRangeAutoFormatList3 xlRangeAutoFormatLocalFormat1 xlRangeAutoFormatLocalFormat2 xlRangeAutoFormatLocalFormat3 xlRangeAutoFormatLocalFormat4 xlRangeAutoFormatNone xlRangeAutoFormatSimple
El valor predeterminado es xlRangeAutoFormatClassic1. Las constantes xlRangeAutoFormatLocalFormat1, xlRangeAutoFormatLocalFormat2, xlRangeAutoFormatLocalFormat3 y xlRangeAutoFormatLocalFormat4 no se utilizan en Microsoft Excel inglés EE.UU.

Number   Variant opcional. True para que se incluyan formatos de número en el Autoformato. El valor predeterminado es True.

Font   Variant opcional. True para que se incluyan formatos de fuente en el Autoformato. El valor predeterminado es True.

Alignment   Variant opcional. True para que se incluya alineamiento en el Autoformato. El valor predeterminado es True.

Border   Variant opcional. True para que se incluyan formatos de borde en el Autoformato. El valor predeterminado es True.

Pattern   Variant opcional. True para que se incluyan formatos de diseño en el Autoformato. El valor predeterminado es True.

Width   Variant opcional. True para que se incluya el ancho de columna y alto de fila en el Autoformato. El valor predeterminado es True.

Comentarios

Si el rango es una sola celda, este método también dará formato a la región que se encuentre alrededor de la celda. En otras palabras, los dos enunciados siguientes son equivalentes.

Cells("A1").AutoFormat

Cells("A1").CurrentRegion.AutoFormat


Ejemplo del método AutoFormat

Este ejemplo da un formato predefinido a las celdas A1:A8 de la Hoja1

Worksheets("Hoja1").Range("A1:D8"). _

AutoFormat Format:=xlRangeAutoFormatClassic1


Método AutoFit

Cambia el ancho de las columnas o el alto de las filas del rango para obtener un ajuste perfecto.

Sintaxis

expresión.AutoFit

expresión   Requerida. Una expresión que devuelve un objeto Range. Debe de ser una fila o un rango de filas o bien una columna o un rango de columnas. De lo contrario, el método generará un error.

Comentarios

Una unidad de ancho de columna equivale al ancho de un carácter con el estilo Normal.


Ejemplo del método AutoFit

Este ejemplo cambia el ancho de las columnas desde A hasta I de la Hoja1 para obtener un ajuste perfecto.

Worksheets("Hoja1").Columns("A:I").AutoFit

Este ejemplo cambia el ancho de las columnas desde A hasta E de la Hoja1 para obtener un ajuste perfecto, basándose exclusivamente en el contenido de las celdas A1:E1.

Worksheets("Hoja1").Range("A1:E1").Columns.AutoFit


Método ClearNotes

Borra las notas escritas y las notas sonoras de todas las celdas del rango especificado.

Sintaxis

expression.ClearNotes

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método ClearNotes

Este ejemplo borra todas las notas y notas sonoras de las columnas desde A hasta C de la Hoja1.

Worksheets("Hoja1").Columns("A:C").ClearNotes


Propiedad Column

Devuelve el número de la primera columna del primer área del rango especificado. Long de sólo lectura.

Comentarios

Column A devuelve 1, column B devuelve 2 y así sucesivamente.

Para devolver el número de la última columna del rango, use la siguiente expresión:

miRango.Columns(miRango.Columns.Count).Column


Ejemplo de la propiedad Column

Este ejemplo establece en 4 puntos el ancho de las columnas salteadas de la Hoja1.

For Each col In Worksheets("Hoja1").Columns

If col.Column Mod 2 = 0 Then

col.ColumnWidth = 4

End If

Next col


Método ColumnDifferences

Devuelve un objeto Range que representa todas las celdas cuyo contenido es diferente del de la celda de comparación de cada columna.

Sintaxis

expresión.ColumnDifferences(Comparison)

expresión   Requerida. Una expresión que devuelve un objeto Range que contiene las celdas que se comparan.

Comparison   Variant requerida. Una sola celda que se compara con el rango especificado.


Ejemplo del método ColumnDifferences

Este ejemplo selecciona las celdas de la columna A de la Hoja1 cuyo contenido es distinto del de la celda A4.

Worksheets("Hoja1").Activate

Set r1 = ActiveSheet.Columns("A").ColumnDifferences( _

Comparison:=ActiveSheet.Range("A4"))

r1.Select


Propiedad ColumnWidth

Devuelve o establece el ancho de las columnas del rango especificado. Variant de Lectura/Escritura.

Comentarios

Una unidad de ancho de columna equivale al ancho de un carácter con el estilo Normal. En las fuentes proporcionales se usa el ancho del carácter 0 (cero).

Use la propiedad Width para devolver el ancho de una columna en puntos.

Si todas las columnas en el rango tienen el mismo ancho, lo devolverá la propiedad ColumnWidth. Si las columnas del rango tienen anchos diferentes, la propiedad devolverá Null.


Ejemplo de la propiedad ColumnWidth

Este ejemplo dobla el ancho de la columna A de la Hoja1.

With Worksheets("Hoja1").Columns("A")

.ColumnWidth = .ColumnWidth * 2

End With


Método Consolidate

Consolida datos de varios rangos de varias hojas de cálculo en un solo rango de una sola hoja de cálculo.

Sintaxis

expresión.Consolidate(Sources, Function, TopRow, LeftColumn, CreateLinks)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Sources   Variant opcional. Las fuentes de la consolidación en forma de una matriz de cadenas de caracteres de referencia de texto en notación de estilo F1C1. Las referencias deben incluir la ruta completa de las hojas que se quieren consolidar.

Function   Variant opcional. La función de consolidación. Puede ser una de las siguientes constantes XlConsolidationFunction: xlAverage, xlCount, xlCountNums, xlMax, xlMin, xlProduct, xlStDev, xlStDevP, xlSum, xlVar o xlVarP. El valor predeterminado es xlAverage.

TopRow   Variant opcional. True para que los datos se consoliden a partir de los títulos de columna en la fila superior de los rangos de consolidación. False para consolidar por posición. El valor predeterminado es False.

LeftColumn   Variant opcional. True para que los datos se consoliden a partir de los títulos de fila en la columna izquierda de los rangos de consolidación. False para consolidar por posición. El valor predeterminado es False.

CreateLinks   Variant opcional. True para que la consolidación use vínculos de hoja de cálculo. False para que la consolidación copie los datos. El valor predeterminado es False.


Ejemplo del método Consolidate

Este ejemplo consolida los datos de la Hoja2 y la Hoja3 en la Hoja1, usando la función SUM.

Worksheets("Hoja1").Range("A1").Consolidate _

Sources:=Array("Hoja2!R1C1:R37C6", "Hoja3!R1C1:R37C6"), _

Function:=xlSum


Método CreateNames

Crea nombres en el rango especificado basándose en los rótulos de texto de la hoja.

Sintaxis

expresión.CreateNames(Top, Left, Bottom, Right)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Top   Variant opcional. True para crear nombres usando los rótulos de la fila superior. El valor predeterminado es False.

Left   Variant opcional. True para crear nombres usando los rótulos de la columna izquierda. El valor predeterminado es False.

Bottom   Variant opcional. True para crear nombres usando los rótulos de la fila inferior. El valor predeterminado es False.

Right   Variant opcional. True para crear nombres usando los rótulos de la columna derecha. El valor predeterminado es False.

Comentarios

Si no especifica uno de los argumentos Top, Left, Bottom o Right, Microsoft Excel adivinará la posición de los rótulos de texto en función de la forma del rango especificado.


Ejemplo del método CreateNames

Este ejemplo crea nombres para las celdas B1:B3 basándose en el texto de las celdas A1:A3. Tenga en cuenta que debe incluir en el rango las celdas que contienen los nombres, aunque los nombres sólo se crearán para las celdas B1:B3.

Set rangoANombrar = Worksheets("Hoja1").Range("A1:B3")

rangoANombrar.CreateNames Left:=True


Propiedad CurrentArray

Si esta celda forma parte de una matriz, devuelve un objeto Range que representa toda la matriz. Es de sólo lectura.


Ejemplo de la propiedad CurrentArray

En este ejemplo se supone que la celda activa es la A1 de la Hoja1 y que forma parte de una matriz que incluye las celdas A1:A10. El ejemplo selecciona las celdas A1:A10 de la Hoja1.

ActiveCell.CurrentArray.Select


Propiedad CurrentRegion

Devuelve un objeto Range que representa la región actual. La región actual es un rango limitado por cualquier combinación de filas y columnas vacías. Es de sólo lectura.

Comentarios

Esta propiedad es útil para muchas operaciones que amplían automáticamente la selección para incluir toda la región actual, tal como ocurre con el método AutoFormat.


Ejemplo de la propiedad CurrentRegion

Este ejemplo selecciona la región actual de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.CurrentRegion.Select

En este ejemplo se supone que la Hoja1 contiene una tabla con una fila de encabezado. El ejemplo selecciona la tabla sin seleccionar la fila de encabezado. Para poder ejecutar el ejemplo, la celda activa debe estar en la tabla.

Set tbl = ActiveCell.CurrentRegion

tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).Select


Método DataSeries

Crea una serie de datos en el rango especificado.

Sintaxis

expresión.DataSeries(Rowcol, Type, Date, Step, Stop, Trend)

expresión   Indispensable. Una expresión que devuelve un objeto Range.

Rowcol   Variant opcional. Puede ser una de las constantes xlRows o xlColumns para que la serie de datos se introduzca en filas o columnas, respectivamente. Si este argumento se omite, se usará el tamaño y la forma del rango.

Type   Variant opcional. Puede ser una de las siguientes constantes XlDataSeriesType: xlDataSeriesLinear, xlGrowth, xlChronological o xlAutoFill. El valor predeterminado es xlDataSeriesLinear.

Date   Variant opcional. Si el argumento Type es xlChronological, el argumento Date indica el incremento de la unidad de tiempo. Puede ser una de las siguientes constantes XlDataSeriesDate: xlDay, xlWeekday, xlMonth o xlYear. El valor predeterminado es xlDay.

Step   Variant opcional. El valor de incremento de la serie. El valor predeterminado es 1.

Stop   Variant opcional. El valor final de la serie. Si este argumento se omite, Microsoft Excel rellenará hasta el final del rango.

Trend   Variant opcional. True para crear una tendencia lineal o geométrica. False para crear una serie de datos estándar. El valor predeterminado es False.


Ejemplo del método DataSeries

Este ejemplo crea una serie de 12 fechas. La serie contiene el último día de cada mes de 1996 y se crea en el rango A1:A12 de la Hoja1.

Set rangoFecha = Worksheets("Hoja1").Range("A1:A12")

Worksheets("Hoja1").Range("A1").Formula = "31-ENE-1996"

rangoFecha.DataSeries Type:=xlChronological, Date:=xlMonth


Propiedad Dependents

Devuelve un objeto Range que representa el rango que contiene todas las celdas dependientes de una celda. Puede ser una selección múltiple (una unión de objetos Range) si hay más de una celda dependiente. Es de sólo lectura.


Ejemplo de la propiedad Dependents

Este ejemplo selecciona las celdas dependientes de la celda A1 en la Hoja1.

Worksheets("Hoja1").Activate

Range("A1").Dependents.Select


Método DialogBox

Muestra un cuadro de diálogo definido por una tabla de definición de cuadro de diálogo de una hoja de macros de Microsoft Excel 4.0. Devuelve el número del control elegido o devuelve False si el usuario hace clic en el botón Cancelar.

Sintaxis

expresión.DialogBox

expresión   Indispensable. Una expresión que devuelve un objeto Range. El Range debe hacer referencia a una tabla de definición de cuadro de diálogo de una hoja de macros de Microsoft Excel 4.0.


Ejemplo del método DialogBox

Este ejemplo ejecuta un cuadro de diálogo de Microsoft Excel 4.0 y, a continuación, muestra el valor devuelto en un cuadro de mensaje. La variable rangoDiálogo hace referencia a la tabla de definición del cuadro de diálogo en la hoja de macros Macro1 de Microsoft Excel 4.0.

Set rangoDiálogo = Excel4MacroSheets("Macro1").Range("miCuadroDiálogo")

result = rangoDiálogo.DialogBox

MsgBox result


Propiedad DirectDependents

Devuelve un objeto Range que representa el rango que contiene todas las celdas dependientes directas de una celda. Puede ser una selección múltiple (una unión de objetos Range) si hay más de una celda dependiente. Es de sólo lectura.


Ejemplo de la propiedad DirectDependents

Este ejemplo selecciona las celdas dependientes directas de la celda A1 de la Hoja1.

Worksheets("Hoja1").Activate

Range("A1").DirectDependents.Select


Propiedad DirectPrecedents

Devuelve un objeto Range que representa el rango que contiene todas las celdas precedentes directas de una celda. Puede ser una selección múltiple (una unión de objetos Range) si hay más de una celda precedente. Es de sólo lectura.


Ejemplo de la propiedad DirectPrecedents

Este ejemplo selecciona las celdas precedentes directas de la celda A1 de la Hoja1.

Worksheets("Hoja1").Activate

Range("A1").DirectPrecedents.Select


Propiedad EntireColumn

Devuelve un objeto Range que representa toda la columna (o columnas) que contiene el rango especificado. Es de sólo lectura.


Ejemplo de la propiedad EntireColumn

Este ejemplo establece el valor de la primera celda de la columna que contiene la celda activa. El ejemplo debe ejecutarse desde una hoja de cálculo.

ActiveCell.EntireColumn.Cells(1, 1).Value = 5


Propiedad EntireRow

Devuelve un objeto Range que representa toda la fila (o filas) que contiene el rango especificado. Es de sólo lectura.


Ejemplo de la propiedad EntireRow

Este ejemplo establece el valor de la primera celda de la fila que contiene la celda activa. El ejemplo debe ejecutarse desde una hoja de cálculo.

ActiveCell.EntireRow.Cells(1, 1).Value = 5


Método FillDown

Rellena hacia abajo desde la celda o celdas superiores del rango especificado hasta el final del rango. El contenido y formato de la celda o celdas que están en la fila superior de un rango se copiarán en el resto de las filas del rango.

Sintaxis

expresión.FillDown

expresión   Indispensable. Una expresión que devuelve un objeto Range.


Ejemplo del método FillDown

Este ejemplo llena el rango A1:A10 de la Hoja1 en función del contenido de la celda A1.

Worksheets("Hoja1").Range("A1:A10").FillDown


Método FillLeft

Rellena hacia la izquierda desde la celda o celdas que están más a la derecha en el rango especificado. El contenido y formato de la celda o celdas que estén en la fila del extremo derecho de un rango se copiarán en el resto de las columnas del rango.

Sintaxis

expresión.FillLeft

expresión   Indispensable. Una expresión que devuelve un objeto Range.


Ejemplo del método FillLeft

Este ejemplo llena el rango A1:M1 de la Hoja1 en función del contenido de la celda M1.

Worksheets("Hoja1").Range("A1:M1").FillLeft


Método FillRight

Rellena hacia la derecha desde la celda o celdas que están más a la izquierda en el rango especificado. El contenido y formato de la celda o celdas que estén en la columna del extremo izquierdo de un rango se copiará en el resto de las columnas del rango.

Sintaxis

expresión.FillRight

expresión   Indispensable. Una expresión que devuelve un objeto Range.


Ejemplo del método FillRight

Este ejemplo rellena el rango A1:M1 de la Hoja1 en función del contenido de la celda A1.

Worksheets("Hoja1").Range("A1:M1").FillRight


Método FillUp

Rellena hacia arriba desde la celda o celdas inferiores del rango especificado hasta el principio del rango. El contenido y formato de la celda o celdas que están en la fila inferior de un rango se copiarán en el resto de las filas del rango.

Sintaxis

expresión.FillUp

expresión   Indispensable. Una expresión que devuelve un objeto Range.


Ejemplo del método FillUp

Este ejemplo llena el rango A1:A10 de la Hoja1 en función del contenido de la celda A10.

Worksheets("Hoja1").Range("A1:A10").FillUp


Método Find

Busca información específica en un rango y devuelve un objeto Range que representa la primera celda donde la encuentra. Devuelve Nothing si no encuentra coincidencias. No afecta a la selección ni a la celda activa.

Para obtener más información acerca de cómo usar la función de hoja de cálculo Find en Visual Basic, vea Uso de funciones de hoja de cálculo de Microsoft Excel en Visual Basic.

Sintaxis

expresión.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte)

expresión   Indispensable. Una expresión que devuelve un objeto Range.

What   Variant indispensable. La información que se busca. Puede ser una cadena de caracteres o cualquier tipo de datos de Microsoft Excel.

After   Variant opcional. La celda después de la cual se desea buscar. Corresponde a la posición de la celda activa cuando se lleva a cabo una búsqueda desde el interfaz del usuario. Tenga en cuenta que After debe ser una sola celda del rango. Recuerde que la búsqueda empieza después de esta celda; no se buscará en la celda hasta que el método regrese a ella. Si este argumento no se especifica, la búsqueda se iniciará después de la celda de la esquina superior izquierda del rango.

LookIn   Variant opcional. Puede ser una de las siguientes constantes XlFindLookIn: xlFormulas, xlValues o xlNotes.

LookAt   Variant opcional. Puede ser una de las siguientes constantes XlLookAt: xlWhole o xlPart.

SearchOrder   Variant opcional. Puede ser una de las siguientes constantes XlSearchOrder: xlByRows o xlByColumns.

SearchDirection   Variant opcional. Puede ser una de las siguientes constantes XlSearchDirection: xlNext o xlPrevious. El valor predeterminado es xlNext.

MatchCase   Variant opcional. True para que la búsqueda distinga entre mayúsculas y minúsculas.

MatchByte   Variant opcional. Se emplea únicamente en la versión para Lejano Oriente de Microsoft Excel. True para que los caracteres de dos bytes sólo coincidan con caracteres de dos bytes. False para que dichos caracteres coincidan con sus equivalentes de un solo byte.

Comentarios

Los valores de LookIn, LookAt, SearchOrder, MatchCase y MatchByte se guardan cada vez que se usa este método. Si no especifica valores para estos argumentos, la próxima vez que llame al método se usarán los valores guardados. Si establece estos argumentos, cambiará los valores del cuadro de diálogo Buscar, lo cual a su vez cambiará los valores guardados que se emplean si se omiten los argumentos. Para evitar problemas, establezca explícitamente estos argumentos cada vez que use el método.

Puede usar los métodos FindNext y FindPrevious para repetir la búsqueda.

Cuando la búsqueda alcance el final del rango especificado, regresará al principio del rango. Para detener la búsqueda cuando se produzca esta situación, guarde la dirección de la primera celda encontrada y después compare cada dirección de celda encontrada sucesiva con la dirección guardada.

Para buscar celdas que coincidan con diseños más complicados, use For Each...Next con el operador Like. Por ejemplo, el siguiente código busca todas las celdas del rango A1:C5 que usan una fuente cuyo nombre empieza por las letras "Cour". Si Microsoft Excel encuentra una coincidencia, cambiará la fuente a Times New Roman.

For Each c In [A1:C5]

If c.Font.Name Like "Cour*" Then

c.Font.Name = "Times New Roman"

End If

Next


Ejemplo del método Find

Este ejemplo busca todas las celdas del rango A1:A500 que contienen el valor 2 y las pone de color gris.

With Worksheets(1).Range("a1:a500")

    Set c = .Find(2, lookin:=xlValues)

    If Not c Is Nothing Then

        firstAddress = c.Address

        Do

            c.Interior.Pattern = xlPatternGray50

            Set c = .FindNext(c)

        Loop While Not c Is Nothing And c.Address <> firstAddress

    End If

End With


Método FindNext

Continúa una búsqueda iniciada con el método Find. Busca la siguiente celda que cumple las mismas condiciones y devuelve un objeto Range que la representa. No afecta a la selección ni a la celda activa.

Sintaxis

expresión.FindNext(After)

expresión   Indispensable. Una expresión que devuelve un objeto Range.

After   Variant opcional. La celda después de la cual se desea buscar. Corresponde a la posición de la celda activa cuando se lleva a cabo una búsqueda desde la interfaz del usuario. Tenga en cuenta que After debe ser una sola celda del rango. Recuerde que la búsqueda empieza después de esta celda; no se buscará en la celda hasta que el método regrese a ella. Si este argumento no se especifica, la búsqueda se iniciará después de la celda de la esquina superior izquierda del rango.

Comentarios

Cuando la búsqueda alcance el final del rango especificado, regresará al principio del rango. Para detener la búsqueda cuando se produzca esta situación, guarde la dirección de la primera celda encontrada y después compare cada dirección de celda encontrada sucesiva con la dirección guardada.


Ejemplo del método FindNext

Este ejemplo busca todas las celdas del rango A1:A500 que contienen el valor 2 y las pone de color gris.

With Worksheets(1).Range("a1:a500")

    Set c = .Find(2, lookin:=xlValues)

    If Not c Is Nothing Then

        firstAddress = c.Address

        Do

            c.Interior.Pattern = xlPatternGray50

            Set c = .FindNext(c)

        Loop While Not c Is Nothing And c.Address <> firstAddress

    End If

End With


Método FindPrevious

Continúa una búsqueda iniciada con el método Find. Busca la celda anterior que cumple las mismas condiciones y devuelve un objeto Range que la representa. No afecta a la selección ni a la celda activa.

Sintaxis

expresión.FindPrevious(After)

expresión   Indispensable. Una expresión que devuelve un objeto Range.

After   Variant opcional. La celda antes de la cual se desea buscar. Corresponde a la posición de la celda activa cuando se lleva a cabo una búsqueda desde el interfaz del usuario. Tenga en cuenta que After debe ser una sola celda del rango. Recuerde que la búsqueda empieza antes de esta celda; no se buscará en la celda especificada hasta que el método regrese a ella. Si este argumento no se especifica, la búsqueda se iniciará antes de la celda de la esquina superior izquierda del rango.

Comentarios

Cuando la búsqueda alcance el principio del rango de búsqueda especificado, regresará al final del rango. Para detener la búsqueda cuando se produzca esta situación, guarde la dirección de la primera celda encontrada y después compare cada dirección de celda encontrada sucesiva con la dirección guardada.


Ejemplo del método FindPrevious

Este ejemplo muestra cómo se usa el método FindPrevious con los métodos Find y FindNext. Antes de ejecutar este ejemplo, compruebe que la Hoja1 contiene al menos dos apariciones de la palabra “Phoenix” en la columna B.

Set fc = Worksheets("Hoja1").Columns("B").Find(what:="Phoenix")

MsgBox "La primera aparición es en la celda " & fc.Address

Set fc = Worksheets("Hoja1").Columns("B").FindNext(after:=fc)

MsgBox "La aparición siguiente es en la celda " & fc.Address

Set fc = Worksheets("Hoja1").Columns("B").FindPrevious(after:=fc)

MsgBox "La aparición anterior es en la celda " & fc.Address


Propiedad FormulaArray

Devuelve o establece la fórmula matricial de un rango. Devuelve una sola fórmula o una matriz de Visual Basic (o puede establecerse como ellas). Si el rango especificado no contiene una fórmula matricial, esta propiedad devolverá Null. Variant de lectura o escritura.

Comentarios

Si usa esta propiedad para introducir una fórmula matricial, la fórmula deberá estar en el estilo F1C1, no en el estilo de referencia A1 (vea el segundo ejemplo).


Ejemplo de la propiedad FormulaArray

Este ejemplo introduce el número 3 como una constante matricial en las celdas A1:C5 de la Hoja1.

Worksheets("Hoja1").Range("A1:C5").FormulaArray = "=3"

Este ejemplo introduce la fórmula matricial =SUMA(R1C1:R3C3) en las celdas E1:E3 de la Hoja1.

Worksheets("Hoja1").Range("E1:E3").FormulaArray = _

"=Suma(R1C1:R3C3)"


Propiedad FormulaHidden

True si la fórmula estará oculta cuando el libro o la hoja de cálculo estén protegidos. Boolean de lectura o escritura.

Comentarios

No confunda esta propiedad con la propiedad Hidden.


Ejemplo de la propiedad FormulaHidden

Este ejemplo oculta las fórmulas de la columna A de la Hoja1 cuando la hoja de cálculo está protegida.

Worksheets("Hoja1").Columns("A").FormulaHidden = True


Método GoalSeek

Calcula los valores necesarios para alcanzar un objetivo específico. Si el objetivo es una cantidad devuelta por una fórmula, calculará un valor que, cuando se aplique a la fórmula, causará que ésta devuelva el número deseado. Devuelve True si se encuentra el objetivo que se busca.

Sintaxis

expresión.GoalSeek(Goal, ChangingCell)

expresión   Indispensable. Una expresión que devuelve un objeto Range. Debe ser una sola celda.

Goal   Variant indispensable. El valor que desea que se devuelva en esta celda.

ChangingCell   Range indispensable. Especifica la celda que debe cambiarse para obtener el valor objetivo.


Ejemplo del método GoalSeek

En este ejemplo se supone que la Hoja1 tiene una celda llamada "Polinomio" que contiene la fórmula =(X^3)+(3*X^2)+6 y otra celda llamada "X" que está vacía. El ejemplo busca un valor para X a fin de que “Polinomio” contenga el valor 15.

Worksheets("Hoja1").Range("Polinomio").GoalSeek _

Goal:=15, _

ChangingCell:=Worksheets("Hoja1").Range("X")


Método Goto

Selecciona cualquier rango o procedimiento de Visual Basic en cualquier libro y activa ese mismo libro si no está activo.

Sintaxis

expresión.Goto(Reference, Scroll)

expresión   Indispensable. Una expresión que devuelve un objeto Application.

Reference   Variant opcional. El destino. Puede ser un objeto Range, una cadena que contenga una referencia de celda en estilo F1C1 o una cadena que contenga el nombre de un procedimiento de Visual Basic. Si este argumento se omite, el destino será el último rango seleccionado con el método Goto.

Scroll   Variant opcional. True para desplazarse en la ventana de manera que la esquina superior izquierda del rango aparezca en la esquina superior izquierda de la ventana. False para no desplazarse en la ventana. La configuración predeterminada es False.

Comentarios

Este método difiere del método Select en lo siguiente:

•	Si especifica un rango de una hoja que no está en primer plano, Microsoft Excel cambiará a dicha hoja antes de seleccionar (si usa Select con un rango de una hoja que no está en primer plano, se seleccionará el rango pero la hoja no se activará).

•	Este método tiene un argumento Scroll que permite desplazarse en la ventana de destino.

•	Si usa el método Goto, la selección anterior (anterior a la ejecución del método Goto) se agregará a la matriz de selecciones previas (para obtener más información, vea la propiedad PreviousSelections). Puede usar esta característica para saltar rápidamente entre un máximo de cuatro selecciones.

•	El método Select tiene un argumento Replace; mientras que el método Goto no.


Ejemplo del método Goto

Este ejemplo selecciona la celda A154 de la Hoja1 y, a continuación, se desplaza en la hoja de cálculo para mostrar el rango.

Application.Goto Reference:=Worksheets("Hoja1").Range("A154"), _

scroll:=True


Propiedad HasArray

True si la celda especificada forma parte de una fórmula matricial. Variant de sólo lectura.


Ejemplo de la propiedad HasArray

Este ejemplo muestra un mensaje si la celda activa de la Hoja1 forma parte de una matriz.

Worksheets("Hoja1").Activate

If ActiveCell.HasArray =True Then

MsgBox "La celda activa forma parte de una matriz"

End If


Propiedad HasFormula

True si todas las celdas del rango contienen fórmulas; False si ninguna de las celdas del rango contiene una fórmula; Null en los demás casos. Variant de sólo lectura.


Ejemplo de la propiedad HasFormula

Este ejemplo solicita al usuario que seleccione un rango de la Hoja1. Si todas las celdas del rango seleccionado contienen una fórmula, el ejemplo mostrará un mensaje.

Worksheets("Hoja1").Activate

Set rr = Application.InputBox( _

prompt:="Seleccione un rango en esta hoja de cálculo", _

Type:=8)

If rr.HasFormula = True Then

MsgBox "Todas las celdas de la selección contienen una fórmula"

End If


Propiedad Hidden

Objeto Range: True si las filas o columnas están ocultas. El rango especificado debe cubrir la totalidad de una columna o una fila. Variant de lectura o escritura.

Objeto Scenario: True si el escenario está oculto. El valor predeterminado es False. Boolean de lectura o escritura.

Comentarios

No confunda esta propiedad con la propiedad FormulaHidden.


Ejemplo de la propiedad Hidden

Este ejemplo oculta la columna C de la Hoja1.

Worksheets("Hoja1").Columns("C").Hidden = True


Método Justify

Reorganiza el texto de un rango para rellenarlo uniformemente.

Sintaxis

expresión.Justify

expresión   Indispensable. Una expresión que devuelve un objeto Range.

Comentarios

Si el rango no es suficientemente grande, Microsoft Excel mostrará un mensaje para avisar que el texto se extenderá por debajo del rango. Si hace clic en el botón Aceptar, el texto ajustado reemplazará al contenido de las celdas que se extiendan más allá del rango seleccionado. Para evitar que aparezca este mensaje, establezca la propiedad DisplayAlerts como False. Después de establecer la propiedad, el texto siempre reemplazará al contenido de las celdas que se encuentren debajo del rango.


Ejemplo del método Justify

Este ejemplo justifica el texto de la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Justify


Método ListNames

Pega una lista de todos los nombres no ocultos en la hoja de cálculo, comenzando por la primera celda del rango.

Sintaxis

expresión.ListNames

expresión   Indispensable. Una expresión que devuelve un objeto Worksheet.

Comentarios

Use la propiedad Names para devolver un conjunto de todos los nombres de una hoja de cálculo.


Ejemplo del método ListNames

Este ejemplo pega una lista de nombres definidos en la celda A1 de la Hoja1. El ejemplo pega los nombres de nivel de libro y de nivel de hoja definidos en la Hoja1.

Worksheets("Hoja1").Range("A1").ListNames


Propiedad Next

Devuelve un objeto Chart, Range o Worksheet que representa la hoja o celda siguiente. Es de sólo lectura.

Comentarios

Si el objeto es un rango, esta propiedad emulará a la tecla TAB, aunque la propiedad devolverá la celda siguiente sin seleccionarla.

En una hoja protegida, esta propiedad devuelve la siguiente celda desbloqueada. En una hoja desprotegida, siempre devuelve la celda situada inmediatamente a la derecha de la celda especificada.


Ejemplo de la propiedad Next

Este ejemplo selecciona la siguiente celda desbloqueada de la Hoja1. Si la Hoja1 no está protegida, esta será la celda situada inmediatamente a la derecha de la celda activa.

Worksheets("Hoja1").Activate

ActiveCell.Next.Select


Método ChangeScenario

Cambia el escenario para que tenga un nuevo conjunto de celdas cambiantes y (de manera opcional) valores de escenario.

Sintaxis

expresión.ChangeScenario(ChangingCells, Values)

expresión   Requerida. Una expresión que devuelve un objeto Scenario.

ChangingCells   Variant requerida. Un objeto Range que especifica el nuevo conjunto de celdas cambiantes del escenario. Las celdas cambiantes deben estar en la misma hoja que el escenario.

Values   Variant opcional. Una matriz que contiene los nuevos valores de escenario de las celdas cambiantes. Si este argumento se omite, se supondrá que los valores de escenario son los valores actuales de las celdas cambiantes.

Comentarios

Si especifica Values, la matriz deberá contener un elemento por cada celda del rango ChangingCells; de lo contrario, Microsoft Excel generará un error.


Ejemplo del método ChangeScenario

Este ejemplo establece las celdas cambiantes para el escenario uno del rango A1:A10.

Worksheets("Hoja1").Scenarios(1).ChangeScenario _

Worksheets("Hoja1").Range("A1:A10")


Propiedad ChangingCells

Devuelve un objeto Range que representa las celdas cambiantes de un escenario. Es de sólo lectura.


Ejemplo de la propiedad ChangingCells

Este ejemplo selecciona las celdas cambiantes para el escenario uno de la Hoja1.

Worksheets("Hoja1").Activate

ActiveSheet.Scenarios(1).ChangingCells.Select


Método CopyPicture

Copia el objeto seleccionado en el Portapapeles, en forma de imagen.

Sintaxis

expresión.CopyPicture(Appearance, Format, Size)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Appearance   Variant opcional. Especifica cómo debe copiarse la imagen. Puede ser una de las siguientes constantes XlPictureAppearance: xlScreen o xlPrinter. Si se emplea xlScreen, la imagen se copiará de tal forma que se parezca lo más posible a su presentación en la pantalla. Si se emplea xlPrinter, la imagen se copiará tal como aparezca cuando se imprima. El valor predeterminado es xlScreen.

Format   Variant opcional. El formato de la imagen. Puede ser una de las siguientes constantes XlCopyPictureFormat: xlPicture o xlBitmap. El valor predeterminado es xlPicture.

Size   Variant opcional. Se usa únicamente con objetos Chart. El tamaño de la imagen copiada cuando el objeto es un gráfico de una hoja de gráficos (no un gráfico incrustado en una hoja de cálculo). Puede ser una de las siguientes constantes XlPictureAppearance: xlScreen o xlPrinter. Si se emplea xlScreen, la imagen se copiará con un tamaño lo más parecido posible a su presentación en la pantalla. Si se emplea xlPrinter, la imagen se copiará de tal forma que se parezca lo más posible a su tamaño impreso. El valor predeterminado es xlPrinter.

Comentarios

Si copia un rango, deberá estar compuesto por celdas adyacentes.


Ejemplo del método CopyPicture

Este ejemplo copia en el Portapapeles una imagen de pantalla de las celdas A1:D4 de la Hoja1 y después pega el mapa de bits en otro lugar de la misma hoja.

Worksheets("Hoja1").Range("A1:D4").CopyPicture xlScreen, xlBitmap

Worksheets("Hoja1").Paste _

Destination:=Worksheets("Hoja1").Range("E6")


Método CreateSummary

Crea una hoja de cálculo nueva que contiene un informe de resumen de los escenarios de la hoja especificada.

Sintaxis

expresión.CreateSummary(ReportType, ResultCells)

expresión   Requerida. Una expresión que devuelve un conjunto Scenarios.

ReportType   Variant opcional. El tipo del informe. Puede ser una de las siguientes constantes XlSummaryReportType: xlStandardSummary o xlSummaryPivotTable. El valor predeterminado es xlStandardSummary.

ResultCells   Variant opcional. Un objeto Range que representa las celdas de resultado de la hoja especificada. Normalmente este rango hace referencia a una o varias celdas que contienen las fórmulas dependientes de los valores de las celdas cambiantes para el modelo, es decir, las celdas que muestran los resultados de un escenario en particular. Si este argumento se omite, no se incluirán en el informe celdas de resultado.


Ejemplo del método CreateSummary

Este ejemplo crea un resumen de los escenarios de la Hoja1, con las celdas de resultado en el rango C4:C9 de la Hoja1.

Worksheets("Hoja1").Scenarios.CreateSummary _

ResultCells := Worksheets("Hoja1").Range("C4:C9")


Método Cut

Corta el objeto al Portapapeles o lo pega en un destino especificado.

Sintaxis

expresión.Cut(Destination)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Destination   Variant opcional. Se usa únicamente con objetos Range. El rango donde debe pegarse el objeto. Si este argumento se omite, el objeto se cortará al Portapapeles.

Comentarios

El rango cortado debe estar compuesto por celdas adyacentes.

Sólo pueden cortarse los gráficos incrustados.


Ejemplo del método Cut

Este ejemplo corta el rango A1:G37 de la Hoja1 y lo sitúa en el Portapapeles.

Worksheets("Hoja1").Range("A1:G37").Cut


Propiedad Delivery

Devuelve o establece el método de entrega de distribución. Puede ser una de las siguientes constantes XlRoutingSlipDelivery: xlOneAfterAnother o xlAllAtOnce. Long de Lectura/Escritura.

Comentarios

Esta propiedad no puede establecerse si hay una distribución en curso.


Ejemplo de la propiedad Delivery

Este ejemplo envía LIBRO1.XLS a tres destinatarios, de forma consecutiva.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés Díaz", "Juan García", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

End With

Workbooks("LIBRO1.XLS").Route


Método ErrorBar

Aplica barras de error a la serie.

Sintaxis

expresión.ErrorBar(Direction, Include, Type, Amount, MinusValues)

expresión   Requerida. Una expresión que devuelve un objeto Series.

Direction   Variant opcional. La dirección de las barras de error. Puede ser una de las siguientes constantes XlErrorBarDirection: xlX o xlY. xlX sólo puede emplearse con gráficos de dispersión. El valor predeterminado es xlY.

Include   Variant opcional. Las partes de las barras de error que se incluirán. Puede ser una de las siguientes constantes XlErrorBarInclude: xlErrorBarIncludePlusValues, xlErrorBarIncludeMinusValues, xlErrorBarIncludeNone o xlErrorBarIncludeBoth. El valor predeterminado es xlErrorBarIncludeBoth.

Type   Variant opcional. El tipo de las barras de error. Puede ser una de las siguientes constantes XlErrorBarType: xlErrorBarTypeFixedValue, xlErrorBarTypePercent, xlErrorBarTypeStDev, xlErrorBarTypeStError o xlErrorBarTypeCustom.

Amount   Variant opcional. La cuantía del error. Se emplea únicamente para cuantías de error positivas cuando Type es xlErrorBarTypeCustom.

MinusValues   Variant opcional. La cuantía de error negativa cuando Type es xlErrorBarTypeCustom.


Ejemplo del método ErrorBar

Este ejemplo aplica barras de error estándar en la dirección Y de la serie uno del Gráfico1. Las barras de error se aplican en las direcciones positiva y negativa. El ejemplo debe ejecutarse en un gráfico de líneas 2D.

Charts("Gráfico1").SeriesCollection(1).ErrorBar _

Direction:=xlY, Include:=xlErrorBarIncludeBoth, _

Type:=xlErrorBarTypeStError


Propiedad ErrorBars

Devuelve un objeto ErrorBars que representa las barras de error de la serie. Es de sólo lectura.


Ejemplo de la propiedad ErrorBars

Este ejemplo establece el color de las barras de error para la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D que tenga barras de error para la serie uno.

With Charts("Gráfico1").SeriesCollection(1)

.ErrorBars.Border.ColorIndex = 8

End With


Propiedad Formula

Devuelve o establece la fórmula del objeto, usando la notación de estilo A1 en lenguaje de la macro. Variant de Lectura/Escritura para objetos Range, String para todos los demás objetos.

Comentarios

Si la celda contiene una constante, esta propiedad la devolverá. Si la celda está vacía, Formula devuelve una cadena vacía. Si la celda contiene una fórmula, Formula devolverá la fórmula en forma de cadena, con el mismo formato en que se presentaría en la barra de fórmulas (incluido el signo igual).

Si se define el valor o la fórmula de una celda como una fecha, Microsoft Excel comprobará si dicha celda ya tiene uno de los formatos numéricos de fecha u hora. De lo contrario, cambiará el formato numérico al formato numérico de fecha corto predeterminado.

Si el rango tiene una o dos dimensiones, puede definir la fórmula conforme a una matriz de Visual Basic de las mismas dimensiones. Asimismo, es posible introducir la fórmula en una matriz de Visual Basic.

Si define la fórmula para un rango de varias celdas, se rellenarán todas las celdas del rango con la fórmula.


Ejemplo de la propiedad Formula

Este ejemplo establece la fórmula de la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Formula = "=$A$4+$A$10"


Método FunctionWizard

Ejecuta el Asistente para funciones en la celda superior izquierda del rango.

Sintaxis

expresión.FunctionWizard

expresión   Requerida. Una expresión que devuelve un objeto Range.


 Ejemplo del método FunctionWizard

Este ejemplo ejecuta el Asistente para funciones en la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.FunctionWizard


Propiedad HasErrorBars

True si la serie tiene barras de error. Esta propiedad no está disponible para gráficos 3D. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasErrorBars

Este ejemplo elimina las barras de error de la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D que tenga barras de error para la serie uno.

Charts("Gráfico1").SeriesCollection(1).HasErrorBars = False


Propiedad HorizontalAlignment

Devuelve o establece la alineación horizontal del objeto. Para todos los objetos, puede ser una de las siguientes constantes XlHAlign: xlHAlignCenter, xlHAlignDistributed, xlHAlignJustify, xlHAlignLeft o xlHAlignRight. Además, para un objeto Range o Style, la propiedad puede establecerse como xlHAlignCenterAcrossSelection, xlHAlignFill o xlHAlignGeneral. Long de Lectura/Escritura.

Comentarios

El estilo de alineación xlHAlignDistributed funciona sólo en las versiones de Microsoft Excel para el Lejano Oriente.


Ejemplo de la propiedad HorizontalAlignment

Este ejemplo alinea a la izquierda el rango A1:A5 de la Hoja1.

Worksheets("Hoja1").Range("A1:A5").HorizontalAlignment = xlLeft


Método Import

This method should not be used. Sound notes have been removed from Microsoft Excel.


Propiedad Interior

Devuelve un objeto Interior que representa el interior del objeto especificado. Es de sólo lectura.


Ejemplo de la propiedad Interior

Este ejemplo establece en aguamarina el color interior de la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Interior.ColorIndex = 8


Propiedad InvertIfNegative

True si Microsoft Excel invierte el diseño en el elemento cuando éste corresponde a un número negativo. Variant de Lectura/Escritura para objetos Interior, Boolean para todos los demás objetos.


Ejemplo de la propiedad InvertIfNegative

Este ejemplo invierte el diseño de los valores negativos en la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de columnas 2D.

Charts("Gráfico1").SeriesCollection(1).InvertIfNegative = True


Propiedad Locked

True si el objeto está bloqueado, False si puede modificarse cuando la hoja está protegida. Devuelve Null si el rango especificado contiene celdas bloqueadas y celdas desbloqueadas. Variant de Lectura/Escritura para objetos Range, Boolean para todos los demás objetos.


Ejemplo de la propiedad Locked

Este ejemplo desbloquea las celdas A1:G37 de la Hoja1 para que puedan modificarse si la hoja está protegida.

Worksheets("Hoja1").Range("A1:G37").Locked = False

Worksheets("Hoja1").Protect


Propiedad Message

Devuelve o establece el texto del mensaje de la lista de distribución. Este texto se emplea como texto principal de los mensajes de correo usados para distribuir el libro. String de Lectura/Escritura.


Ejemplo de la propiedad Message

Este ejemplo envía LIBRO1.XLS a tres destinatarios, de forma consecutiva.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés Díaz", "Juan García", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

End With

Workbooks("LIBRO1.XLS").Route


Propiedad NumberFormat

Devuelve o establece el código de formato del objeto. Devuelve Null si no todas las celdas del rango especificado tienen el mismo formato numérico. Variant de Lectura/Escritura para objetos Range, String para todos los demás objetos.

Comentarios

Para el objeto PivotField, sólo puede establecerse la propiedad NumberFormat para un campo de datos.

El código de formato es la misma cadena que la opción Códigos de formato del cuadro de diálogo Formato de celdas. La función Format usa cadenas de código de formato diferentes que las propiedades NumberFormat y NumberFormatLocal.


Ejemplo de la propiedad NumberFormat

Estos ejemplos establecen el formato numérico de la celda A17, fila uno, y la columna C (respectivamente) de la Hoja1.

Worksheets("Hoja1").Range("A17").NumberFormat = "General"

Worksheets("Hoja1").Rows(1).NumberFormat = "hh:mm:ss"

Worksheets("Hoja1").Columns("C"). _

NumberFormat = "#,##0,00 $_),[Rojo](#.##0,00 $)"


Método Play

This method should not be used. Sound notes have been removed from Microsoft Excel.


Propiedad PlotOrder

Devuelve o establece el orden de trazado para la serie seleccionada en el grupo de gráficos. Long de Lectura/Escritura.

Comentarios

El orden de trazado sólo puede establecerse dentro de un grupo de gráficos (no es posible establecerlo para todo el gráfico si hay varios tipos de gráficos). Un grupo de gráficos es un conjunto de series que tienen el mismo tipo de gráfico.

Si se cambia el orden de trazado de una serie, se ajustará el orden de trazado de las demás series del grupo de gráficos según sea necesario.


Ejemplo de la propiedad PlotOrder

Este ejemplo hace que la serie dos del Gráfico1 aparezca en tercer lugar en el orden de trazado. El ejemplo debe ejecutarse en un gráfico de columnas 2D con tres o más series.

Charts("Gráfico1").ChartGroups(1).SeriesCollection(2).PlotOrder = 3


Método Points

Devuelve un objeto que representa un solo punto (un objeto Point, sintaxis 1) o un conjunto de todos los puntos (un objeto Points, sintaxis 2) de la serie. Es de sólo lectura.

Sintaxis 1

expresión.Points(Index)

Sintaxis 2

expresión.Points

expresión   Requerida. Una expresión que devuelve un objeto Series.

Index   Variant opcional. El nombre o número del punto.


Ejemplo del método Points

Este ejemplo aplica un rótulo de datos al punto uno de la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1).Points(1).ApplyDataLabels


Propiedad Previous

Devuelve un objeto Chart, Range o Worksheet que representa la hoja o celda anterior. Es de sólo lectura.

Comentarios

Si el objeto es un rango, esta propiedad emulará la acción de presionar  las teclas MAYÚSCULAS+TAB; no obstante, a diferencia de la combinación de teclas, la propiedad devolverá la celda anterior sin seleccionarla.

En una hoja protegida, esta propiedad devuelve la celda anterior no bloqueada. En una hoja desprotegida, la propiedad siempre devuelve la celda situada inmediatamente a la izquierda de la celda especificada.


Ejemplo de la propiedad Previous

Este ejemplo selecciona la celda anterior no bloqueada de la Hoja1. Si la Hoja1 no está protegida, será la celda situada inmediatamente a la izquierda de la celda activa.

Worksheets("Hoja1").Activate

ActiveCell.Previous.Select


Método Record

Este método no debe ser usado. Las notas sonoras se han quitado de Microsoft Excel.


Método RemoveSubtotal

Elimina los subtotales de una lista.

Sintaxis

expresión.RemoveSubtotal

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método RemoveSubtotal

Este ejemplo elimina los subtotales del rango A1:G37 de la Hoja1. El ejemplo debe ejecutarse en una lista que contenga subtotales.

Worksheets("Hoja1").Range("A1:G37").RemoveSubtotal


Método Replace

Busca y reemplaza caracteres en las celdas de un rango. No cambia la selección ni la celda activa.

Para obtener más información acerca de cómo usar la función de hoja de cálculo Replace en Visual Basic, vea Usar funciones de hoja de cálculo en Visual Basic.

Sintaxis

expresión.Replace(What, Replacement, LookAt, SearchOrder, MatchCase, MatchByte)

expresión   Requerida. Una expresión que devuelve un objeto Range.

What   String requerida. La cadena que se busca.

Replacement   String requerida. La cadena de reemplazo.

LookAt   Variant opcional. Puede ser una de las siguientes constantes XlLookAt: xlWhole o xlPart.

SearchOrder   Variant opcional. Puede ser una de las siguientes constantes XlSearchOrder: xlByRows o xlByColumns.

MatchCase   Variant opcional. True para que la búsqueda distinga entre mayúsculas y minúsculas.

MatchByte   Variant opcional. Se emplea únicamente en las versiones de Microsoft Excel para el Lejano Oriente. True para que los caracteres de dos bytes sólo coincidan con caracteres de dos bytes. False para que dichos caracteres coincidan con sus equivalentes de un solo byte.

Comentarios

Los valores de LookAt, SearchOrder, MatchCase y MatchByte se guardan cada vez que se usa este método. Si no especifica valores para estos argumentos, la próxima vez que llame al método se usarán los valores guardados. Si establece estos argumentos, cambiará los valores del cuadro de diálogo Buscar, lo cual a su vez cambiará los valores guardados que se emplean si se omiten los argumentos. Para evitar problemas, establezca explícitamente estos argumentos cada vez que use este método.

Si el contenido del argumento What se encuentra al menos en una celda de la hoja, el método devolverá True.


Ejemplo del método Replace

Este ejemplo reemplaza todas las apariciones de la función SENO por la función COS. El rango de reemplazamiento es la columna A de la Hoja1.

Worksheets("Hoja1").Columns("A").Replace _

What:="SENO", Replacement:="COS", _

SearchOrder:=xlByColumns, MatchCase:=True


Método Reset

Restablece la lista de distribución para que se pueda iniciar una nueva distribución con la misma lista (usando la misma lista de destinatarios e información de entrega). Para poder utilizar este método debe haberse completado la distribución. El uso de este método en otras ocasiones causa un error.

Sintaxis

expresión.Reset

expresión   Requerida. Una expresión que devuelve un objeto RoutingSlip.


Ejemplo del método Reset

Este ejemplo restablece la lista de distribución del LIBRO1.XLS si la distribución ha finalizado.

With Workbooks("LIBRO1.XLS").RoutingSlip

If .Status = xlRoutingComplete Then

.Reset

Else

MsgBox "No se puede restablecer la distribución porque no ha finalizado"

End If

End With


Propiedad Resize

Redimensiona el rango especificado. Devuelve un objeto Range que representa el rango redimensionado.

Sintaxis

expresión.Resize(RowSize, ColumnSize)

expresión   Requerida. Una expresión que devuelve el objeto Range que se desea redimensionar.

RowSize   Variant opcional. El número de filas en el nuevo rango. Si este argumento se omite, el número de filas del rango no cambiará.

ColumnSize   Variant opcional. El número de columnas del nuevo rango. Si este argumento se omite, el número de columnas del rango no cambiará.


Ejemplo de la propiedad Resize

Este ejemplo redimensiona la selección de la Hoja1 para ampliarla una fila y una columna.

Worksheets("Hoja1").Activate

numRows = Selection.Rows.Count

numColumns = Selection.Columns.Count

Selection.Resize(numRows + 1, numColumns + 1).Select

En este ejemplo se supone que la Hoja1 contiene una tabla con una fila de encabezado. El ejemplo selecciona la tabla sin seleccionar la fila de encabezado. Para poder ejecutar el ejemplo, la celda activa debe estar en la tabla.

Set tbl = ActiveCell.CurrentRegion

tbl.Offset(1, 0).Resize(tbl.Rows.Count - 1, tbl.Columns.Count).Select


Propiedad ReturnWhenDone

True si el libro se devuelve al remitente cuando la distribución finaliza. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad no puede establecerse si hay una distribución en curso.


Ejemplo de la propiedad ReturnWhenDone

Este ejemplo envía Libro1.xls a tres destinatarios, de manera consecutiva, y devuelve el libro al remitente cuando finaliza la distribución.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés Díaz", "Juan García", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

.ReturnWhenDone = True

End With

Workbooks("LIBRO1.XLS").Route


Propiedad Row

Devuelve el número de la primera fila de la primera área del rango. Long de sólo lectura.


Ejemplo de la propiedad Row

Este ejemplo establece en 4 puntos el alto de las filas alternativas de la Hoja1.

For Each fl In Worksheets("Hoja1").Rows

If fl.Row Mod 2 = 0 Then

fl.RowHeight = 4

End If

Next fl


Método RowDifferences

Devuelve un objeto Range que representa todas las celdas cuyo contenido es diferente del de la celda de comparación de cada fila.

Sintaxis

expresión.RowDifferences(Comparison)

expresión   Requerida. Una expresión que devuelve un rango que contiene las celdas que se comparan.

Comparison   Variant requerida. Una sola celda que se compara con el rango especificado.


Ejemplo del método RowDifferences

Este ejemplo selecciona las celdas de la fila uno de la Hoja1 cuyo contenido es distinto del de la celda D1.

Worksheets("Hoja1").Activate

Set c1 = ActiveSheet.Rows(1).RowDifferences( _

comparison:=ActiveSheet.Range("D1"))

c1.Select


Propiedad RowHeight

Devuelve el alto de todas las filas del rango especificado, medido en puntos. Devuelve Null si no todas las filas del rango tienen el mismo alto. Variant de Lectura/Escritura.

Comentarios

Para una sola fila, el valor de la propiedad Height es igual al valor de RowHeight. No obstante, también puede emplearse la propiedad Height para devolver el alto total de un rango de celdas.

Otras diferencias entre RowHeight y Height son:

•	Height es de sólo lectura.

•	Si se devuelve la propiedad RowHeight de varias filas, se obtendrá el alto de cada una de las filas (si todas son iguales) o bien Null (si son de distinto alto). Si se devuelve la propiedad Height de varias filas, se obtendrá el alto total de todas las filas.


Ejemplo de la propiedad RowHeight

Este ejemplo dobla el alto de la fila uno de la Hoja1.

With Worksheets("Hoja1").Rows(1)

.RowHeight = .RowHeight * 2

End With


Método ShowDependents

Dibuja flechas de rastreo a las celdas dependientes directas del rango.

Sintaxis

expresión.ShowDependents(Remove)

expresión   Requerida. Una expresión que devuelve un objeto Range. Debe ser una sola celda.

Remove   Variant opcional. True para eliminar un nivel de las flechas de rastreo a las celdas dependientes directas. False para expandir un nivel de las flechas de rastreo. El valor predeterminado es False.


Ejemplo del método ShowDependents

Este ejemplo dibuja flechas de rastreo a celdas dependientes de la celda activa en la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.ShowDependents

Este ejemplo elimina la flecha de rastreo para un nivel de celdas dependientes de la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.ShowDependents Remove:=True


Método ShowErrors

Dibuja flechas de rastreo a través del árbol de celdas precedentes a la celda que origina el error y devuelve el rango que la contiene.

Sintaxis

expresión.ShowErrors

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método ShowErrors

Este ejemplo muestra una flecha de rastreo roja si hay un error en la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

If IsError(ActiveCell.Value) Then

ActiveCell.ShowErrors

End If


Método ShowPrecedents

Dibuja flechas de rastreo a las celdas precedentes directas del rango.

Sintaxis

expresión.ShowPrecedents(Remove)

expresión   Requerida. Una expresión que devuelve un objeto Range. Debe ser una sola celda.

Remove   Variant opcional. True para eliminar un nivel de las flechas de rastreo a las celdas precedentes directas. False para expandir un nivel de las flechas de rastreo. El valor predeterminado es False.


Ejemplo del método ShowPrecedents

Este ejemplo dibuja flechas de rastreo para las celdas precedentes de la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.ShowPrecedents

Este ejemplo elimina la flecha de rastreo para un nivel de las celdas precedentes de la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

ActiveCell.ShowPrecedents remove:=True


Propiedad Smooth

True si el suavizado de curvas está activado para el gráfico de líneas o de dispersión. Se aplica sólo a los gráficos de líneas y de dispersión. De Lectura/Escritura.


Ejemplo de la propiedad Smooth

Este ejemplo activa el suavizado de curvas para la serie uno del Gráfico1. El ejemplo debe ejecutarse en un gráfico de líneas 2D.

Charts("Gráfico1").SeriesCollection(1).Smooth = True


Método Sort

Ordena una tabla dinámica, un rango o la región actual (si el rango especificado sólo contiene una celda).

Sintaxis

expresión.Sort(Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, IgnoreControlCharacters, IgnoreDiacritics, IgnoreKashida)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Key1   Variant opcional. El primer campo de ordenación, ya sea como texto (un campo de tabla dinámica o un nombre de rango) o un objeto Range (por ejemplo, "Depart" o Cells(1, 1)).

Order1   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Utilice xlAscending para ordenar Key1 por orden ascendente. Utilice xlDescending para ordenar Key1 por orden descendente. El valor predeterminado es xlAscending.

Key2   Variant opcional. El segundo campo de ordenación, ya sea como texto (un nombre de tabla dinámica o de rango) o un objeto Range. Si este argumento se omite, no se usará un segundo campo de ordenación. No se emplea para ordenar tablas dinámicas.

Type   Variant opcional. Especifica qué elementos se ordenarán. Puede ser una de las siguientes constantes XlSortType: xlSortValues o xlSortLabels. Se emplea sólo para ordenar tablas dinámicas.

Order2   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Utilice xlAscending para ordenar Key2 por orden ascendente. Utilice xlDescending para ordenar Key2 por orden descendente. El valor predeterminado es xlAscending. No se emplea para ordenar tablas dinámicas.

Key3   Variant opcional. El tercer campo de ordenación, ya sea como texto (un nombre de rango) o un objeto Range. Si este argumento se omite, no se usará un tercer campo de ordenación. No se emplea para ordenar tablas dinámicas.

Order3   Variant opcional. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending. Utilice xlAscending para ordenar Key3 por orden ascendente. Utilice xlDescending para ordenar Key3 por orden descendente. El valor predeterminado es xlAscending. No se emplea para ordenar tablas dinámicas.

Header   Variant opcional. Especifica si la primera fila contiene encabezados. Puede ser una de las siguientes constantes XlYesNoGuess: xlYes, xlNo o xlGuess. Utilice xlYes si la primera fila contiene encabezados (no debe estar ordenada). Utilice xlNo si no hay encabezados (todo el rango debe estar ordenado). Utilice xlGuess para que Microsoft Excel determine si hay encabezado, así como su ubicación, si existe. El valor predeterminado es xlNo. No se emplea para ordenar tablas dinámicas.

OrderCustom   Variant opcional. Desviación de enteros basada en unos con respecto a la lista de ordenaciones personalizadas. Si este argumento se omite, se usará 1 (Normal).

MatchCase   Variant opcional. True para llevar a cabo una ordenación que distinga mayúsculas y minúsculas; False para que no se distingan mayúsculas y minúsculas. No se emplea para ordenar tablas dinámicas.

Orientation   Variant opcional. Si se emplea xlTopToBottom, la ordenación se realizará de arriba a abajo (por filas). Si se emplea xlLeftToRight, la ordenación se llevará a cabo de izquierda a derecha (por columnas).

SortMethod   Variant opcional. El tipo de ordenación. Puede ser una de las siguientes constantes XlSortMethod: xlSyllabary (para ordenar por fonética) o xlCodePage (para ordenar por código de página). El valor predeterminado es xlSyllabary.

IgnoreControlCharacters   Variant opcional. No se usa en Microsoft Excel inglés (EE.UU.).

IgnoreDiacritics   Variant opcional. No se usa en Microsoft Excel inglés (EE.UU.).

IgnoreKashida   Variant opcional. No se usa en Microsoft Excel inglés (EE.UU.).


Ejemplo del método Sort

Este ejemplo ordena el rango A1:C20 de la Hoja1, usando la celda A1 como primera clave de ordenación y la celda B1 como segunda clave. La ordenación se realiza en orden ascendente por fila, y no hay encabezados.

Worksheets("Hoja1").Range("A1:C20").Sort _

Key1:=Worksheets("Hoja1").Range("A1"), _

Key2:=Worksheets("Hoja1").Range("B1")

Este ejemplo ordena la región actual que contiene la celda A1 de la Hoja1, ordenando por los datos de la primera columna y usando automáticamente un registro inicial, si existe. El método Sort determina la región actual de forma automática.

Worksheets("Hoja1").Range("A1").Sort _

Key1:=Worksheets("Hoja1").Columns("A"), _

Header:=xlGuess


Propiedad SoundNote

Esta propiedad no debe ser usada. Las notas sonoras se han quitado de Microsoft Excel.


Propiedad Status

Indica el estado de la lista de distribución. Puede ser una de las siguientes constantes XlRoutingSlipStatus: xlNotYetRouted, xlRoutingInProgress o xlRoutingComplete. Long de sólo lectura.


Ejemplo de la propiedad Status

Este ejemplo restablece la lista de distribución del LIBRO1.XLS si la distribución ha finalizado.

With Workbooks("LIBRO1.XLS").RoutingSlip

If .Status = xlRoutingComplete Then

.Reset

Else

MsgBox "No se puede restablecer la distribución porque no ha finalizado."

End If

End With


Propiedad Style

Devuelve un objeto Style que representa el estilo del rango especificado. Es de sólo lectura.


Ejemplo de la propiedad Style

Este ejemplo aplica el estilo Normal a la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Style.Name = "Normal"

Si la celda B4 de la Hoja1 tiene aplicado el estilo Normal, este ejemplo aplicará el estilo Porcentaje.

If Worksheets("Hoja1").Range("B4").Style.Name = "Normal" Then

Worksheets("Hoja1").Range("B4").Style = "Porcentaje"

End If


Método SubscribeTo

Sólo aplicable en equipos Macintosh. Suscribe a una edición publicada.

Sintaxis

expresión.SubscribeTo(Edition, Format)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Edition   String requerida. El nombre de la edición a la que se desea suscribir.

Format   Variant opcional. Puede ser una de las siguientes constantes XlSubscribeToFormat: xlSubscribeToPicture o xlSubscribeToText.


Ejemplo del método SubscribeTo

Este ejemplo realiza una subscripción a la publicación "datos de bolsa".

Worksheets("Hoja1").Range("D1").SubscribeTo "datos de bolsa"


Método Subtotal

Crea subtotales para el rango (o la región actual, si el rango sólo tiene una celda).

Para obtener más información acerca de cómo usar la función de hoja de cálculo Subtotal en Visual Basic, vea Usar funciones de hoja de cálculo en Visual Basic.

Sintaxis

expresión.Subtotal(GroupBy, Function, TotalList, Replace, PageBreaks, SummaryBelowData)

expresión   Requerida. Una expresión que devuelve un objeto Range.

GroupBy   Long requerido. El campo por el que se agrupa, como un desplazamiento entero basado en unos. Para obtener más información, vea el ejemplo.

Function   Long requerido. La función de subtotal. Puede ser una de las siguientes constantes XlConsolidationFunction: xlAverage, xlCount, xlCountNums, xlMax, xlMin, xlProduct, xlStDev, xlStDevP, xlSum, xlVar o xlVarP.

TotalList   Variant requerida. Una matriz de desplazamientos de campo basados en unos, que indica los campos a los que se agregarán los subtotales. Para obtener más información, vea el ejemplo.

Replace   Variant opcional. True para reemplazar los subtotales ya existentes. El valor predeterminado es False.

PageBreaks   Variant opcional. True para agregar saltos de página después de cada grupo. El valor predeterminado es False.

SummaryBelowData   Variant opcional. Puede ser una de las siguientes constantes xlSummaryRow: xlSummaryAbove o xlSummaryBelow. El valor predeterminado es xlSummaryBelow.


Ejemplo del método Subtotal

Este ejemplo crea subtotales para la selección de la Hoja1. Los subtotales son sumas agrupadas por cada cambio del campo uno, con los subtotales agregados a los campos dos y tres.

Worksheets("Hoja1").Activate

Selection.Subtotal groupBy:=1, function:=xlSum, _

totalList:=Array(2, 3)


Propiedad Summary

True si el rango es una fila o columna de resumen de esquema. El rango debe ser una fila o una columna. Variant de sólo lectura.


Ejemplo de la propiedad Summary

Este ejemplo da formato de negrita y cursiva a la fila cuatro de la Hoja1 si es una columna de resumen de esquema.

With Worksheets("Hoja1").Rows(4)

If .Summary = True Then

.Font.Bold = True

.Font.Italic = True

End If

End With


Método Table

Crea una tabla de datos basada en valores de entrada y fórmulas que se definen en una hoja de cálculo.

Sintaxis

expresión.Table(RowInput, ColumnInput)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

RowInput   Variant opcional. Una sola celda que se usa como la entrada de fila de la tabla.

ColumnInput   Variant opcional. Una sola celda que se usa como la entrada de columna de la tabla.

Comentarios

Utilice tablas de datos para realizar análisis "que pasaría si" cambiando algunas constantes en la hoja de cálculo, para ver el efecto en los valores de otras celdas.


Ejemplo del método Table

Este ejemplo crea una tabla de multiplicación con formato en las celdas A1:K11.

Set rangoTablaDatos = Worksheets("Hoja1").Range("A1:K11")

Set celdaIntroFila = Worksheets("Hoja1").Range("A12")

Set celdaIntroCol = Worksheets("Hoja1").Range("A13")

Worksheets("Hoja1").Range("A1").Formula = "=A12*A13"

For elem = 2 To 11

Worksheets("Hoja1").Cells(elem, 1) = elem - 1

Worksheets("Hoja1").Cells(1, elem) = elem - 1

Next elem

rangoTablaDatos.Table celdaIntroFila, celdaIntroCol

With Worksheets("Hoja1").Range("A1").CurrentRegion

.Rows(1).Font.Bold = True

.Columns(1).Font.Bold = True

.Columns.AutoFit

End With


Propiedad TrackStatus

True si el seguimiento del estado está habilitado en la lista de distribución. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad no puede establecerse si hay una distribución en curso.


Ejemplo de la propiedad TrackStatus

Este ejemplo envía Libro1.xls a tres destinatarios, con el seguimiento de estado activado.

Workbooks("LIBRO1.XLS").HasRoutingSlip = True

With Workbooks("LIBRO1.XLS").RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Andrés Díaz", "Juan García", "Carlos Ramírez")

.Subject = "Éste es el LIBRO1.XLS"

.Message = "Éste es el libro. ¿Qué te parece?"

.ReturnWhenDone = True

.TrackStatus = True

End With

Workbooks("LIBRO1.XLS").Route


Método Trendlines

Devuelve un objeto que representa una sola línea de tendencia (un objeto Trendline, sintaxis 1) o un conjunto de todas las líneas de tendencia (un objeto Trendlines, sintaxis 2) para la serie.

Sintaxis 1

objeto.Trendlines(Index)

Sintaxis 2

objeto.Trendlines

objeto   Requerido. El objeto Series.

Index   Variant opcional. El nombre o número de la línea de tendencia.


Ejemplo del método Trendlines

Este ejemplo agrega una línea de tendencia lineal a la serie uno del Gráfico1.

Charts("Gráfico1").SeriesCollection(1).Trendlines.Add Type:=xlLinear


Propiedad UseStandardHeight

True si el alto de la fila del objeto Range es igual al alto estándar de la hoja. Devuelve Null si el rango contiene más de una fila y no todas ellas tienen el mismo alto. Variant de Lectura/Escritura.


Ejemplo de la propiedad UseStandardHeight

Este ejemplo establece como el estándar el alto de la fila uno de la Hoja1.

Worksheets("Hoja1").Rows(1).UseStandardHeight = True


Propiedad UseStandardWidth

True si el ancho de columna del objeto Range es igual al ancho estándar de la hoja. Devuelve Null si el rango contiene más de una columna y no todas ellas tienen el mismo ancho. Variant de Lectura/Escritura.


Ejemplo de la propiedad UseStandardWidth

Este ejemplo establece como el estándar el ancho de la columna A de la Hoja1.

Worksheets("Hoja1").Columns("A").UseStandardWidth = True


Propiedad Values

Objeto Scenario: Devuelve una matriz que contiene los valores actuales de las celdas cambiantes del escenario. Variant de sólo lectura.

Objeto Series: Devuelve o establece un conjunto de todos los valores de la serie. Puede ser un rango de una hoja de cálculo o una matriz de valores constantes, pero no una combinación de ambos. Para obtener más información vea los ejemplos. Variant de Lectura/Escritura.


Ejemplo de la propiedad Values

Este ejemplo establece los valores de las series de un rango.

Charts("Gráfico1").SeriesCollection(1).Values = _

Worksheets("Hoja1").Range("C5:T5")

Para asignar un valor constante a cada punto de datos individual, use una matriz.

Charts("Gráfico1").SeriesCollection(1).Values = _

Array(1, 3, 5, 7, 11, 13, 17, 19)


Propiedad VerticalAlignment

Devuelve o establece la alineación vertical del objeto. Puede ser una de las siguientes constantes XlVAlign: xlVAlignBottom, xlVAlignCenter, xlVAlignDistributed, xlVAlignJustify o xlVAlignTop. Long de Lectura/Escritura.

Comentarios

El estilo de alineación xlVAlignDistributed funciona sólo en las versiones de Microsoft Excel para el Lejano Oriente.


Ejemplo de la propiedad VerticalAlignment

Este ejemplo establece el alto de la fila dos de la Hoja1 como el doble que el alto estándar y, a continuación, centra el contenido de la fila verticalmente.

Worksheets("Hoja1").Rows(2).RowHeight = _

2 * Worksheets("Hoja1").StandardHeight

Worksheets("Hoja1").Rows(2).VerticalAlignment = xlVAlignCenter


Propiedad Worksheet

Devuelve un objeto Worksheet que representa a la hoja de cálculo que contiene el rango especificado. Es de sólo lectura.


Ejemplo de la propiedad Worksheet

Este ejemplo muestra el nombre de la hoja de cálculo que contiene la celda activa. El ejemplo debe ejecutarse desde una hoja de cálculo.

MsgBox ActiveCell.Worksheet.Name

Este ejemplo muestra el nombre de la hoja de cálculo que contiene el rango llamado "rangoPrueba".

MsgBox Range("rangoPrueba").Worksheet.Name


Propiedad WrapText

True si Microsoft Excel ajusta de forma automática el texto del objeto. Devuelve Null si el rango especificado contiene algunas celdas cuyo texto se ajusta y otras en las que no. Variant de Lectura/Escritura para el objeto Range, Boolean de Lectura/Escritura para el objeto Style.

Comentarios

Si es necesario, Microsoft Excel cambiará el alto de las filas del rango para mostrar el texto del rango en pantalla.


Ejemplo de la propiedad WrapText

Este ejemplo da formato a la celda B2 de la Hoja1 de modo que se ajusten las líneas del texto que contiene.

Worksheets("Hoja1").Range("B2").Value = _

"Estas líneas deben ajustarse en una celda."

Worksheets("Hoja1").Range("B2").WrapText = True


Uso de funciones de hoja de cálculo de Microsoft Excel en Visual Basic

Puede usar la mayoría de las funciones de hoja de cálculo de Microsoft Excel en los enunciados de Visual Basic. Si desea ver una lista de las funciones de hoja de cálculo que puede usar, vea Lista de funciones para hojas de cálculo en Visual Basic.

Nota   Algunas funciones de hoja de cálculo no tienen utilidad en Visual Basic. Por ejemplo, la función Concatenar no se necesita, ya que en Visual Basic puede usar el operador & para unir varios valores de texto.

Llamar a una función de hoja de cálculo desde Visual Basic

En Visual Basic, las funciones de hoja de calculo de Microsoft Excel pueden ejecutarse mediante el objeto WorksheetFunction.

El siguiente procedimiento Sub usa la función Mín para obtener el valor más pequeño de un rango de celdas. En primer lugar, se declara la variable miRango como un objeto Range y, a continuación, se establece como el rango A1:C10 de la Hoja1. Otra variable, respuesta, se asigna al resultado de aplicar la función Mín a miRango. Por último, el valor de respuesta se muestra en un cuadro de mensaje.

Sub UseFunction()

Dim miRango As Range

Set miRango = Worksheets("Hoja1").Range("A1:C10")

respuesta = Application.WorksheetFunction.Min(miRango)

MsgBox respuesta

End Sub

Si usa una función de hoja de cálculo que requiere como argumento una referencia de rango, deberá especificar un objeto Range. Por ejemplo, puede usar la función de hoja de cálculo Coincidir para efectuar una búsqueda en un rango de celdas. En una celda de hoja de cálculo, podría introducir una fórmula como =COINCIDIR(9;A1:A10;0). No obstante, en un procedimiento de Visual Basic, para obtener el mismo resultado debe especificar un objeto Range.

Sub FindFirst()

miVar = Application.WorksheetFunction _

.Match(9, Worksheets(1).Range("A1:A10"), 0)

MsgBox miVar

End Sub

Nota   Las funciones de Visual Basic no usan el calificador WorksheetFunction. Una función puede tener el mismo nombre que una función de Microsoft Excel y, sin embargo, dar otros resultados. Por ejemplo, Application.WorksheetFunction.Log y Log dan resultados diferentes.

Insertar una función de hoja de cálculo en una celda

Para insertar una función de hoja de cálculo en una celda, especifique la función como el valor de la propiedad Formula del objeto Range correspondiente. En el siguiente ejemplo, la función ALEATORIO (que genera un número aleatorio) se asigna a la propiedad Formula del rango A1:B3 de la Hoja1 del libro activo.

Sub InsertFormula()

Worksheets("Hoja1").Range("A1:B3").Formula = "=ALEATORIO()"

End Sub


Ejemplo del uso de funciones de hoja de cálculo en Visual Basic

Este ejemplo usa la función de hoja de cálculo Pago para calcular un pago de préstamo hipotecario. Tenga en cuenta que en el ejemplo se usa el método InputBox en lugar de la función InputBox, para que el método pueda verificar el tipo. El enunciado Static hace que Visual Basic conserve los valores de las tres variables, que se mostrarán como valores predeterminados la próxima vez que se ejecute el programa.

Static impPrést

Static intPrést

Static plazPrést

impPrést = Application.InputBox _

(Prompt:="Importe del préstamo (por ejemplo, 100.000)", _

Default:=impPrést, Type:=1)

intPrést = Application.InputBox _

(Prompt:="Tipo de interés anual (por ejemplo, 8,75)", _

Default:=impPrést, Type:=1)

plazPrést = Application.InputBox _

(Prompt:="Plazos en años (por ejemplo 30)", _

Default:=impPrést, Type:=1)

pago = Application.WorksheetFunction _

.Pmt(intPrést / 1200, plazPrést * 12, canPrést)

MsgBox "El pago mensual es " & Format(pago, "Currency")


Lista de funciones para hojas de cálculo en Visual Basic

A

Acosh

Acos

Asenoh

Aseno

Atan2

Atanh

B

BdContarA

BdContar

BdDesvEstP

BdDesvEst

BdExtraer

BdMáx

BdMín

BdProducto

BdPromedio

BdSuma

BdVarP

BdVar

BinomCrit

BuscarH

BuscarV

Buscar

C

CoefDeCorrel

CoeficienteAsimetría

CoeficienteR2

Coincidir

Combina

ContarA

ContarBlanco

ContarSí

Cosh

Covarianza

Cuartil

Cuenta

Curtosis

D

Db

Ddb

Decimal

DesvEstP

DesvEst

Desvia2

DesvProm

Días360

DíaSem

DistrBetaInv

DistrBeta

DistrBinomNeg

DistrBinom

DistrChi

DistrExp

DistrFInv

DistrF

DistrGammaInv

DistrGamma

DistrHipergeom

DistrLogInv

DistrLogNorm

DistrNormEstandInv

DistrNormEstand

DistrNormInv

DistrNorm

DistrTInv

DistrT

DistWeibull

DVS

E

Elegir

EncontrarB

Encontrar

ErrorTípicoXY

EsError

EsErr

EsLógico

EsNoD

EsNoTexto

EsNúmero

Espacios

EsTexto

EstimaciónLineal

EstimaciónLogarítmica

F

Fact

Fisher

Frecuencia

G

GammaLn

Geométrica

Grados

Grande

H

HallarB

Hallar

I

Índice

Intercepción

IntervaloConfianza

IntervaloPercentil

IntPagoDir

J

Jerarquía

K

KÉsimoMenor

L

Limpiar

Ln

Log10

Log

M

Máx

MDeterm

MediaAcotada

MediaArmó

MediaGeom

Mediana

MInversa

Mín

MMúlt

Moda

Moneda

MúltiploInferior

MúltiploSuperior

N

NomPropio

Normalización

NPer

NúmeroRomano

O

O

P

PagoInt

PagoPrin

Pago

Pearson

Pendiente

Percentil

Permutaciones

Pi

Poisson

Potencial

Probabilidad

Producto

Promedio

Pronóstico

PruebaChiInv

PruebaChi

PruebaFisherInv

PruebaF

PruebaT

PruebaZ

Q

R

Radianes

RedondeaImpar

RedondearMás

RedondearMenos

RedondearPar

Redondear

ReemplazarB

Reemplazar

Repetir

S

SenoH

Sln

Subtotales

SumaCuadrados

SumaProducto

SumarSí

SumaX2MásY2

SumaX2MenosY2

Suma

SumaXMenosY2

Sustituir

Syd

T

TanH

Tasa

Tendencia

Texto

TIRM

TIR

Transponer

U

USDollar

V

VarP

Var

VA

VF

VNA

W

X

Y

Y

Z


Una función de hoja de cálculo que sólo está disponible en las versiones de Microsoft Excel para el Lejano Oriente.


Propiedad ActivePane

Devuelve un objeto Pane que representa la sección activa de la ventana. Es de sólo lectura.

Comentarios

Este propiedad sólo puede usarse en hojas de cálculo y de macros.

Devuelve un objeto Pane. Para obtener el índice de la sección activa debe usar la propiedad Index.


Ejemplo de la propiedad ActivePane

Este ejemplo activa la siguiente sección de la ventana activa en Libro1.xls. No es posible activar la siguiente sección si las secciones están inmovilizadas. El ejemplo debe ejecutarse desde un libro distinto del Libro1.xls. Antes de ejecutar el ejemplo, asegúrese de que Libro1.xls tiene dos o cuatro secciones en la hoja activa.

Workbooks("LIBRO1.XLS").Activate

If not ActiveWindow.FreezePanes Then

With ActiveWindow

elem = .ActivePane.Index

If elem = .Panes.Count Then

.Panes(1).Activate

Else

.Panes(elem+1).Activate

End If

End With

End If


Método Arrange

Organiza las ventanas en la pantalla.

Sintaxis

expresión.Arrange(ArrangeStyle, ActiveWorkbook, SyncHorizontal, SyncVertical)

expresión   Requerida. Una expresión que devuelve un objeto Windows.

ArrangeStyle   Variant opcional. Puede ser una de las siguientes constantes XlArrangeStyle:

Constante	Descripción
xlArrangeStyleTiled	Las ventanas se organizan en mosaico (valor predeterminado).
xlArrangeStyleCascade	Las ventanas están en cascada.
xlArrangeStyleHorizontal	Las ventanas se organizan horizontalmente.
xlArrangeStyleVertical	Las ventanas se organizan verticalmente.
ActiveWorkbook   Variant opcional. True para que sólo se organicen las ventanas visibles del libro activo. False para que se organicen todas las ventanas. El valor predeterminado es False.

SyncHorizontal   Variant opcional. Se ignora si ActiveWorkbook es False o se omite. True para que se sincronicen las ventanas del libro activo cuando se lleve a cabo un desplazamiento horizontal. False para que no se sincronicen las ventanas. El valor predeterminado es False.

SyncVertical   Variant opcional. Se ignora si ActiveWorkbook es False o se omite. True para que se sincronicen las ventanas del libro activo cuando se lleve a cabo un desplazamiento vertical. False para que no se sincronicen las ventanas. El valor predeterminado es False.


Ejemplo del método Arrange

Este ejemplo organiza en mosaico todas las ventanas de la aplicación.

Application.Windows.Arrange ArrangeStyle:=xlArrangeStyleTiled


Valores de error de celda

Use la función CVErr para insertar un valor de error en una celda o para verificar si el valor de una celda tiene error. Los valores de error de las celdas pueden ser una de las siguientes constantes XlCVError:

Constante	Número de error	Valor de error en la celda
xlErrDiv0	2007	#DIV/0!
xlErrNA	2042	#N/A
xlErrName	2029	#¿NOMBRE?
xlErrNull	2000	#¡NULO!
xlErrNum	2036	#¡NÚM!
xlErrRef	2023	#¡REF!
xlErrValue	2015	#¡VALOR!


Ejemplo de valores de error de celdas

Este ejemplo inserta los siete valores de error en las celdas A1:A7 de la Hoja1.

miMatriz = Array(xlErrDiv0, xlErrNA, xlErrName, xlErrNull, _

xlErrNum, xlErrRef, xlErrValue)

For elem = 1 To 7

Worksheets("Hoja1").Cells(elem, 1).Value = CVErr(miMatriz(elem - 1))

Next elem

Este ejemplo muestra un mensaje si la celda activa de la Hoja1 contiene un valor de error de celda. Puede usar este ejemplo como base para un controlador de valores de error de celda.

Worksheets("Hoja1").Activate

If IsError(ActiveCell.Value) Then

errval = ActiveCell.Value

Select Case errval

Case CVErr(xlErrDiv0)

MsgBox "error #¡DIV/0!"

Case CVErr(xlErrNA)

MsgBox "Error #N/A"

Case CVErr(xlErrName)

MsgBox "Error #¿NOMBRE?"

Case CVErr(xlErrNull)

MsgBox "Error #¡NULO!"

Case CVErr(xlErrNum)

MsgBox "Error #¡NÚM!"

Case CVErr(xlErrRef)

MsgBox "Error #¡REF!"

Case CVErr(xlErrValue)

MsgBox "Error #¡VALOR!"

Case Else

MsgBox "Esto no debe ocurrir jamás"

End Select

End If


Propiedad Date1904

True si el libro usa el sistema de fechas 1904. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Date1904

Este ejemplo hace que Microsoft Excel use el sistema de fechas 1904 para el libro activo.

ActiveWorkbook.Date1904 = True


Método DeleteNumberFormat

Elimina del libro un formato numérico personalizado.

Sintaxis

expresión.DeleteNumberFormat(NumberFormat)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

NumberFormat   String requerida. Asigna un nombre al formato numérico que se eliminará.


Ejemplo del método DeleteNumberFormat

Este ejemplo elimina el formato numérico "000-00-0000" del libro activo.

ActiveWorkbook.DeleteNumberFormat("000-00-0000")


Propiedad DisplayDrawingObjects

Devuelve o establece cómo se muestran los tipos de formas. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlDisplayShapes:

Constante	Descripción
xlDisplayShapes	Se muestran todas las formas.
xlPlaceholders	Sólo se muestran los marcadores de posición.
xlHide	Se ocultan todas las formas.


Ejemplo de la propiedad DisplayDrawingObjects

Este ejemplo oculta todas las formas del libro activo.

ActiveWorkbook.DisplayDrawingObjects = xlHide


Propiedad DisplayFormulas

True si se muestran fórmulas en la ventana, False si se muestran valores. Boolean de Lectura/Escritura.

Comentarios

Este propiedad sólo se aplica a hojas de cálculo y de macros.


Ejemplo de la propiedad DisplayFormulas

Este ejemplo cambia la ventana activa del Libro1.xls para que se muestren fórmulas.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.DisplayFormulas = True


Propiedad DisplayGridlines

True si se muestran las líneas de división. Boolean de Lectura/Escritura.

Comentarios

Este propiedad sólo se aplica a hojas de cálculo y de macros.

Afecta únicamente a las líneas de división visibles. Use la propiedad PrintGridlines para controlar la impresión de las líneas de división.


Ejemplo de la propiedad DisplayGridlines

Este ejemplo alterna la presentación de líneas de división en la ventana activa de Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.DisplayGridlines = Not(ActiveWindow.DisplayGridlines)


Propiedad DisplayHeadings

True si se muestran los encabezados de las filas y columnas, False en caso contrario. Boolean de Lectura/Escritura.

Comentarios

Este propiedad sólo se aplica a hojas de cálculo y de macros.

Afecta únicamente a los encabezados visibles. Utilice la propiedad PrintHeadings para controlar la impresión de los encabezados.


Ejemplo de la propiedad DisplayHeadings

Este ejemplo desactiva la presentación de encabezados de filas y columnas en la ventana activa de Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.DisplayHeadings = False


Propiedad DisplayOutline

True si se muestran los símbolos de esquema. Boolean de Lectura/Escritura.

Comentarios

Este propiedad sólo se aplica a hojas de cálculo y de macros.


Ejemplo de la propiedad DisplayOutline

Este ejemplo muestra los símbolos de esquema en la ventana activa de Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.DisplayOutline = True


Propiedad DisplayZeros

True si se muestran los ceros. Boolean de Lectura/Escritura.

Comentarios

Este propiedad sólo se aplica a hojas de cálculo y de macros.


Ejemplo de la propiedad DisplayZeros

Este ejemplo configura la ventana activa de Libro1.xls para que se muestren los ceros.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.DisplayZeros = True


Propiedad FreezePanes

True si las divisiones de secciones están inmovilizadas. Boolean de Lectura/Escritura.

Comentarios

Es posible que FreezePanes sea True y Split sea False o viceversa.

Este propiedad sólo se aplica a hojas de cálculo y de macros.


Ejemplo de la propiedad FreezePanes

Este ejemplo inmoviliza las divisiones de secciones en la ventana activa de Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.FreezePanes = True


Propiedad GridlineColor

Devuelve o establece el color de las líneas de división como un valor RGB. Long de Lectura/Escritura.


Ejemplo de la propiedad GridlineColor

Este ejemplo establece en rojo el color de las líneas de división en la ventana activa del Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.GridlineColor = RGB(255,0,0)


Propiedad IncludeAlignment

True si el estilo incluye las propiedades AddIndent, HorizontalAlignment, VerticalAlignment, WrapText y Orientation. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludeAlignment

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de manera que incluya el formato de alineación.

Worksheets("Hoja1").Range("A1").Style.IncludeAlignment = True


Propiedad IncludeBorder

True si el estilo incluye las propiedades de borde Color, ColorIndex, LineStyle y Weight. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludeBorder

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de manera que incluya el formato de borde.

Worksheets("Hoja1").Range("A1").Style.IncludeBorder = True


Propiedad IncludeFont

True si el estilo incluye las propiedades de fuente Background, Bold, Color, ColorIndex, FontStyle, Italic, Name, OutlineFont, Shadow, Size, Strikethrough, Subscript, Superscript y Underline. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludeFont

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de modo que incluya formato de fuente.

Worksheets("Hoja1").Range("A1").Style.IncludeFont = True


Propiedad IncludeNumber

True si el estilo incluye la propiedad NumberFormat. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludeNumber

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de modo que incluya formato numérico.

Worksheets("Hoja1").Range("A1").Style.IncludeNumber = True


Propiedad IncludePatterns

True si el estilo incluye las propiedades de interior Color, ColorIndex, InvertIfNegative, Pattern, PatternColor y PatternColorIndex. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludePatterns

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de manera que incluya formato de diseño.

Worksheets("Hoja1").Range("A1").Style.IncludePatterns = True


Propiedad IncludeProtection

True si el estilo incluye las propiedades de protección FormulaHidden y Locked. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IncludeProtection

Este ejemplo configura el estilo adjunto a la celda A1 de la Hoja1 de manera que incluya formato de protección.

Worksheets("Hoja1").Range("A1").Style.IncludeProtection = True


Propiedad PrecisionAsDisplayed

True si los cálculos de este libro se llevan a cabo utilizando únicamente la misma precisión con que se muestran los números. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PrecisionAsDisplayed

Este ejemplo hace que los cálculos del libro activo utilicen únicamente la misma precisión con que se muestran los números.

ActiveWorkbook.PrecisionAsDisplayed = True


Propiedad SaveLinkValues

True si Microsoft Excel guarda los valores de los vínculos externos con el libro. Boolean de Lectura/Escritura.


Ejemplo de la propiedad SaveLinkValues

Este ejemplo hace que Microsoft Excel guarde los valores de los vínculos externos con el libro activo.

ActiveWorkbook.SaveLinkValues = True


Método ShowDataForm

Muestra el formulario de datos correspondiente a la hoja de cálculo.

Sintaxis

expresión.ShowDataForm

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.

Comentarios

La macro hace una pausa mientras se utiliza el formulario de datos. Cuando cierre el formulario de datos, la macro se reanudará en la línea siguiente al método ShowDataForm.

Este método ejecuta el formulario de datos personalizado, si existe.


Ejemplo del método ShowDataForm

Este ejemplo muestra el formulario de datos de la Hoja1.

Worksheets(1).ShowDataForm


Método SpecialCells

Devuelve un objeto Range que representa todas las celdas que coinciden con el tipo y valor especificados.

Sintaxis

expresión.SpecialCells(Type, Value)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Type   Long requerido. Las celdas que se incluirán. Puede ser una de las siguientes constantes XlCellType:

Constante	Descripción
xlCellTypeNotes	Celdas que contengan notas.
xlCellTypeConstants	Celdas que contengan constantes.
xlCellTypeFormulas	Celdas que contengan fórmulas.
xlCellTypeBlanks	Celdas vacías.
xlCellTypeLastCell	La última celda del rango.
xlCellTypeVisible	Todas las celdas vacías.
Value   Variant opcional. Si Type es una de las constantes xlCellTypeConstants o xlCellTypeFormulas, este argumento se usará para determinar los tipos de celdas que se incluirán en el resultado. Los valores pueden sumarse para que devuelvan más de un tipo. Como opción predeterminada se seleccionan todas las constantes o fórmulas, con independencia de su tipo. Puede ser una de las siguientes constantes XlSpecialCellsValues: xlErrors, xlLogical, xlNumbers, xlTextValues, xlAllFormatConditions o xlSameFormatConditions.


Ejemplo del método SpecialCells

Este ejemplo selecciona la última celda del rango de la Hoja1.

Worksheets("Hoja1").Activate

ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate


Propiedad Split

True si la ventana está dividida. Boolean de Lectura/Escritura.

Comentarios

Es posible que FreezePanes sea True y Split sea False o viceversa.

Este propiedad sólo se aplica a hojas de cálculo y de macros.


Ejemplo de la propiedad Split

Este ejemplo divide la ventana activa de Libro1.xls en la celda B2 sin inmovilizar las secciones. Como consecuencia, la propiedad Split devuelve True.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

With ActiveWindow

.SplitColumn = 2

.SplitRow = 2

End With

Este ejemplo muestra dos métodos para eliminar la división agregada por el ejemplo anterior.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.Split = False	'método uno

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.SplitColumn = 0	'método dos

ActiveWindow.SplitRow = 0

Este ejemplo elimina la división de la ventana. Para eliminar la división, es necesario establecer FreezePanes como False a fin de quitar las secciones inmovilizadas.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

With ActiveWindow

.FreezePanes = False

.Split = False

End With


Propiedad SplitColumn

Devuelve o establece el número de columna donde la ventana se dividirá en secciones (el número de columnas a la izquierda de la línea de división). Long de Lectura/Escritura.


Ejemplo de la propiedad SplitColumn

Este ejemplo divide la ventana y deja 1,5 columnas a la izquierda de la línea de división.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.SplitColumn = 1.5


Propiedad SplitHorizontal

Devuelve o establece la ubicación de la ventana de división horizontal, en puntos. Double de Lectura/Escritura.


Ejemplo de la propiedad SplitHorizontal

Este ejemplo configura la división horizontal de la ventana activa como 216 puntos (3 pulgadas).

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.SplitHorizontal = 216


Propiedad SplitRow

Devuelve o establece el número de fila en el que ventana se divide en secciones (el número de filas por encima de la línea de división). Long de Lectura/Escritura.


Ejemplo de la propiedad SplitRow

Este ejemplo divide la ventana activa de modo que haya 10 filas encima de la línea de división.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.SplitRow = 10


Propiedad SplitVertical

Devuelve o establece la ubicación de la ventana de división vertical, en puntos. Double de Lectura/Escritura.


Ejemplo de la propiedad SplitVertical

Este ejemplo configura la división vertical de la ventana activa como 216 puntos (3 pulgadas).

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.SplitVertical = 216


Propiedad StandardHeight

Devuelve el ancho estándar (predeterminado) de todas las filas de la hoja, en puntos. Double de sólo lectura.


Ejemplo de la propiedad StandardHeight

Este ejemplo configura como el estándar el alto de la fila uno de la Hoja1.

Worksheets("Hoja1").Rows(1).RowHeight = _

Worksheets("Hoja1").StandardHeight


Propiedad StandardWidth

Devuelve o establece el ancho estándar (predeterminado) de todas las columnas de la hoja. Double de Lectura/Escritura.

Comentarios

Una unidad de ancho de columna equivale al ancho de un carácter con el estilo Normal. En las fuentes proporcionales se utiliza el ancho del carácter 0 (cero).


Ejemplo de la propiedad StandardWidth

Este ejemplo configura el ancho estándar para la columna uno de la Hoja1.

Worksheets("Hoja1").Columns(1).ColumnWidth = _

Worksheets("Hoja1").StandardWidth


Propiedad TransitionExpEval

True si Microsoft Excel usa las reglas de evaluación de expresiones de Lotus 1-2-3 en la hoja de cálculo. Boolean de Lectura/Escritura.


Ejemplo de la propiedad TransitionExpEval

Este ejemplo hace que Microsoft Excel use las reglas de evaluación de expresiones de Lotus 1-2-3 en la Hoja1.

Worksheets("Hoja1").TransitionExpEval = True


Propiedad TransitionFormEntry

True si Microsoft Excel usa las reglas de introducción de fórmulas de Lotus 1-2-3 en la hoja de cálculo. Boolean de Lectura/Escritura.

Comentarios

Propiedad no disponible en Macintosh.


Ejemplo de la propiedad TransitionFormEntry

Este ejemplo hace que Microsoft Excel utilice reglas de introducción de fórmulas de Lotus 1-2-3 en la Hoja1.

Worksheets("Hoja1").TransitionFormEntry = True


Propiedad UpdateRemoteReferences

True si Microsoft Excel actualiza las referencias remotas al libro. Boolean de Lectura/Escritura.


Ejemplo de la propiedad UpdateRemoteReferences

Este ejemplo hace que se actualicen las referencias remotas del libro activo.

ActiveWorkbook.UpdateRemoteReferences = True


Propiedad UsedRange

Devuelve un objeto Range que representa el rango utilizado en la hoja de cálculo especificada. Es de sólo lectura.


Ejemplo de la propiedad UsedRange

Este ejemplo selecciona el rango usado en la Hoja1.

Worksheets("Hoja1").Activate

ActiveSheet.UsedRange.Select


Método AutoComplete

Devuelve una coincidencia de Autocompletar de la lista. Si no existen coincidencias de Autocompletar o si varios elementos de la lista coinciden con la cadena que se completa, el método devolverá una cadena vacía.

Sintaxis

expresión.AutoComplete(String)

expresión   Requerida. Una expresión que devuelve un objeto Range (debe ser una sola celda).

String   String requerida. La cadena que se completa.

Comentarios

Este método se ejecutará aunque la función Autocompletar esté desactivada.


Ejemplo del método AutoComplete

Este ejemplo devuelve la coincidencia de Autocompletar para el segmento de cadena “Ap”. Una coincidencia de Autocompletar se crea si la columna que contiene la celda A5 contiene una lista contigua y uno de los elementos de la lista contiene una coincidencia con la cadena.

s = Worksheets(1).Range("A5").AutoComplete("Ap")

If Len(s) > 0 Then

MsgBox "Se completa con " & s

Else

MsgBox "No se completa"

End If


Propiedad Container

Devuelve el objeto que contiene el libro incrustado especificado. Object de sólo lectura.

Comentarios

Use esta propiedad con un libro contenido para devolver el objeto recipiente. Si el contenedor no admite Automatización o el libro no está incrustado, esta propiedad fallará.


Ejemplo de la propiedad Container

Este ejemplo oculta la segunda sección del cuaderno que contiene el libro activo de Microsoft Excel y, a continuación, establece el valor de la celda A1 en 345.67. En este ejemplo, el cuaderno es Cuadern1.obd.

Set miCuaderno = GetObject("Cuadern1.obd", "Office.Binder")

Set miLibro = miCuaderno.Sections(1).Object

With miLibro

.Container.Sections(2).Visible = False

.Sheets(1).Cells(1, 1).Value = 345.67

End With


Propiedad EnableAnimations

True si están activadas la inserción y la eliminación animadas. Boolean de Lectura/Escritura.

Comentarios

Si la animación está activada, las filas y columnas insertadas en la hoja aparecerán lentamente, igual que las filas y columnas eliminadas.


Ejemplo de la propiedad EnableAnimations

Este ejemplo desactiva la inserción y eliminación animadas.

Application.EnableAnimations = False


Propiedad EnableAutoComplete

True si está activada la característica Autocompletar. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableAutoComplete

Este ejemplo activa la característica Autocompletar.

Application.EnableAutoComplete = True


Propiedad ListHeaderRows

Devuelve el número de filas de encabezamiento para el rango especificado. Long de sólo lectura.

Comentarios

Antes de usar esta propiedad, utilice la propiedad CurrentRegion para localizar los límites del rango.


Ejemplo de la propiedad ListHeaderRows

Este ejemplo establece la variable rTbl como el rango representado por la región actual de la celda activa, sin incluir filas de encabezamiento.

Set rTbl = ActiveCell.CurrentRegion

' elimina los encabezados del rango

iHdrRows = rTbl.ListHeaderRows

If iHdrRows > 0 Then

' ajusta el tamaño del rango menos n filas

Set rTbl = rTbl.Resize(rTbl.Rows.Count - iHdrRows)

' y desplaza el rango ajustado hasta

' llegar a la primera fila no de encabezamiento

Set rTbl = rTbl.Offset(iHdrRows)

End If


Propiedad MoveAfterReturnDirection

Devuelve o establece el sentido en el que se desplaza la celda activa cuando el usuario presiona la tecla ENTRAR. Puede ser una de las siguientes constantes XlDirection: xlToLeft, xlToRight, xlUp o xlDown. Long de Lectura/Escritura.

Comentarios

Si la propiedad MoveAfterReturn es False, la selección no se desplazará, independientemente del valor de la propiedad MoveAfterReturnDirection.


Ejemplo de la propiedad MoveAfterReturnDirection

Este ejemplo hace que la celda activa se desplace hacia la derecha cuando el usuario presione la tecla ENTRAR.

Application.MoveAfterReturn = True

Application.MoveAfterReturnDirection = xlToRight


Propiedad NetworkTemplatesPath

Devuelve la ruta de red en la que están almacenadas las plantillas. Si la ruta de red no existe, la propiedad devuelve una cadena vacía. String de sólo lectura.


Ejemplo de la propiedad NetworkTemplatesPath

Este ejemplo devuelve la ruta de red en la que están almacenadas las plantillas.

Msgbox Application.NetworkTemplatesPath


Propiedad ProtectionMode

True si está activada la protección de sólo interfaz de usuario. Para activar la protección de interfaz de usuario, use el método Protect con el argumento UserInterfaceOnly establecido como True. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectionMode

Este ejemplo muestra el estado de la propiedad ProtectionMode.

MsgBox ActiveSheet.ProtectionMode


Propiedad RangeSelection

Devuelve un objeto Range que representa las celdas seleccionadas en la hoja de cálculo de la ventana especificada aunque un objeto gráfico esté activo o seleccionado en la hoja de cálculo. Es de sólo lectura.

Comentarios

Si un objeto gráfico está seleccionado en una hoja de cálculo, la propiedad Selection devolverá dicho objeto, en lugar de un objeto Range, y la propiedad RangeSelection devolverá el rango de celdas que estaba seleccionado antes de seleccionar el objeto.

Esta propiedad y la propiedad Selection devuelven valores idénticos cuando se selecciona un rango (no un objeto gráfico) en la hoja de cálculo.

Si la hoja activa de la ventana especificada no es una hoja de cálculo, esta propiedad fallará.


Ejemplo de la propiedad RangeSelection

Este ejemplo muestra la dirección de las celdas seleccionadas en la hoja de cálculo de la ventana activa.

MsgBox ActiveWindow.RangeSelection.Address


Método SetBackgroundPicture

Establece el gráfico de fondo para una hoja de cálculo o un gráfico.

Sintaxis

expresión.SetBackgroundPicture(FileName)

expresión   Requerida. Una expresión que devuelve un objeto Chart o Worksheet.

Filename   String requerida. El nombre del archivo de gráficos.


Ejemplo del método SetBackgroundPicture

Este ejemplo establece el gráfico de fondo de la hoja de cálculo uno.

Worksheets(1).SetBackgroundPicture "c:\gráficos\marcaagua.bmp"


Propiedad TemplatesPath

Devuelve la ruta local en la que están almacenadas las plantillas. String de sólo lectura.


Ejemplo de la propiedad TemplatesPath

Este ejemplo devuelve la ruta local en la que están almacenadas las plantillas.

Msgbox Application.TemplatesPath


Propiedad CreateBackup

True si se crea una copia de seguridad al guardar el archivo. Boolean de sólo lectura.


Ejemplo de la propiedad CreateBackup

Este ejemplo muestra un mensaje si se crea una copia de seguridad al guardar el libro activo.

If ActiveWorkbook.CreateBackup = True Then

MsgBox "Recuerde, hay una copia de seguridad de este libro"

End If


Propiedad FileFormat

Devuelve el formato de archivo, el tipo del libro o ambos. Long de sólo lectura.

Puede ser una de las siguientes constantes XlFileFormat:

xlAddIn xlCSV xlCSVMac xlCSVMSDOS xlCSVWindows xlDBF2 xlDBF3 xlDBF4 xlDIF xlExcel2 xlExcel2FarEast xlExcel3 xlExcel4 xlExcel5 xlExcel4Workbook xlIntlAddIn xlIntlMacro xlWorkbookNormal xlSYLK	xlTemplate xlCurrentPlatformText xlTextMac xlTextMSDOS xlTextPrinter xlTextWindows xlWJ2WD1 xlWK1 xlWK1ALL xlWK1FMT xlWK3 xlWK4 xlWK3FM3 xlWKS xlWorks2FarEast xlWQ1 xlWJ3 xlWJ3FJ3
Comentarios

Los siguientes formatos adicionales están disponibles en la versión de Microsoft Excel para Lejano Oriente: xlWJ2WD1, xlExcel2FarEast y xlWorks2FarEast.


Ejemplo de la propiedad FileFormat

Este ejemplo guarda el libro activo con el formato de archivo Normal si el formato actual es WK3.

If ActiveWorkbook.FileFormat = xlWK3 Then

ActiveWorkbook.SaveAs fileFormat:=xlNormal

End If


Propiedad HasPassword

True si el libro está protegido con una contraseña. Boolean de sólo lectura.

Comentarios

Puede asignar una contraseña de protección a un libro mediante el método SaveAs.


Ejemplo de la propiedad HasPassword

Este ejemplo muestra un mensaje si el libro activo está protegido por contraseña.

If ActiveWorkbook.HasPassword = True Then

MsgBox "No olvide solicitar la contraseña del libro" & Chr(13) & _

" al administrador de la red."

End If


Método NewWindow

Crea una ventana nueva o una copia de la ventana especificada.

Sintaxis

expresión.NewWindow

expresión   Requerida. Una expresión que devuelve un objeto Window o Workbook.


Ejemplo del método NewWindow

Este ejemplo crea una nueva ventana para el libro activo.

ActiveWorkbook.NewWindow


Propiedad ProtectStructure

True si el orden de las hojas del libro está protegido. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectStructure

Este ejemplo muestra un mensaje si está protegido el orden de las hojas del libro activo.

If ActiveWorkbook.ProtectStructure = True Then

MsgBox "Recuerde que no puede eliminar, agregar ni cambiar " & Chr(13) & _

"la ubicación de las hojas de este libro."

End If


Propiedad ProtectWindows

True si las ventanas del libro están protegidas. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectWindows

Este ejemplo muestra un mensaje si están protegidas las ventanas del libro activo.

If ActiveWorkbook.ProtectWindows = True Then

MsgBox "Recuerde que no puede reorganizar ninguna ventana de este libro."

End If


Propiedad ReadOnly

True si el libro se ha abierto como de sólo lectura. Boolean de sólo lectura.


Ejemplo de la propiedad ReadOnly

Si el libro activo es de sólo lectura, este ejemplo lo guardará como Nuevarch.xls.

If ActiveWorkbook.ReadOnly Then

ActiveWorkbook.SaveAs fileName:="NUEVARCH.XLS"

End If


Propiedad ReadOnlyRecommended

True si el libro se ha guardado como recomendado sólo lectura. Boolean de sólo lectura.

Comentarios

Si abre un libro que se ha guardado como recomendado sólo lectura, Microsoft Excel mostrará un mensaje para recomendar que lo abra en dicho modo.

Use el método SaveAs para cambiar esta propiedad.


Ejemplo de la propiedad ReadOnlyRecommended

Este ejemplo muestra un mensaje si el libro activo se guarda como recomendado sólo lectura.

If ActiveWorkbook.ReadOnlyRecommended = True Then

MsgBox "Este libro se guarda como recomendado sólo lectura"

End If


Propiedad Saved

True si no se han efectuado cambios en el libro especificado desde la última vez que se guardó. Boolean de Lectura/Escritura.

Comentarios

Si un libro no se ha guardado nunca, su propiedad Path devolverá una cadena vacía ("").

Puede establecer la propiedad como True para cerrar un libro modificado sin guardarlo o sin que se pregunte si desea guardarlo.


Ejemplo de la propiedad Saved

Este ejemplo muestra un mensaje si el libro activo contiene cambios no guardados.

If Not ActiveWorkbook.Saved Then

MsgBox "Este libro contiene cambios no guardados."

End If

Este ejemplo cierra el libro que contiene el código de ejemplo y descarta los cambios realizados en él estableciendo la propiedad Saved como True.

ThisWorkbook.Saved = True

ThisWorkbook.Close


Propiedad WriteReserved

True si el libro está protegido contra escritura. Boolean de sólo lectura.

Comentarios

Use el método SaveAs para establecer esta propiedad.


Ejemplo de la propiedad WriteReserved

Si el libro activo está protegido contra escritura, este ejemplo mostrará un mensaje con el nombre del usuario que lo guardó como protegido contra escritura.

With ActiveWorkbook

If .WriteReserved = True Then

MsgBox "Póngase en contacto con " & .WriteReservedBy & Chr(13) & _

" si necesita insertar datos en este libro."

End If

End With


Propiedad WriteReservedBy

Devuelve el nombre del usuario que actualmente tiene permiso de escritura en el libro. String de sólo lectura.


Ejemplo de la propiedad WriteReservedBy

Si el libro activo está protegido contra escritura, este ejemplo mostrará un mensaje con el nombre del usuario que lo guardó como protegido contra escritura.

With ActiveWorkbook

If .WriteReserved = True Then

MsgBox "Póngase en contacto con " & .WriteReservedBy & Chr(13) & _

" si necesita insertar datos en este libro."

End If

End With


Ejemplo del método Clone de Microsoft Excel

Este ejemplo muestra un cuadro de diálogo personalizado que contiene las listas de datos de los campos CONTACTOS e ID_CLIENTE del conjunto de registros Cliente de la base de datos Nwindex.mdb.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database

Dim cr1 As Recordset, cr2 As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr1 = bd.OpenRecordset("SELECT * FROM Cliente" _

& " WHERE [REGIÓN] = 'MA' ORDER BY [ID_CLIENTE];")

Set Diálogo = DialogSheets.Add

Set list1 = Diálogo.ListBoxes.Add(78, 42, 84, 80)

Set list2 = Diálogo.ListBoxes.Add(183, 42, 84, 80)

Set cr2 = cr1.Clone()

cr2.MoveFirst

Do Until cr1.EOF

list1.AddItem (cr1.Fields("CONTACTO").Value)

cr1.MoveNext

Loop

Do Until cr2.EOF

list2.AddItem (cr2.Fields("ID_CLIENTE").Value)

cr2.MoveNext

Loop

cr1.Close

cr2.Close

bd.Close


Ejemplo del método Close de Microsoft Excel

Este ejemplo abre el conjunto de registros Cliente de la base de datos Nwindex.mdb, cuenta el número de registros que están disponibles e introduce dicho número en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente")

Set hojaResultados = Sheets("Hoja1")

hojaResultados.Activate

With hojaResultados.Cells(1, 1)

.Value = "Registros en " & rs.Name & " tabla:"

.Font.Bold = True

.EntireColumn.AutoFit

End With

cr.MoveLast

hojaResultados.Cells(1, 2).Value = cr.RecordCount

cr.Close

bd.Close


Ejemplo de los métodos CreateDatabase, CreateTableDef y Append de Microsoft Excel

Este ejemplo crea una base de datos nueva, Nwindex.mdb. El ejemplo adjunta dos tablas de la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery a la base de datos (en Windows NT, las dos tablas se encuentran en la carpeta C:\Windows\Msapps\Msquery).

Dim nWindEx As Database, tablaCliente As TableDef, tablaProveedor As TableDef

Dim dataSource As String

dataSource = _

"dBASE IV;DATABASE=C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery"

rutaAplic = Application.Path

Set nWindEx = Workspaces(0).CreateDatabase(Application.Path _

& "\NWINDEX.MDB", dbLangGeneral)

Set tablaCliente = nWindEx.CreateTableDef("Cliente")

tablaCliente.Connect = dataSource

tablaCliente.SourceTableName = "Cliente"

nWindEx.TableDefs.Append tablaCliente

Set tablaProveedor = nWindEx.CreateTableDef("Proveedor")

tablaProveedor.Connect = dataSource

tablaProveedor.SourceTableName = "Proveedor"

nWindEx.TableDefs.Append tablaProveedor

MsgBox "La base de datos " & nWindEx.Name & " se ha creado."

nWindEx.Close


Ejemplo del método Delete de Microsoft Excel

Este ejemplo agrega un nuevo registro a Product.dbf (una tabla de dBASE IV ubicada en la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery) y después lo elimina (en Windows NT, Product.dbf se encuentra en la carpeta C:\Windows\Msapps\Msquery).

Dim bd As Database, cr As Recordset

Sheets("Hoja1").Activate

Set elID = ActiveSheet.Cells(1, 2)

Set laCategoría = ActiveSheet.Cells(2, 2)

elID.Value = 200

laCategoría.Value = "BEVR"

Set bd = OpenDatabase("C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery", False, _

False, "dBASE IV")

Set cr = bd.OpenRecordset("PRODUCT.DBF", dbOpenTable)

cr.AddNew

cr("ID_PRODUCT") = elID.Value

cr("CATEGORÍA") = laCategoría.Value

cr.Update

MsgBox "El nuevo registro se ha creado con el valor " & elID.Value _

& " y " & laCategoría.Value

cr.Move 0, cr.LastModified

cr.Delete

MsgBox "El registro que acaba de crear se ha eliminado"

cr.Close

bd.Close


Ejemplo del método OpenRecordset de Microsoft Excel

Este ejemplo muestra un cuadro de diálogo personalizado que contiene una lista de todos los conjuntos de registros disponibles en la base de datos Nwindex.mdb. El ejemplo abre un nuevo conjunto de registros basado en el conjunto seleccionado por el usuario y, a continuación, copia los registros en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr1 As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Application.ScreenUpdating = False

Set Diálogo = DialogSheets.Add

Set list1 = Diálogo.ListBoxes.Add(78, 42, 84, 80)

Set label1 = Diálogo.Labels.Add(78, 125, 240, 25)

label1.Text = "Conjuntos de registros de " & db.Name

i = 0

Do Until i = bd.TableDefs.Count

list1.AddItem (bd.TableDefs(i).Name)

i = i + 1

Loop

Sheets("Hoja1").Activate

Application.ScreenUpdating = True

If Diálogo.Show = True Then

If list1.Value = 0 Then

MsgBox "No ha seleccionado un elemento de la lista."

Else

Set cr1 = bd.OpenRecordset(bd.TableDefs(list1.Value - 1).Name)

ActiveCell.CopyFromRecordset cr1

End If

End If

cr1.Close

bd.Close


Ejemplo del método GetRows de Microsoft Excel

Este ejemplo copia los registros seleccionados en el conjunto de registros Cliente de la base de datos Nwindex.mdb en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Dim data As Variant

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("SELECT ID_CLIENTE, CONTACTO FROM Cliente;")

data = cr.GetRows(6)

Sheets("Hoja1").Activate

For r = 1 to UBound(data, 2) + 1

For c = 1 to 2

Cells(r, c).Value = data(c - 1, r - 1)

Next

Next

cr.Close

bd.Close


Ejemplo del método Move de Microsoft Excel

Este ejemplo solicita al usuario que seleccione un número de registro. A continuación, el ejemplo copia los registros seleccionados en el conjunto de registros Cliente de la base de datos Nwindex.mdb en la Hoja1.

Dim bd As Database, cr As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("SELECT [ID_CLIENTE], [CONTACTO], [REGIÓN] ")

& "FROM Cliente")

Sheets("Hoja1").Activate

Distancia = Application.InputBox("¿Qué número de registro desea copiar?", _

Type:=2)

If Distancia = False Then	' InputBox cancelada por el usuario

Exit Sub

End If

cr.MoveFirst

cr.Move Distancia

For i = 0 To 2

ActiveCell.Offset(, i).Value = cr.Fields(i).Value

Next

cr.Close

bd.Close


Ejemplo del método MoveNext de Microsoft Excel

Este ejemplo reemplaza los valores del campo TÍTULO_CON de los registros del conjunto Cliente de la base de datos Nwindex.mdb y muestra el número de reemplazos efectuados.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset, sQLText As String

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

sQLText = "SELECT * FROM Cliente WHERE " _

& "TÍTULO_CON = 'Representante de ventas;"

Set cr = bd.OpenRecordset(sQLText)

i = 0

Do Until cr.EOF

With cr

.Edit

.Fields("TÍTULO_CON").Value = "Jefe de ventas"

.Update

.MoveNext

End With

i = i + 1

Loop

MsgBox i & " reemplazos efectuados."

cr.Close

bd.Close


Ejemplo del método OpenDatabase de Microsoft Excel

Este ejemplo muestra un cuadro de diálogo personalizado que contiene una lista de todas las bases de datos cuya extensión es .mdb y están en la carpeta Microsoft Excel, abriendo después la base de datos seleccionada por el usuario.

Dim a(100), bd As Database

i = 0

ChDrive "C"

ChDir Application.Path

a(i) = Dir("*.MDB")

If a(i) = "" Then

MsgBox "La carpeta Microsoft Excel no contiene bases de datos"

Exit Sub

End If

Do

i = i + 1

a(i) = Dir()

Loop Until a(i) = ""

Set Diálogo = DialogSheets.Add

Set list1 = Diálogo.ListBoxes.Add(78, 42, 84, 80)

For counter = 0 To i - 1

list1.AddItem a(counter)

Next

Application.ScreenUpdating = True

Diálogo.Show

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

MsgBox "La base de datos " & db.Name & " ahora está abierta"

' usar aquí la base de datos

bd.Close


Ejemplo del método Seek de Microsoft Excel

Este ejemplo abre Product.dbf (una tabla de dBASE IV que se encuentra en la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery), localiza un registro y copia sus valores en las celdas B2:C2 de la Hoja1 (en Windows NT, Product.dbf se encuentra en la carpeta C:\Windows\Msapps\Msquery).

Dim bd As Database, cr As Recordset

Sheets("Hoja1").Activate

Set bd = OpenDatabase("C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery", _

False, False, "dBASE IV")

Set cr = bd.OpenRecordset("PRODUCT.DBF", dbOpenTable)

cr.Index = "PRODUCT"

cr.Seek "=", "1"

If cr.NoMatch Then

MsgBox "No se encontraron registros"

Else

ActiveSheet.Cells(2, 2) = cr.Fields("CATEGORÍA").Value

ActiveSheet.Cells(3, 2) = cr.Fields("NOMBRE_PROD").Value

End If

cr.Close

bd.Close


Ejemplo del método Update de Microsoft Excel

Este ejemplo abre Product.dbf (una tabla de dBASE IV que se encuentra en la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery), busca un registro cuyo valor de PRODUCTO es 1 y establece el campo CATEGORÍA como el valor de la celda B2 de la Hoja1 (en Windows NT, Product.dbf se encuentra en la carpeta C:\Windows\Msapps\Msquery).

Dim bd As Database, cr As Recordset, sQLText As String

Sheets("Hoja1").Activate

Set celdaCategoría = ActiveSheet.Cells(2, 2)

celdaCategoría.Value = "BEVR"

Set bd = OpenDatabase("C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery", _

False, False, "dBASE IV")

Set cr = bd.OpenRecordset("PRODUCT.DBF", dbOpenTable)

With cr

.Index = "PRODUCT"

.Seek "=", "1"

.Edit

.Fields("CATEGORÍA").Value = celdaCategoría.Value

.Update

End With

MsgBox "El campo se ha actualizado con " & celdaCategoría.Value

cr.Close

bd.Close


Ejemplo de la propiedad AbsolutePosition de Microsoft Excel

Este ejemplo solicita al usuario un número de registro. El ejemplo usa el número para desplazarse a un registro del conjunto de registros Cliente de la base de datos Nwindex.mdb y, a continuación, copia los valores de los tres campos especificados en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Sheets("Hoja1").Activate

númeroRegistro = Application.InputBox(Prompt:="Número de registro a copiar " _

& "en la Hoja1", Title:="Registro a copiar", Type:=1)

If númeroRegistro = False Then	' InputBox cancelada por el usuario

Exit Sub

End If

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente", dbOpenSnapshot)

cr.MoveLast

If cr.RecordCount > númeroRegistro Then

cr.AbsolutePosition = númeroRegistro

ActiveCell.Value = cr.Fields("CONTACTO").Value

ActiveCell.Offset(, 1).Value = cr.Fields("DIRECCIÓN").Value

ActiveCell.Offset(, 2).Value = cr.Fields("CIUDAD").Value

Else

MsgBox "El registro Nº" & númeroRegistro & " no existe."

End If

cr.Close

bd.Close


Ejemplo de las propiedades Bookmark y Bookmarkable de Microsoft Excel

Este ejemplo solicita al usuario una abreviatura de dos letras para una provincia. El ejemplo usa el valor para buscar hasta un máximo de 101 registros que coinciden en el conjunto de registros Cliente de la base de datos Nwindex.mdb. A continuación, marca cada registro con un marcador y copia los valores de los campos primero y tercero en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim Found(100)

i = 0

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente")

Sheets("Hoja1").Activate

regiónBuscada = Application.InputBox("¿De qué provincia desea los datos?", _

"Especifique dos letras (p. ej., 'MA')", Type:=2)

If regiónBuscada = False Then	' InputBox cancelada por el usuario

Exit Sub

End If

criteria = "[REGIÓN] = '" & regiónBuscada & "'"

cr.FindFirst criteria

If cr.NoMatch Or cr.Bookmarkable = False Then

MsgBox "No hay registros para esta provincia"

Exit Sub

Else

Do Until cr.NoMatch = True

i = i + 1

Found(i) = cr.Bookmark

cr.FindNext criteria

Loop

End If

For n = 1 To i

cr.Bookmark = Found(n)

Cells(n + 1, 1).Value = cr.fields(0).Value

Cells(n + 1, 2).Value = cr.fields(2).Value

Next

MsgBox "Hay " & i & " registros de esta región"

cr.Close

bd.Close


Ejemplo de las propiedades Connect y SourceTableName de Microsoft Excel

Este ejemplo adjunta la tabla Product.dbf (una tabla de dBASE IV que se encuentra en la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\Msquery) a la base de datos Nwindex.mdb (en Windows NT, Product.dbf se encuentra en la carpeta C:\Windows\Msapps\Msquery).

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim nWindEx As Database, tDef As TableDef

Dim dataSource As String

dataSource = _

"dBASE IV;DATABASE=C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery"

Set nWindEx = Workspaces(0).OpenDatabase(Application.Path _

& "\NWINDEX.MDB")

Set tDef = nWindEx.CreateTableDef("Producto")

tDef.Connect = dataSource

tDef.SourceTableName = "Producto"

nWindEx.TableDefs.Append tDef

nWindEx.Close


Ejemplo de la propiedad Count de Microsoft Excel

Este ejemplo muestra el número de conjuntos de registros de la base de datos Nwindex.mdb y, a continuación, introduce sus nombres en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, i As Integer

Sheets("Hoja1").Activate

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Cells(1, 1).Value = "Lista TableDef para " & bd.Name

Cells(1, 1).EntireColumn.AutoFit

For i = 0 To bd.TableDefs.Count - 1

Cells(i + 2, 1).Value = bd.TableDefs(i).Name

Next i

MsgBox "Hay " & bd.TableDefs.Count & " TableDefs"

bd.Close


Ejemplo de las propiedades DateCreated y LastUpdated de Microsoft Excel

Este ejemplo muestra la fecha y hora en que se creó y actualizó por última vez el conjunto de registros Cliente de la base de datos Nwindex.mdb.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim creation As Variant, changed As Variant

Dim bd As Database, td As TableDef

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set td = bd.TableDefs("Cliente")

creation = td.DateCreated

changed = td.LastUpdated

MsgBox "La tabla " & td.Name & " se creó el " & creation _

& " y se actualizó el " & changed

bd.Close


Ejemplo de la propiedad EditMode de Microsoft Excel

Este ejemplo comprueba si puede editarse el conjunto de registros Cliente de la base de datos Nwindex.mdb. Si es así, el ejemplo actualiza el valor del primer campo del primer registro con el valor de la celda C3 de la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente")

If Not ((cr.EditMode = dbEditAdd) Or _

(cr.EditMode = dbEditInProgress)) Then

cr.Edit

cr.Fields(0).Value = Worksheets(1).Cells(3, 3).Value

cr.Update

Else

MsgBox ("No se puede actualizar la base de datos con el valor de la celda")

End If

cr.Close

bd.Close


Ejemplo de la propiedad Filter de Microsoft Excel

Este ejemplo crea un nuevo conjunto de registros que contiene registros del conjunto Proveedor de la base de datos Nwindex.mdb y, a continuación, copia el contenido del conjunto de registros en la Hoja1. Los registros sólo contienen datos de los proveedores de Canadá. El ejemplo copia un conjunto de registros nuevo y ordenado en Microsoft Excel.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset, conjuntoOrdenado As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Proveedor", dbOpenDynaset)

cr.Filter = "[PAÍS] = 'Canadá'"

Set conjuntoOrdenado = cr.OpenRecordset()

Sheets("Hoja1").Activate

ActiveCell.CopyFromRecordset conjuntoOrdenado

conjuntoOrdenado.Close

cr.Close

bd.Close


Ejemplo de la propiedad LockEdits de Microsoft Excel

Este ejemplo bloquea el conjunto de registros Cliente en la base de datos Nwindex.mdb antes de actualizar el valor del campo ID_CLIENTE del primer registro con el valor de la celda A1 de la Hoja1. El bloqueo del conjunto de registros asegura que los demás usuarios no podrán modificar el registro mientras se está actualizando.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Sheets("Hoja1").Cells(1, 1).Value = "ACRIM"

databasePath = Application.Path & "\NWINDEX.MDB"

Set bd = DBEngine.Workspaces(0).OpenDatabase(databasePath)

Set cr = bd.OpenRecordset("Cliente")

valorAgregado = Sheets("Hoja1").Cells(1, 1).Value

cr.LockEdits = False

cr.Edit

cr.fields("ID_CLIENTE").Value = valorAgregado

cr.Update

MsgBox "El nuevo valor de ID_CLIENTE es " & cr.fields("ID_CLIENTE").Value

cr.Close

bd.Close


Ejemplo de la propiedad Name de Microsoft Excel

Este ejemplo introduce en la celda activa de la Hoja1 el nombre del primer conjunto de registros de la base de datos Nwindex.mdb.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, td As TableDef

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set td = bd.TableDefs(0)

Sheets("Hoja1").Activate

ActiveCell.Value = td.Name

bd.Close


Ejemplo de la propiedad NoMatch de Microsoft Excel

Este ejemplo agrega todos los nombres de contactos para la provincia de Málaga a una lista de la hoja uno. Los datos se obtienen del conjunto de registros Cliente de la base de datos Nwindex.mdb.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database

Dim cr As Recordset

rw = 0

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("SELECT * FROM Cliente")

criterio = "[REGIÓN] = 'MA'"

Set wk = Worksheets.Add

cr.FindFirst criterio

Do Until cr.NoMatch

rw = rw + 1

wk.Range(rw, 1).Value = cr.fields("CONTACTO").Value

cr.FindNext criterio

Loop

cr.Close

bd.Close


Ejemplo de la propiedad PercentPosition de Microsoft Excel

Este ejemplo selecciona y cambia registros del conjunto de registros Cliente de la base de datos Nwindex.mdb y, a continuación, copia el conjunto en la Hoja1. En la barra de estado se muestra el porcentaje de registros cambiados.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset, sQLText as String

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

sQLText = "SELECT [TÍTULO_CON], [CONTACTO], [EMPRESA] FROM Cliente " _

& "WHERE [TÍTULO_CON] = 'Propietario'

Set cr = bd.OpenRecordset(sQLText, dbOpenDynaset)

cr.MoveFirst

Sheets("Hoja1").Activate

Do While Not cr.EOF

cr.Edit

cr.Fields("TÍTULO_CON").Value = "Director de cuentas"

cr.Update

Application.StatusBar = cr.PercentPosition & "% de los " _

& " registros se han sustituido."

cr.MoveNext

Loop

Application.StatusBar = "Terminado"

cr.MoveFirst

numberOfRows = ActiveCell.CopyFromRecordset(cr)

MsgBox numberOfRows & " Registros han cambiado"

cr.Close

bd.Close


Ejemplo de la propiedad RecordCount de Microsoft Excel

Este ejemplo muestra el número de registros del conjunto de registros Cliente de la base de datos Nwindex.mdb.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path _

& "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente")

On Error GoTo errorHandler

cr.MoveLast

MsgBox "Hay " & cr.RecordCount & " registros en " _

& cr.Name

cr.Close

bd.Close

Exit Sub

errorHandler:

MsgBox "No hay registros en " & cr.Name

cr.Close

bd.Close


Ejemplo de las propiedades Size y Type de Microsoft Excel

Este ejemplo copia en la Hoja1 todos los campos del tipo Double de Orddtail.dbf, una tabla de dBASE IV que se encuentra en la carpeta C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery (en Windows NT, Orddtail.dbf se encuentra en la carpeta C:\Windows\Msapps\Msquery).

Dim bd As Database, registrosACopiar As Recordset, tDef As Recordset

Dim fieldsToStore(1000), fileName As String

fileName = "ORDDTAIL.DBF"

Set bd = _

Workspaces(0).OpenDatabase("C:\Archivos de Programa\Archivos Comunes\Microsoft Shared\MSquery"

False, False, "dBASE IV")

Set tDef = db.OpenRecordset(fileName)

n = 0

Sheets("Hoja1").Activate

For i = 0 To tDef.Fields.Count - 1

If tDef.Fields(i).Type = dbDouble Then

fieldsToStore(n) = tDef.fields(i).Name

n = n + 1

End If

Next

If fieldsToStore(0) = "" Then

MsgBox "No hay campos numéricos en esta tabla."

Exit Sub

End If

For i = 0 To n - 1

records = "SELECT " & "[" & fieldsToStore(i) & "]" _

& " en " & bd.Recordsets(fileName).Name & ";"

Set registrosACopiar = bd.OpenRecordset(records)

With ActiveSheet.Cells(1, i + 1)

.CopyFromRecordset registrosACopiar

.ColumnWidth = registrosACopiar.fields(0).Size

End With

Next

registrosACopiar.Close

tDef.Close

bd.Close


Ejemplo de la propiedad Sort de Microsoft Excel

Este ejemplo crea un conjunto de registros nuevo que contiene registros del conjunto Proveedor de la base de datos Nwindex.mdb y, a continuación, copia el contenido del nuevo conjunto en la Hoja1. El nuevo conjunto se ordena por el campo PAÍS, en orden ascendente.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset, conjuntoOrdenado As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Proveedor", dbOpenDynaset)

cr.Sort = "[PAÍS]"

Set conjuntoOrdenado = cr.OpenRecordset()

Sheets("Hoja1").Activate

ActiveCell.CopyFromRecordset conjuntoOrdenado

conjuntoOrdenado.Close

cr.Close

bd.Close


Ejemplo del método CreateQueryDef y de la propiedad SQL de Microsoft Excel

Este ejemplo crea una nueva consulta basada en el conjunto de registros Cliente de la base de datos Nwindex.mdb. La consulta selecciona una instantánea de todos los clientes de la provincia de Málaga y, a continuación, la copia en la Hoja1.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, qDef As QueryDef, cr As Recordset

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set qDef = bd.CreateQueryDef("Provincia MA")

qDef.SQL = "SELECT * FROM Cliente WHERE [Provincia] = 'MA';"

Set cr = bd.OpenRecordset("Provincia MA")

numberOfRows = Sheets("Hoja1").Cells(1, 1).CopyFromRecordset(cr)

Sheets("Hoja1").Activate

MsgBox numberOfRows & " registros se han copiado."

cr.Close

bd.Close


Ejemplo de la propiedad Updatable de Microsoft Excel

Este ejemplo solicita al usuario que seleccione una celda que contenga un valor para el campo CONTACTO del conjunto de registros Cliente de la base de datos Nwindex.mdb. A continuación, el ejemplo comprueba si puede actualizarse el conjunto de registros. Si es así, el ejemplo agrega un nuevo registro al conjunto, empleando el valor de la celda seleccionada.

Para crear la base de datos Nwindex.mdb, ejecute el ejemplo de Microsoft Excel para el método CreateDatabase.

Dim bd As Database, cr As Recordset

Sheets("Hoja1").Activate

Set celdaACopiar = Application.InputBox("¿Qué celda desea" _

& " actualizar como contacto?", Type:=8)

If celdaACopiar = False Then	' InputBox cancelada por el usuario

Exit Sub

End If

Set bd = Workspaces(0).OpenDatabase(Application.Path & "\NWINDEX.MDB")

Set cr = bd.OpenRecordset("Cliente")

If cr.Updatable = True Then

cr.AddNew

cr("CONTACTO") = celdaACopiar

cr.Update

cr.MoveLast

MsgBox "El nuevo contacto es " & cr("CONTACTO").Value

Else

MsgBox "El conjunto de registros no puede modificarse."

End If

cr.Close

bd.Close


Función InputBox de Microsoft Excel

En Microsoft Excel, la cadena prompt no puede contener más de 256 caracteres.


Función MsgBox de Microsoft Excel

En Microsoft Excel, la cadena prompt no puede contener más de 256 caracteres.


Errores controlables de Microsoft Excel

Microsoft Excel usa los errores controlables mostrados en la lista de la siguiente tabla, además de los que usa Visual Basic. En Visual Basic también puede trabajar con valores de error de celda de Microsoft Excel. Para obtener más información, vea Valores de error de celda.

Código	Mensaje
1000	'[Objeto]' no tiene la propiedad '[propiedad]' La propiedad no existe para este objeto. Para obtener más información, busque el nombre del objeto en la Ayuda.
1001	'[Objeto]' no tiene el método '[método]' El método no existe para este objeto. Para obtener más información, busque el nombre del objeto en la Ayuda.
1002	Falta el argumento requerido '[argumento]' El método espera un argumento requerido que no se ha especificado. Agregue el argumento al código. Para ver una lista de los argumentos requeridos, busque el nombre del método en la Ayuda.
1003	Número de argumentos no válido El método tiene un número de argumentos incorrecto. Normalmente ocurre cuando los argumentos se especifican por posición, en lugar de por nombre, y hay demasiados argumentos. Para ver una lista de los argumentos válidos para el método, busque el nombre del método en la Ayuda.
1004	Ha fallado el método '[método]' de la clase '[objeto]' El método no puede emplearse en el objeto. Entre las razones posibles se encuentran: • Un argumento contiene un valor no válido. Una causa frecuente del problema es el intento de acceso a un objeto que no existe (por ejemplo, si se intenta usar Workbooks(5) cuando sólo están abiertos tres libros). • El método no puede emplearse en el contexto aplicado. Por ejemplo, algunos métodos del objeto Range necesitan que el rango contenga datos; en caso contrario, el método falla. • Ha ocurrido un error externo, por ejemplo, no se pudo leer o escribir en un archivo. Para obtener más información acerca del método, busque su nombre en la Ayuda.
1005	Imposible asignar la propiedad '[propiedad]' de la clase '[objeto]' La propiedad no puede cambiarse. Entre las razones posibles se encuentran: • El valor empleado para la propiedad no es válido (por ejemplo, se establece la propiedad como un valor de cadena, pero se necesita un valor Boolean). • La propiedad es de sólo lectura. Para obtener más información acerca de la propiedad, busque su nombre en la Ayuda.
1006	Imposible obtener la propiedad '[propiedad]' de la clase '[objeto]' La propiedad no puede leerse. Un motivo posible es que la propiedad no puede usarse en el contexto aplicado. Por ejemplo, el código ActiveChart.Legend.Font.Color = RGB(255, 0, 0) causa este error si el gráfico activo no contiene una leyenda. Para obtener más información acerca de la propiedad, consulte la Ayuda.


Listas de argumentos de cuadros de diálogo incorporados

Constante de cuadro de diálogo	Listas de argumentos
xlDialogActivate	ventana, sección
xlDialogActiveCellFont	fuente, estilo_fuente, tamaño, tachado, superíndice, subíndice, hueca, sombra, subrayado, color, normal, fondo, 1er_carácter, núm_de_caracteres
xlDialogAddChartAutoformat	nombre_texto, descr_texto
xlDialogAddinManager	núm_operación,texto_nombre_macro_auto,valor_lógico_copiar
xlDialogAlignment	alin_horiz,retorno,alin_vert,orientación, orientación, agregar_sangría
xlDialogApplyNames	nombre_matriz,ignorar,usar_filacol,omitir_col,omitir_fila,orden,agregar_último
xlDialogApplyStyle	estilo
xlDialogAppMove	coord_x,coord_y
xlDialogAppSize	coord_x,coord_y
xlDialogArrangeAll	organizar,doc_activo,sinc_horiz,sinc_vert
xlDialogAssignToObject	ref_macro
xlDialogAssignToTool	barra, posición, macro
xlDialogAttachText	adjuntar_a,serie,punto
xlDialogAttachToolbars
xlDialogAutoCorrect	corregir_mayús_iniciales, días_en _mayús
xlDialogAxes	principal_x,principal_y,super_x,super_y
xlDialogAxes	primario_x, primario_y, primario_z
xlDialogBorder	contorno,izquierda,derecha,superior,inferior,área_sombreada,color_contorno,color_izq,color_der,color_super,color_infer
xlDialogCalculation	núm_tipo,iteración,núm_máx,cambio_máx,actualizar,precisión,1904,guardar_cálculo,guardar_valores,eval_alt,introd_alt
xlDialogCellProtection	bloqueado, oculto
xlDialogChangeLink	viejo,nuevo,tipo_de_vínculo
xlDialogChartAddData	ref,fila_col,título,categorías,reemplazar,series
xlDialogChartTrend	tipo,orden_per,extrapol_adelante,extrapol_atrás,intersección,ecuación,r2,nombre
xlDialogChartWizard	largo,ref,galería,núm_tipo,trazar_por,categorías,título_de_serie,leyenda,título,título_x,título_y,título_z,núm_categorías,núm_títulos
xlDialogCheckboxProperties	valor, vínculo, acelerador, acelerador2, efecto_3D
xlDialogClear	núm_tipo
xlDialogStyle	archivo
xlDialogColumnWidth	ancho,ref,estándar,núm_tipo,núm_estándar
xlDialogCombination	núm_tipo
xlDialogConsolidate	ref_fuente,función,fila_super,col_izq,crear_vínculos
xlDialogCopyChart	tamaño
xlDialogCopyPicture	apariencia, tamaño, núm_tipo
xlDialogCreateNames	superior,izquierda,inferior,derecha
xlDialogCreatePublisher	archivo,apariencia,tamaño,formatos
xlDialogCustomizeToolbar	categoría
xlDialogDataDelete
xlDialogDataLabel	Mostrar_opción,texto_automático,mostrar_clave
xlDialogDataSeries	filacol,núm_tipo,fecha,incremento,límite,tendencia
xlDialogDefineName	nombre_texto,se_refiere_a,tipo_de_macro,método_abrev,oculto,categoría,local
xlDialogDefineStyle	estilo,número,fuentes,alineación,bordes,trama,protección
xlDialogDefineStyle	estilo,atributo,argumentos_adicionales,...
xlDialogDeleteFormat	formato
xlDialogDeleteName	nombre_texto
xlDialogDemote	filacol
xlDialogDisplay	fórmulas,líneas_de_división,encabezados,ceros,color,reservado,esquema,saltos_de_pág,objeto
xlDialogDisplay	celda,fórmula,valor,formato,protección,nombres,precedentes,dependientes,coment
xlDialogEditboxProperties	núm_validación,lógico_multilínea,lógico_desplazarv,lógico_contraseña
xlDialogEditColor	núm_color,rojo,verde,azul
xlDialogEditDelete	desplazar
xlDialogEditionOptions	tipo_edición,nombre_edición,referencia,opción,apariencia,tamaño,formatos
xlDialogEditSeries	núm_serie,ref_nombre,ref_x,ref_y,ref_z,orden_de_trazado
xlDialogErrorbarX	incluir, tipo, cuantía, predeterminada
xlDialogErrorbarY	incluir, tipo, cuantía, predeterminada
xlDialogExtract	valor_único
xlDialogFileDelete	archivo
xlDialogFillGroup	núm_tipo
xlDialogFillWorkgroup	núm_tipo
xlDialogFilterAdvanced	operación,ref_lista,copiar_a,extracción,registros_únicos
xlDialogFindFile
xlDialogFont	nombre_texto,tamaño
xlDialogFontProperties	fuente, estilo_fuente, tamaño, tachado, superíndice, subíndice, hueca, sombra, subrayado, color, normal, fondo, 1er_carácter, núm_de_caracteres
xlDialogFormatAuto	formato, número, fuente, alineación, borde, trama, ancho
xlDialogFormatChart	núm_capa,presentación,superp,ángulo,ancho_rango,profd_rango,profd_gráfico,tamaño_anillos,eje,lineas_de_unión,máx_mín,bar_apertura_y_cierre,líneas_series,rótulos,variar
xlDialogFormatCharttype	aplicar_a,núm_grupo,dimensión,núm_tipo
xlDialogFormatFont	color,fondo,aplicar,nombre_texto,tamaño,negrita,cursiva,subrayado,tachado,hueca,sombra,ident_objeto,1er_carácter,núm_de_carácteres
xlDialogFormatFont	nombre_texto,tamaño,negrita,cursiva,subrayado,tachado,color,hueca,sombra
xlDialogFormatFont	color,fondo,aplicar,nombre_texto,tamaño,negrita,cursiva,subrayado,tachado,hueca,sombra,ident_objeto,1er_carácter,núm_de_carácteres
xlDialogFormatLegend	posición
xlDialogFormatMain	núm_tipo,presentación,superposición,ancho_rango,variar,líneas_unión,máx_mín,ángulo,profundidad_rango,profundidad_gráfico,apertura_cierre,líneas_de_serie,rótulos,tamaño_anillos
xlDialogFormatMove	distancia_x, distancia_y, referencia
xlDialogFormatMove	pos_x,pos_y
xlDialogFormatMove	núm_de_expansión
xlDialogFormatNumber	formato
xlDialogFormatOverlay	núm_tipo,presentación,superposición,ancho,variar,líneas_de_unión,máx_mín,ángulo,distribución_de_series,series,apertura_cierre,líneas_de_serie,rótulos,tamaño_anillos
xlDialogFormatSize	ancho, alto
xlDialogFormatSize	distancia_x, distancia_y, referencia
xlDialogFormatText	alin_x,alin_y,orientación,texto_auto,tamaño_auto,mostrar_clave,mostrar_valor,agregar_sangría
xlDialogFormulaFind	texto,en_núm,núm,por_núm,núm_de_dir,coinc_mayús,coinc_byte
xlDialogFormulaGoto	ref, esquina
xlDialogFormulaReplace	encontrar_texto,reemplazar_texto,mirar_a,celda_activa,coincidir_mayús/minús,coincidir_byte
xlDialogFunctionWizard
xlDialogGallery3dArea	núm_tipo
xlDialogGallery3dBar	núm-tipo
xlDialogGallery3dColumn	núm-tipo
xlDialogGallery3dLine	núm-tipo
xlDialogGallery3dPie	núm-tipo
xlDialogGallery3dSurface	núm-tipo
xlDialogGalleryArea	núm_tipo,eliminar_superpuesto
xlDialogGalleryBar	núm_tipo,eliminar_superpuesto
xlDialogGalleryColumn	núm_tipo,eliminar_superpuesto
xlDialogGalleryCustom	nombre_texto
xlDialogGalleryDoughnut	núm_tipo,eliminar_superpuesto
xlDialogGalleryLine	núm_tipo,eliminar_superpuesto
xlDialogGalleryPie	núm_tipo,eliminar_superpuesto
xlDialogGalleryRadar	núm_tipo,eliminar_superpuesto
xlDialogGalleryScatter	núm_tipo,eliminar_superpuesto
xlDialogGoalSeek	celda,valor_del_objetivo,celda_variable
xlDialogGridlines	x_princ,x_secund,y_princ,y_secund,z_princ,z_secund,efecto_2D
xlDialogInsert	desplazar
xlDialogInsertObject	clase_de_objeto,nombre_archivo,vínculo,mostrar_icono,archivo_icono,núm_icono,etiqueta_icono
xlDialogInsertPicture	nombre_archivo,núm_filtro
xlDialogInsertTitle	gráfico,primario_Y,primario_X,secundario_Y,secundario_X
xlDialogLabelProperties	acelerador, acelerador2, efecto_3D)
xlDialogListboxProperties	rango_entrada,vínculo,altura,selección_multiple,efecto_3D
xlDialogMacroOptions	nombre_macro,descripción,activar_menú,texto_menú,activar_metodo_abreviado,tecla_metodo_abreviado,categoría_de_función,texto_barra_de_estado,tema_de_ayuda,archivo_ayuda
xlDialogMailEditMailer	para_destinatarios, copia, copia_invisible, asunto, datos_adjuntos, qué_dirección
xlDialogMailLogon	nombre, contraseña, transferir_valor_lógico
xlDialogMailNextLetter
xlDialogMainChart	núm_tipo,totalizado,100,variar,superpuesto,líneas_unión,máxmín,%superposición,grupo,ángulo
xlDialogMainChartType	núm-tipo
xlDialogMenuEditor
xlDialogMove	pos_x,pos_y,ventana_texto
xlDialogNew	núm_tipo, serie_xy, agregar
xlDialogNote	agregar_texto, ref_celda, 1er_carácter, núm_de_caracteres
xlDialogObjectProperties	colocar_objeto,imprimir_objeto
xlDialogObjectProtection	bloqueado,bloquear_texto
xlDialogOpen	archivo,actualizar_vínculos,sólo_lectura,formato,contraseña_protección,contraseña_escritura,ignorar_mensaje,origen_archivo,separador_personalizado,agregar,modificable,acceso,notificar,convertidor
xlDialogOpenLinks	documento1, documento2, ..., sólo_lectura, tipo_de_vínculo
xlDialogOpenMail	tema, coment
xlDialogOpenText	nombre_archivo,origen,comenzar_en_fila,tipo_archivo,calificador_de_texto,separadores_consecutivos,tabulación,pto_y_coma,coma,espacio,otro,otro_carácter,campo_de_info
xlDialogOptionsCalculation	núm_tipo, iteración, núm_máx, cambios_máx, actualizar, precisión, sistema_de_fechas_1904, guardar_cálculo, guardar_valores
xlDialogOptionsChart	celdas_vacías, trazar_celdas_visibles, tamaño_gráfico_con_marco
xlDialogOptionsEdit	edición_encelda,arrastrar_colocar,alerta,introducirmovimiento,fijo,decimales,copiar_objetos,actualizar_vínculos,mover_dirección,autocompletar,animaciones
xlDialogOptionsGeneral	F1C1,ignorar_aplicaciones,resumen_info,pistas,archivos_usados,menús_antiguos,info_usuario,fuente,tamaño_fuente,dir_predeterminado,dir_inicio_adicional,num_de_hojas,subrayado
xlDialogOptionsListsAdd	entradas_de_lista
xlDialogOptionsListsAdd	celdas_a_importar, por_fila
xlDialogOptionsTransition	tecla_menús, xl_123, desplaz_trans, evaluación_fórmulas, introducción_fórmulas
xlDialogOptionsView	fórmula, estado, notas, mostrar_información, núm_objeto, saltos_de_pág, fórmulas, líneas_de_división, color, encabezados, esquema_presentación, ceros, desplazamiento_hor, desplazamiento_ver, fichas_hojas
xlDialogOutline	auto_estilos,dir_fila,dir_col,crear_aplicar
xlDialogOverlay	tipo, totalizado, 100, variar, superpuesto, líneas_unión, máxmín, %superposición, grupo, ángulo, serie, auto
xlDialogOverlayChartType	núm-tipo
xlDialogPageSetup	encab,pie,izq,der,superior,inferior,encab_filas_col,cuadrícula,cntr_hor,cntr_vert,orientación,tamaño_papel,escala,núm_pág,orden_impresión,celdas_blanco_negro,calidad,margen_superior,margen_inferior,comen,calidad_borrador
xlDialogPageSetup	encab, pie, izq, der, superior, inferior, tamaño, centrar_h, centrar_v, orientación, tamaño_papel, escala, núm_pág, gráfico_bl_y_neg, calidad, margen_encab, margen_pie, borrador
xlDialogPageSetup	encab,pie,izq,der,superior,inferior,orientación,tamaño_papel,escala,calidad,margen_encab,margen_pie_pág,núm_pág
xlDialogParse	texto_a_distribuir,ref_destino
xlDialogPasteSpecial	pegar, operación, saltar_blancos, transponer
xlDialogPasteSpecial	ref,fila_col,título,categorías,reemplazar,series
xlDialogPasteSpecial	pegar
xlDialogPasteSpecial	formato, vínculo_pegado, val_lóg_presentar_icono, archivo_icono, núm_icono, etiqueta_icono
xlDialogPatterns	a_dis,a_pr_pl,a_fon,nueva_trama
xlDialogPatterns	l_auto, l_est, l_col, l_gros, h_ancho, h_largo, h_tipo
xlDialogPatterns	b_auto,b_est,b_col,b_gros,somb,a_auto,atrama,a_pr_pl,a_fon,redondeado,nueva_trama
xlDialogPatterns	b_auto,b_est,b_col,b_gros,somb,a_auto,atrama,a_pr_pl,a_fon,invertir,aplicar,nuevo_fondo
xlDialogPatterns	l_auto, l_est, l_col, l_gros, t_mayor, t_menor, t_rót
xlDialogPatterns	l_auto, l_est, l_col, l_gros, aplicar, lín_suavizada
xlDialogPatterns	l_auto, l_est, l_col, l_gros, m_auto, m_est, m_pr_pl, m_fon, aplicar, lín_suavizada
xlDialogPatterns	tipo, unidades_imagen, aplicar
xlDialogPivotFieldGroup	inicial,final,de,períodos
xlDialogPivotFieldProperties	nombre, nombre_campo_di, nombre_nuevo, orientación, función, formatos
xlDialogPivotFieldUngroup
xlDialogPivotShowPages	nombre,campo_página
xlDialogPivotTableWizard	tipo, origen, destino, nombre, totales_filas, totales_columnas, guardar_datos, aplicar_autoformato, página
xlDialogPlacement	colocar
xlDialogPrint	núm_rango,desde,hasta,copias,borrador,vista_previa,imprimir_qué,color,alimentar,calidad,resolución_y,selección,texto_impresora,imprimir_en_archivo,intercalar
xlDialogPrinterSetup	impresora
xlDialogPrintPreview
xlDialogPromote	filacol
xlDialogProperties	título, asunto, autor, palabras_clave, comentario
xlDialogProtectDocument	contenido, ventanas, contraseña, objetos, escenarios
xlDialogPushbuttonProperties	predeterminado, cancelar, cerrar, ayuda, acelerador, acelerador2
xlDialogReplaceFont	fuente, nombre, tamaño, negrita, cursiva, subrayado, tachado, color, hueca, sombra
xlDialogRoutingSlip	destinatario, asunto, mensaje, ruta, valor_lóg_devolver, val_lóg_seguimiento
xlDialogRowHeight	alto,ref,alto_estándar,núm_tipo
xlDialogRun	ref,paso_a_paso
xlDialogSaveAs	documento, tipo, contraseña_protección, copia_de_seguridad, contraseña_escritura, rec_sólo_lectura
xlDialogSaveCopyAs	documento
xlDialogSaveNewObject
xlDialogSaveWorkbook	documento, tipo, contraseña_protección, copia_de_seguridad, contraseña_escritura, rec_sólo_lectura
xlDialogSaveWorkspace	nombre_texto
xlDialogScale	cruce,rótulos_categorías,marcas_categorías,entre,máx,invertir
xlDialogScale	mín, máx, principal, secundaria, cruce, logarítmica, invertir, cruza_máx
xlDialogScale	rótulos_categorías,marcas_categorías,invertir,entre
xlDialogScale	rótulos_series, marcas_series, invertir
xlDialogScale	mín, máx, principal, secundaria, cruce, logarítmica, invertir, cruza_mín
xlDialogScenarioAdd	nombre_escenario, matriz, celdas_cambiantes, comentarios, bloqueado, oculto
xlDialogScenarioCells	celdas_cambiantes
xlDialogScenarioEdit	nombre_escenario, nuevo_nombre, matriz, celdas_cambiantes, comentarios, bloqueado, oculto
xlDialogScenarioMerge	archivo_origen
xlDialogScenarioSummary	celdas_resultado,tipo_informe
xlDialogScrollbarProperties	valor_actual, valor_mín, valor_máx, incremento, cambio_pág, vínculo, efecto_3D
xlDialogSelectSpecial	núm_tipo,tipo_de_valores,niveles
xlDialogSendMail	destinatario, asunto, acuse_de_recibo
xlDialogSeriesAxes	núm_eje
xlDialogSeriesOrder	núm_gráfico, núm_serie_antigua, núm_serie_nueva
xlDialogSeriesX	ref_x
xlDialogSeriesY	nombre_ref,ref_y
xlDialogSetControlValue	valor
xlDialogSetPrintTitles	títulos_para_columnas,títulos_para_filas
xlDialogSetUpdateStatus	vínculo, estado, tipo_de_vínculo
xlDialogShowDetail	fila_col,núm_fila_col,expandir,mostrar_campos
xlDialogShowToolbar	barra,mostrar,fijar,pos_x,pos_y,ancho,proteger,pistas,botones_grandes,barras_en_color
xlDialogSize	ancho,alto,ventana_texto
xlDialogSort	orientación, criterio1, orden1, criterio2, orden2, criterio3, orden3, encabezado, personalizar, mayúsc_minúsc
xlDialogSort	orientación, criterio1, orden1, tipo, personalizar
xlDialogSortSpecial	ordenar_por, método, criterio1, orden1, criterio2, orden2, criterio3, orden3, encabezado, personalizar, mayúsc_minúsc
xlDialogSplit	en_columna, en_fila
xlDialogStandardFont	nombre, tamaño, negrita, cursiva, subrayado, tachado, color, hueca, sombra
xlDialogStandardWidth	núm_estándar
xlDialogStyle	negrita, cursiva
xlDialogSubscribeTo	archivo,formato
xlDialogSubtotalCreate	cada_cambio_en, núm_función, total, reemplazar, salto_de_pág, totales_debajo
xlDialogSummaryInfo	título, asunto, autor, palabras_clave, comentario
xlDialogTable	ref_fila,ref_columna
xlDialogTabOrder
xlDialogTextToColumns	destino,tipo_de_datos,calificador_de_texto,separa_consecu,tab,pto_y_coma,coma,espacio,otro,otro_caráct,campo_info
xlDialogUnhide	texto_ventana
xlDialogUpdateLink	ruta_vínculo, tipo_de_vínculo
xlDialogVbaInsertFile	nombre_archivo_texto
xlDialogVbaMakeAddin	nombre_archivo_texto
xlDialogVbaProcedureDefinition
xlDialogView3d	elevación, perspectiva, giro, ejes, alto_%, escala_automática
xlDialogWindowMove	pos_x,pos_y,ventana_texto
xlDialogWindowSize	ancho,alto,ventana_texto
xlDialogWorkbookAdd	nombre_matriz, libro_destino, núm_posición
xlDialogWorkbookCopy	nombre_matriz, libro_destino, núm_posición
xlDialogWorkbookInsert	núm-tipo
xlDialogWorkbookMove	nombre_matriz, libro_destino, núm_posición
xlDialogWorkbookName	nombre_antiguo,nombre_nuevo
xlDialogWorkbookNew
xlDialogWorkbookOptions	nombre_de_hoja,encuadernar,nombre_nuevo
xlDialogWorkbookProtect	estructura, ventanas, contraseña
xlDialogWorkbookTabSplit	razón
xlDialogWorkbookUnhide	nombre_hoja
xlDialogWorkgroup	nombre_matriz
xlDialogWorkspace	fijo,decimales,f1c1,desplazam,estado,fórmulas,tecla_menú,remotas,entrar,subrayados,herramientas,coment,teclas_movim,acción_tecla_menú,arrastrar_colocar,mostrar_info
xlDialogZoom	ampliación


Propiedad LinkSource de Microsoft Excel

En Microsoft Excel, el origen es un nombre del libro.


Método Add de Microsoft Excel

En Microsoft Excel, el argumento linkSource especifica un nombre del libro.


Ejemplo del método Add de Microsoft Excel

En este ejemplo se agrega una propiedad estática personalizada denominada "Completa".

With ActiveWorkbook.CustomDocumentProperties

.Add name := "Completa", linkToContent := False, _

type := offPropertyTypeBoolean, value := False

End With

En este ejemplo se agrega una propiedad vinculada con el nombre "Total_general".

With ActiveWorkbook.CustomDocumentProperties

.Add name := "Ventas totales", linkToContent := True, _

linkSource := "Total_general"

End With


Ejemplo de la propiedad Count de Microsoft Excel

En este ejemplo se muestra el número de propiedades del documento personalizadas del libro activo.

MsgBox ActiveWorkbook.CustomDocumentProperties.Count


Ejemplo del método Delete de Microsoft Excel

En este ejemplo se elimina la propiedad del documento personalizada “Ventas totales” del libro activo.

ActiveWorkbook.CustomDocumentProperties("Ventas totales").Delete


Ejemplo del método Item de Microsoft Excel

En este ejemplo se crea una lista que contiene los nombres de todas las propiedades del documento incorporadas en el libro activo.

Set wk = Worksheets(1)

Set builtinProps = ActiveWorkbook.BuiltinDocumentProperties

For i = 1 To builtinProps.Count

wk.Cells(i, 1).Value = builtinProps.Item(i).Name

Next


Ejemplo de la propiedad LinkToContent de Microsoft Excel

En este ejemplo se muestra el estado vinculado de cada propiedad de documento personalizada del libro activo en forma de lista de la hoja de cálculo uno.

rw = 1

With Worksheets(1)

For Each pro In ActiveWorkbook.CustomDocumentProperties

.Cells(rw, 1) = pro.Name

.Cells(rw, 2) = pro.LinkToContent

If pro.LinkToContent Then

.Cells(rw, 3) = pro.LinkSource

End If

rw = rw + 1

Next

End With


Ejemplo de la propiedad LinkSource de Microsoft Excel

En este ejemplo se vincula la propiedad de documento personalizada denominada "VentasTotales" al rango "CifrasVentas" del libro activo.

ActiveWorkbook.CustomDocumentProperties _

.Item("VentasTotales").LinkSource = "CifrasVentas"


Ejemplo de la propiedad Name de Microsoft Excel

En este ejemplo se muestra el nombre de la propiedad de documento personalizada uno del libro activo.

MsgBox ActiveWorkbook.CustomDocumentProperties(1).Name


Ejemplo de la propiedad Type de Microsoft Excel

En este ejemplo se muestra el tipo de la primera propiedad personalizada del documento del libro activo.

MsgBox ActiveWorkbook.CustomDocumentProperties(1).Type


Ejemplo de la propiedad Value de Microsoft Excel

En este ejemplo se muestra el valor de la primera propiedad personalizada del documento del libro activo.

MsgBox ActiveWorkbook.CustomDocumentProperties(1).Value


Ejemplo de la función Array de Microsoft Excel

Este ejemplo llena el rango A1:C5 de Hoja1, Hoja5 y Hoja7 con el contenido del mismo rango de Hoja1.

x = Array("Hoja1", "Hoja5", "Hoja7")

Sheets(x).FillAcrossSheets _

Worksheets("Hoja1").Range("A1:C5")

Este ejemplo consolida los datos de la Hoja2 y la Hoja3 en la Hoja1, usando la función SUMA.

Worksheets("Hoja1").Range("A1").Consolidate _

Sources:=Array("Hoja2!R1C1:R37C6", "Hoja3!R1C1:R37C6"), _

Function:=xlSum

Este ejemplo agrega una matriz de cadenas como una lista personalizada.

Application.AddCustomList Array("piñones", "catalinas", _

"aparatos", "instrumentos")

Este ejemplo oculta el Gráfico1, el Gráfico3 y el Gráfico5. Tenga en cuenta que, en este ejemplo, el método Charts devuelve un objeto Sheets en lugar de un objeto Charts.

Charts(Array("Gráfico1", "Gráfico3", "Gráfico5")).Visible = False

Este ejemplo establece las entradas del cuadro de lista uno del Diálogo1.

DialogSheets("Diálogo1").ListBoxes(1).List = _

Array("piñones", "aparatos", "catalinas", "instrumentos")

Este ejemplo crea un grupo que incluye los objetos de dibujo uno, tres y cinco de la Hoja1.

Set miGrupo = Worksheets("Hoja1").DrawingObjects(Array(1, 3, 5)).Group

Worksheets("Hoja1").Activate

miGrupo.Select


Ejemplo de la función Chr de Microsoft Excel

Este ejemplo rellena el cuadro de lista uno del Diálogo1 con letras desde A hasta Z.

For i = 65 To 90

DialogSheets("Diálogo1").ListBoxes(1).AddItem Text:=Chr(i)

Next i

Este ejemplo crea un salto de línea en un cuadro de mensaje empleando la función Chr.

msgText = "La carpeta actual es:" & Chr(13) & CurDir()

MsgBox msgText


Ejemplo de la función CVErr de Microsoft Excel

Este ejemplo inserta los siete valores de error en las celdas A1:A7 de la Hoja1.

myArray = Array(xlErrDiv0, xlErrNA, xlErrName, xlErrNull, _

xlErrNum, xlErrRef, xlErrValue)

For i = 1 To 7

Worksheets("Hoja1").Cells(i, 1).Value = CVErr(myArray(i - 1))

Next i

Este ejemplo muestra un mensaje si la celda activa de la Hoja1 contiene un valor de error de celda. Puede usar este ejemplo como base para un controlador de valores de error de celda.

Worksheets("Hoja1").Activate

If IsError(ActiveCell.Value) Then

errval = ActiveCell.Value

Select Case errval

Case CVErr(xlErrDiv0)

MsgBox "Error #¡DIV/0!"

Case CVErr(xlErrNA)

MsgBox "Error #N/A"

Case CVErr(xlErrName)

MsgBox "Error #¿NOMBRE?"

Case CVErr(xlErrNull)

MsgBox "Error #¡NULO!"

Case CVErr(xlErrNum)

MsgBox "Error #¡NÚM!"

Case CVErr(xlErrRef)

MsgBox "Error #¡REF!"

Case CVErr(xlErrValue)

MsgBox "Error #¡VALOR!"

Case Else

MsgBox "Esto no debe ocurrir jamás"

End Select

End If


Ejemplo de la instrucción Do...Loop de Microsoft Excel

Este ejemplo ordena los datos de la primera columna de la Hoja1 y, a continuación, elimina las filas que contienen datos duplicados.

Worksheets("Hoja1").Range("A1").Sort _

key1:=Worksheets("Hoja1").Range("A1")

Set celdaActual = Worksheets("Hoja1").Range("A1")

Do While Not IsEmpty(celdaActual)

Set celdaSiguiente = celdaActual.Offset(1, 0)

If celdaSiguiente.Value = celdaActual.Value Then

celdaActual.EntireRow.Delete

End If

Set celdaActual = celdaSiguiente

Loop


Ejemplo de la instrucción For Each...Next de Microsoft Excel

Este ejemplo ejecuta un bucle en las celdas A1:D10 de la Hoja1. Si una de las celdas tiene un valor menor que 0.001, el código sustituirá el valor por 0 (cero).

For Each c in Worksheets("Hoja1").Range("A1:D10")

If c.Value < 0.001 Then

c.Value = 0

End If

Next c

Este ejemplo ejecuta un bucle en el rango con nombre "RangoPrueba" y después muestra el número de celdas vacías del rango.

numBlanks = 0

For Each c In Range("RangoPrueba")

If c.Value = "" Then

numBlanks = numBlanks + 1

End If

Next c

MsgBox "Hay " & numBlanks & " celdas vacías en este rango."

Este ejemplo cierra y guarda todos los libros salvo aquel en el que se ejecuta el ejemplo.

For Each lb In Workbooks

If lb.Name <> ThisWorkbook.Name Then

lb.Close savechanges:=True

End If

Next lb

Este ejemplo elimina todas las hojas de cálculo del libro activo sin mostrar el cuadro de diálogo de confirmación. Debe haber al menos otra hoja visible en el libro.

Application.DisplayAlerts = False

For Each lb In Worksheets

lb.Delete

Next lb

Application.DisplayAlerts = True

Este ejemplo crea una hoja de cálculo nueva y, a continuación, inserta en ella una lista de todos los nombres del libro activo, incluidas sus fórmulas, en la notación de estilo A1 y el lenguaje del usuario.

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.NameLocal

nuevaHoja.Cells(I, 2).Value = "'" & nm.RefersToLocal

i = i + 1

Next nm


Ejemplo de la instrucción For...Next de Microsoft Excel

Este ejemplo muestra el número de columnas de la selección de la Hoja1. El código también comprueba si existe una selección de varias áreas; en ese caso, ejecutará un bucle en las áreas de la selección.

Worksheets("Hoja1").Activate

númÁreas = Selection.Areas.Count

If númÁreas <= 1 Then

MsgBox "La selección contiene " & _

Selection.Columns.Count & " columnas."

Else

For i = 1 To númÁreas

MsgBox "Área " & i & " de la selección contiene " & _

Selection.Areas(i).Columns.Count & " columnas."

Next i

End If

Este ejemplo crea una nueva hoja de cálculo y, a continuación, inserta una lista de los nombres de hoja del libro activo en la primera columna.

Set nuevaHoja = Worksheets.Add(Type:=xlWorksheet)

For i = 1 To Sheets.Count

nuevaHoja.Cells(i, 1).Value = Sheets(i).Name

Next i

Este ejemplo selecciona un elemento de cada dos en el cuadro de lista uno de la Hoja1.

Dim items() As Boolean

Set cuadrol = Worksheets("Hoja1").ListBoxes(1)

ReDim items(1 To cuadrol.ListCount)

For i = 1 To cuadrol.ListCount

If i Mod 2 = 1 Then

items(i) = True

Else

items(i) = False

End If

Next

cuadrol.MultiSelect = xlExtended

cuadrol.Selected = items


Ejemplo de la instrucción If...Then...Else de Microsoft Excel

Este ejemplo ejecuta un bucle en las celdas A1:D10 de la Hoja1. Si una de las celdas tiene un valor menor que 0.001, el código sustituirá el valor por 0 (cero).

For Each c in Worksheets("Hoja1").Range("A1:D10")

If c.Value < 0.001 Then

c.Value = 0

End If

Next c

Este ejemplo ejecuta un bucle en el rango con nombre "RangoPrueba" y después muestra el número de celdas vacías del rango.

numBlanks = 0

For Each c In Range("RangoPrueba")

If c.Value = "" Then

numBlanks = numBlanks + 1

End If

Next c

MsgBox "Hay " & numBlanks & " celdas vacías en este rango."

Este ejemplo establece la fuente estándar como Geneva (en Macintosh) Arial (en Windows).

If Application.OperatingSystem Like "*Macintosh*" Then

Application.StandardFont = "Geneva"

Else

Application.StandardFont = "Arial"

End If


Ejemplo del operador Is de Microsoft Excel

Este ejemplo selecciona la intersección de dos rangos con nombre, rg1 y rg2, en la Hoja1. Si no hay intersección entre los rangos, el ejemplo mostrará un mensaje.

Worksheets("Hoja1").Activate

Set intersec = Application.Intersect(Range("rg1"), Range("rg2"))

If intersec Is Nothing Then

MsgBox "No hay intersección entre los rangos"

Else

intersec.Select

End If

Este ejemplo busca la primera aparición de la palabra "Toledo" en la columna B de la Hoja1 y, a continuación, muestra la dirección de la celda que contiene la palabra. Si no se encuentra la palabra, el ejemplo mostrará un mensaje.

Set celdaHallada = Worksheets("Hoja1").Columns("B").Find("Toledo")

If celdaHallada Is Nothing Then

MsgBox "No se ha encontrado la palabra"

Else

MsgBox "La palabra se ha encontrado en la celda " & celdaHallada.Address

End If


Ejemplo de la función IsEmpty de Microsoft Excel

Este ejemplo ordena los datos de la primera columna de la Hoja1 y, a continuación, elimina las filas que contienen datos duplicados.

Worksheets("Hoja1").Range("A1").Sort _

key1:=Worksheets("Hoja1").Range("A1")

Set celdaActual = Worksheets("Hoja1").Range("A1")

Do While Not IsEmpty(celdaActual)

Set celdaSiguiente = celdaActual.Offset(1, 0)

If celdaSiguiente.Value = celdaActual.Value Then

celdaActual.EntireRow.Delete

End If

Set celdaActual = celdaSiguiente

Loop


Ejemplo de la función IsNull de Microsoft Excel

Este ejemplo crea una lista de funciones registradas, situándolas en una fila distinta de la Hoja1. La columna A contiene la ruta completa y el nombre de archivo de la DLL o el recurso de código, la columna B contiene el nombre de la función y, la columna C, el código de tipo de datos del argumento.

laMatriz = Application.RegisteredFunctions

If IsNull(laMatriz) Then

MsgBox "No hay funciones registradas"

Else

For i = LBound(laMatriz) To UBound(laMatriz)

For j = 1 To 3

Worksheets("Hoja1").Cells(i, j).Formula = laMatriz(i, j)

Next j

Next i

End If


Ejemplo de la función LBound de Microsoft Excel

Este ejemplo escribe los elementos de la primera lista personalizada en la columna uno de la Hoja1.

listArray = Application.GetCustomListContents(1)

For i = LBound(listArray, 1) To UBound(listArray, 1)

Worksheets("hoja1").Cells(i, 1).Value = listArray(i)

Next i

En este ejemplo se supone que ha usado un origen de datos externo para crear una tabla dinámica en la Hoja1 del libro activo. El ejemplo inserta la cadena de conexión y la cadena de consulta SQL en una nueva hoja de cálculo.

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

sdArray = Worksheets("Hoja1").UsedRange.PivotTable.SourceData

For i = LBound(sdArray) To UBound(sdArray)

nuevaHoja.Cells(i, 1) = sdArray(i)

Next i


Ejemplo del operador Like de Microsoft Excel

Este ejemplo elimina todos los nombres definidos que contienen "temp". Debe incluirse el enunciado Option Compare Text en la parte superior de los módulos que contengan este ejemplo.

For Each nm In ActiveWorkbook.Names

If nm.Name Like "*temp*" Then

nm.Delete

End If

Next nm

Este ejemplo agrega una punta de flecha a todas las formas de la Hoja1 que contengan la palabra "Línea" en su nombre.

For Each d In Worksheets("Hoja1").DrawingObjects

If d.Name Like "*Línea*" Then

d.ArrowHeadLength = xlLong

d.ArrowHeadStyle = xlOpen

d.ArrowHeadWidth = xlNarrow

End If

Next


Ejemplo del operador Mod de Microsoft Excel

Este ejemplo establece en 4 puntos el ancho de las columnas alternas de la Hoja1.

For Each col In Worksheets("Hoja1").Columns

If col.Column Mod 2 = 0 Then

col.ColumnWidth = 4

End If

Next col

Este ejemplo establece en 4 puntos el alto de las filas alternas de la Hoja1.

For Each fl In Worksheets("Hoja1").Rows

If fl.Row Mod 2 = 0 Then

fl.RowHeight = 4

End If

Next fl

Este ejemplo selecciona un elemento de cada dos en el cuadro de lista uno de la Hoja1.

Dim items() As Boolean

Set cuadrol = Worksheets("Hoja1").ListBoxes(1)

ReDim items(1 To cuadrol.ListCount)

For i = 1 To cuadrol.ListCount

If i Mod 2 = 1 Then

items(i) = True

Else

items(i) = False

End If

Next

cuadrol.MultiSelect = xlExtended

cuadrol.Selected = items


Ejemplo de la función RGB de Microsoft Excel

Este ejemplo establece en rojo el color de las líneas de división en la ventana activa del Libro1.xls.

Workbooks("LIBRO1.XLS").Worksheets("Hoja1").Activate

ActiveWindow.GridlineColor = RGB(255,0,0)

Este ejemplo establece en verde el color de los rótulos de las marcas de graduación en el eje de valores del Gráfico1.

Charts("Gráfico1").Axes(xlValue).TickLabels.Font.Color = RGB(0, 255, 0)

Este ejemplo establece los colores de fondo y primer plano del marcador del segundo punto de la serie uno del Gráfico1 como verde y rojo, respectivamente.

With Charts("Gráfico1").SeriesCollection(1).Points(2)

.MarkerBackgroundColor = RGB(0,255,0)	' verde

.MarkerForegroundColor = RGB(255,0,0)	' rojo

End With

Este ejemplo establece en rojo el color del diseño interior del rectángulo uno de la Hoja1.

With Worksheets("Hoja1").Rectangles(1).Interior

.Pattern = xlGrid

.PatternColor = RGB(255,0,0)

End With


Ejemplo de la instrucción Select Case de Microsoft Excel

Este ejemplo muestra el nombre del sistema de correo instalado en el equipo.

Select Case Application.MailSystem

Case Is = xlMAPI

MsgBox "El sistema de correo es Microsoft Mail"

Case Is = xlPowerTalk

MsgBox "El sistema de correo es PowerTalk"

Case Is = xlNoMailSystem

MsgBox "No hay ningún sistema de correo instalado"

End Select

Este ejemplo muestra un cuadro de mensaje que describe la ubicación de la celda activa en la tabla dinámica.

Worksheets("Hoja1").Activate

Select Case ActiveCell.LocationInTable

Case Is = xlRowHeader

MsgBox "La celda activa forma parte de un encabezado de fila"

Case Is = xlColumnHeader

MsgBox "La celda activa forma parte de un encabezado de columna"

Case Is = xlPageHeader

MsgBox "La celda activa forma parte de un encabezado de página"

Case Is = xlDataHeader

MsgBox "La celda activa forma parte de un encabezado de datos"

Case Is = xlRowItem

MsgBox "La celda activa forma parte de un elemento de fila"

Case Is = xlColumnItem

MsgBox "La celda activa forma parte de un elemento de columna"

Case Is = xlPageItem

MsgBox "La celda activa forma parte de un elemento de página"

Case Is = xlDataItem

MsgBox "La celda activa forma parte de un elemento de datos"

Case Is = xlTableBody

MsgBox "La celda activa forma parte del cuerpo de la tabla"

End Select

Este ejemplo muestra un mensaje si la celda activa de la Hoja1 contiene un valor de error de celda. Puede usar este ejemplo como base para un controlador de valores de error de celda.

Worksheets("Hoja1").Activate

If IsError(ActiveCell.Value) Then

errval = ActiveCell.Value

Select Case errval

Case CVErr(xlErrDiv0)

MsgBox "Error #¡DIV/0!"

Case CVErr(xlErrNA)

MsgBox "Error #N/A"

Case CVErr(xlErrName)

MsgBox "Error #¿NOMBRE?"

Case CVErr(xlErrNull)

MsgBox "Error #¡NULO!"

Case CVErr(xlErrNum)

MsgBox "Error #¡NÚM!"

Case CVErr(xlErrRef)

MsgBox "Error #¡REF!"

Case CVErr(xlErrValue)

MsgBox "Error #¡VALOR!"

Case Else

MsgBox "Esto no debe ocurrir jamás"

End Select

End If


Ejemplo de la instrucción Set de Microsoft Excel

Este ejemplo agrega una nueva hoja al libro activo y, a continuación, establece el nombre de la hoja.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Name = "Presupuesto 1995"

Este ejemplo crea una hoja de cálculo nueva y, a continuación, inserta en ella una lista de todos los nombres del libro activo, incluidas sus fórmulas, en la notación de estilo A1 y el lenguaje del usuario.

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

i = 1

For Each nm In ActiveWorkbook.Names

nuevaHoja.Cells(i, 1).Value = nm.NameLocal

nuevaHoja.Cells(I, 2).Value = "'" & nm.RefersToLocal

i = i + 1

Next


Ejemplo de la instrucción Static de Microsoft Excel

Este ejemplo usa la función de hoja de cálculo Pago para calcular un pago de un préstamo hipotecario. Tenga en cuenta que el ejemplo usa el método InputBox en lugar de la función InputBox, para que el método pueda llevar a cabo una comprobación de tipo. El enunciado Static hace que Visual Basic conserve los valores de las tres variables, que se mostrarán como valores predeterminados la próxima vez que se ejecute el ejemplo.

Static impPrést

Static intPrést

Static plazPrést

impPrést = Application.InputBox _

(Prompt:="Importe del préstamo (por ejemplo, 100.000)", _

Default:=impPrést, Type:=1)

intPrést = Application.InputBox _

(Prompt:="Tipo de interés anual (por ejemplo, 8,75)", _

Default:=intPrést, Type:=1)

plazPrést = Application.InputBox _

(Prompt:="Plazos en años (por ejemplo 30)", _

Default:=plazPrést, Type:=1)

pago = Application.Pmt(intPrést / 1200, plazPrést * 12, impPrést)

MsgBox "El pago mensual es " & Format(pago, "Currency")


Ejemplo de la función TypeName de Microsoft Excel

Este ejemplo muestra el tipo de objeto de Visual Basic de la selección. Puede ejecutar este ejemplo con las celdas seleccionadas, con una sola elipse seleccionada o con varios objetos gráficos seleccionados.

Worksheets("Hoja1").Activate

MsgBox "El tipo de objeto de la selección es " & TypeName(Selection)


Ejemplo de la función UBound de Microsoft Excel

Este ejemplo escribe los elementos de la primera lista personalizada en la columna uno de la Hoja1.

listArray = Application.GetCustomListContents(1)

For i = LBound(listArray, 1) To UBound(listArray, 1)

Worksheets("hoja1").Cells(i, 1).Value = listArray(i)

Next i

En este ejemplo se supone que ha empleado un origen de datos externo para crear una tabla dinámica en la Hoja1. El ejemplo inserta la cadena de conexión y la cadena de consulta SQL en una nueva hoja de cálculo.

Set nuevaHoja = ActiveWorkbook.Worksheets.Add

sdArray = Worksheets("Hoja1").UsedRange.PivotTable.SourceData

For i = LBound(sdArray) To UBound(sdArray)

nuevaHoja.Cells(i, 1) = sdArray(i)

Next i


Ejemplo de la instrucción With de Microsoft Excel

Este ejemplo crea una tabla de multiplicación con formato en las celdas A1:K11 de la Hoja1.

Set rangoTablaDatos = Worksheets("Hoja1").Range("A1:K11")

Set celdaIntroFila = Worksheets("Hoja1").Range("A12")

Set celdaIntroCol = Worksheets("Hoja1").Range("A13")

Worksheets("Hoja1").Range("A1").Formula = "=A12*A13"

For i = 2 To 11

Worksheets("Hoja1").Cells(i, 1) = i - 1

Worksheets("Hoja1").Cells(1, i) = i - 1

Next i

rangoTablaDatos.Table celdaIntroFila, celdaIntroCol

With Worksheets("Hoja1").Range("A1").CurrentRegion

.Rows(1).Font.Bold = True

.Columns(1).Font.Bold = True

.Columns.AutoFit

End With


Método Add (conjunto AddIns)

Agrega un archivo nuevo de macros automáticas a la lista de macros automáticas. Devuelve un objeto AddIn.

Sintaxis

expresión.Add(Filename, CopyFile)

expresión   Requerida. Una expresión que devuelve un objeto AddIns.

Filename   String requerida. El nombre del archivo que contiene la macro automática que se agregará a la lista del administrador de macros automáticas.

CopyFile   Variant opcional. Se pasa por alto si el archivo de macro automática está en un disco duro. True para que se copie la macro automática en el disco duro, si se encuentra en un medio extraíble (disco o CD-ROM). False para que la macro automática permanezca en el medio extraíble. Si este argumento se omite, Microsoft Excel mostrará un cuadro de diálogo y pedirá que elija una opción.

Comentarios

Este método no instala la nueva macro automática. Para ello, establezca la propiedad Installed.


Ejemplo del método Add

Este ejemplo inserta la macro automática Mimacro.xla desde la unidad A. Cuando ejecute el ejemplo, Microsoft Excel copiará el archivo A:\Mimacro.xla en la carpeta Library del disco duro y agregará el título de la macro automática a la lista del cuadro de diálogo Macros automáticas.

Set miMacroAutomática = AddIns.Add(Filename:="A:\MIMACRO.XLA", _

CopyFile:=True)

MsgBox miMacroAutomática.Title & " se ha agregado a la lista"

En Macintosh, este ejemplo copia la macro automática desde el disco con la etiqueta "Disco de macros automáticas" a la carpeta Biblioteca de macros.

Set miMacroAutomática = AddIns.Add(Filename:="Disco de macros automáticas:Mi macro automática", _

CopyFile:=True)

MsgBox miMacroAutomática.Title & " se ha agregado a la lista"


Método Add (conjunto Charts)

Crea una hoja de gráficos nueva. Devuelve un objeto Chart.

Sintaxis

expresión.Add(Before, After, Count)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Before   Variant opcional. Un objeto que especifica la hoja antes de la cual se agregará la hoja nueva.

After   Variant opcional. Un objeto que especifica la hoja después de la cual se agregará la hoja nueva.

Count   Variant opcional. El número de hojas de cálculo que se agregarán. El valor predeterminado es uno.

Comentarios

Si se omiten tanto Before como After, el gráfico nuevo se insertará antes de la hoja activa.


Ejemplo del método Add

Este ejemplo crea una hoja de gráficos vacía y la inserta antes de la hoja activa.

ActiveWorkbook.Charts.Add Before:=Worksheets(Worksheets.Count)


Método Add (conjunto Names)

Define un nombre nuevo. Devuelve un objeto Name.

Sintaxis

expresión.Add(Name, RefersTo, Visible, MacroType, ShortcutKey, Category, NameLocal, RefersToLocal, CategoryLocal, RefersToR1C1, RefersToR1C1Local)

expresión   Requerida. Una expresión que devuelve un objeto Names.

Name   Variant opcional. Requerida si NameLocal no se especifica. El texto que se usa como nombre (en el lenguaje de la macro). Los nombres no pueden incluir espacios y no se pueden parecer a referencias de celdas.

RefersTo   Variant opcional. Requerida salvo que se especifique uno de los demás argumentos RefersTo. Describe el elemento al cual hace referencia el nombre (en el lenguaje de la macro, usando el estilo de anotación A1).

Visible   Variant opcional. True para que se defina el nombre normalmente. False para que se defina el nombre como oculto (es decir, que no aparezca en uno de los cuadros de diálogo Definir nombre, Pegar nombre o Ir a). El valor predeterminado es True.

MacroType   Variant opcional. El tipo de macro, según se muestra en la siguiente tabla.

Valor	Significado
1	Función definida por el usuario (procedimiento Function)
2	Macro (también conocida como Sub)
3 u omitido	Ninguno (es decir, el nombre no hacer referencia a una función definida por el usuario o a una macro)
ShortcutKey   Variant opcional. La tecla de método abreviado de la macro. Debe ser una sola letra, por ejemplo, "z" o "Z". Se aplica sólo a macros de comando.

Category   Variant opcional. La categoría de la macro o la función si MacroType es 1 o 2. La categoría se usa en el Asistente para funciones. Puede hacer referencia a las categorías ya existentes por número (comenzando en 1) o por nombre (en el lenguaje de la macro). Microsoft Excel creará una nueva categoría si la especificada no existe.

NameLocal   Variant opcional. Requerida si Name no se especifica. El texto que se usa como nombre (en el lenguaje del usuario). Los nombres no pueden incluir espacios y no se pueden parecer a referencias de celdas.

RefersToLocal   Variant opcional. Requerida salvo que se especifique uno de los demás argumentos RefersTo. Describe el elemento al cual hace referencia el nombre (en el lenguaje del usuario, usando el estilo de anotación A1).

CategoryLocal   Variant opcional. Requerida si Category no se especifica. Texto que identifica a la categoría de una función personalizada en el lenguaje del usuario.

RefersToR1C1   Variant opcional. Requerida salvo que se especifique uno de los demás argumentos RefersTo. Describe el elemento al cual hace referencia el nombre (en el lenguaje de la macro, usando el estilo de anotación F1C1).

RefersToR1C1Local   Variant opcional. Requerida salvo que se especifique uno de los demás argumentos RefersTo. Describe el elemento al cual hace referencia el nombre (en el lenguaje del usuario, usando el estilo de anotación F1C1).


Ejemplo del método Add

Este ejemplo define un nombre nuevo para el rango A1:D3 de la Hoja1 del libro activo.

ActiveWorkbook.Names.Add _

Name:="rangoTemp", _

RefersTo:="=Hoja1!$A$1:$D$3"


Método Add (conjunto Scenarios)

Crea un nuevo escenario y lo agrega a la lista de escenarios disponibles en la hoja actual. Devuelve un objeto Scenario.

Sintaxis

expresión.Add(Name, ChangingCells, Values, Comment, Locked, Hidden)

expresión   Requerida. Una expresión que devuelve un objeto Scenarios.

Name   String requerida. El nombre del escenario.

ChangingCells   Variant requerida. Un objeto Range que hace referencia al conjunto de celdas cambiantes del escenario.

Values   Variant opcional. Una matriz que contiene los valores de escenario de las celdas de ChangingCells. Si este argumento se omite, se supondrá que los valores de escenario son los valores actuales de las celdas de ChangingCells.

Comment   Variant opcional. Una cadena que especifica un texto de comentario para el escenario. Cuando se agrega un nuevo escenario, el nombre del autor y la fecha se agregan automáticamente al principio del texto del comentario.

Locked   Variant opcional. True para que se bloquee el escenario a fin de impedir cambios. El valor predeterminado es True.

Hidden   Variant opcional. True para que se oculte el escenario. El valor predeterminado es False.

Comentarios

Un nombre de escenario debe ser único; Microsoft Excel generará un error si intenta crear un escenario con un nombre que ya está en uso.


Ejemplo del método Add

Este ejemplo agrega un escenario nuevo a la Hoja1.

Worksheets("Hoja1").Scenarios.Add Name:="Mejor caso", _

ChangingCells:=Worksheets("Hoja1").Range("A1:A4"), _

Values:=Array(23, 5, 6, 21), _

Comment:="Resultado más favorable."


Método Add (conjunto Sheets)

Crea una hoja de cálculo, un gráfico o una macro.

Sintaxis

expresión.Add(Before, After, Count, Type)

expresión   Requerida. Una expresión que devuelve un objeto Sheets.

Before   Variant opcional. Un objeto que especifica la hoja antes de la cual se agregará la hoja nueva.

After   Variant opcional. Un objeto que especifica la hoja después de la cual se agregará la hoja nueva.

Count   Variant opcional. El número de hojas de cálculo que se agregarán. El valor predeterminado es uno.

Type   Variant opcional. Especifica el tipo de la hoja. Puede ser una de las siguientes constantes XlSheetType: xlWorksheet, xlChart, xlExcel4MacroSheet o xlExcel4IntlMacroSheet. El valor predeterminado es xlWorksheet.

Comentarios

Si se omiten tanto Before como After, la hoja nueva se insertará antes de la hoja activa.


Ejemplo del método Add

Este ejemplo inserta una hoja de cálculo nueva antes de la última hoja de cálculo del libro activo.

ActiveWorkbook.Sheets.Add Before:=Worksheets(Worksheets.Count)


Método Add (conjunto Styles)

Crea un nuevo estilo y lo agrega a la lista de estilos disponibles en el libro activo. Devuelve un objeto Style.

Sintaxis

expresión.Add(Name, BasedOn)

expresión   Requerida. Una expresión que devuelve un objeto Styles.

Name   String requerida. El nombre del nuevo estilo.

BasedOn   Variant opcional. Un objeto Range que hace referencia a una celda empleada como la base para el nuevo estilo. Si este argumento se omite, el nuevo estilo estará basado en el estilo Normal.

Comentarios

Si ya existe un estilo con el nombre especificado, el método definirá de nuevo el estilo ya existente basándose en la celda especificada en BasedOn. El siguiente ejemplo redefine el estilo Normal basándose en la celda activa.

ActiveWorkbook.Styles.Add Name := "Normal", _

BasedOn := ActiveCell


Ejemplo del método Add

Este ejemplo define un estilo nuevo basado en la celda A1 de la Hoja1.

Worksheets("Hoja1").Activate

ActiveWorkbook.Styles.Add Name:="miNuevoEstilo", _

BasedOn:=ActiveSheet.Range("A1")

Este ejemplo define un estilo nuevo que sólo incluye las propiedades de fuente.

With ActiveWorkbook.Styles.Add(Name:="elNuevoEstilo")

.IncludeNumber = False

.IncludeFont = True

.IncludeAlignment = False

.IncludeBorder = False

.IncludePatterns = False

.IncludeProtection = False

.Font.Name = "Arial"

.Font.Size = 18

End With


Método Add (conjunto Trendlines)

Crea una nueva línea de tendencia. Devuelve un objeto Trendline.

Sintaxis

expresión.Add(Type, Order, Period, Forward, Backward, Intercept, DisplayEquation, DisplayRSquared, Name)

expresión   Requerida. Una expresión que devuelve un objeto Trendlines.

Type   Variant opcional. El tipo de la línea de tendencia. Puede ser una de las siguientes constantes XlTrendlineType: xlLinear, xlLogarithmic, xlExponential, xlPolynomial, xlMovingAvg o xlPower. El valor predeterminado es xlLinear.

Order   Variant opcional. Requerida si Type es xlPolynomial. El orden de la línea de tendencia. Debe ser un entero comprendido entre 2 y 6, ambos inclusive.

Period   Variant opcional. Requerida si Type es xlMovingAvg. El período de la línea de tendencia. Debe ser un entero mayor que 1 y menor que el número de puntos de datos de la serie a la que se agrega la línea de tendencia.

Forward   Variant opcional. El número de períodos (o unidades en un gráfico de dispersión) que la línea de tendencia se extiende hacia delante.

Backward   Variant opcional. El número de períodos (o unidades en un gráfico de dispersión) que la línea de tendencia se extiende hacia atrás.

Intercept   Variant opcional. La intersección de la línea de tendencia. Si este argumento se omite, la regresión establecerá automáticamente la intersección.

DisplayEquation   Variant opcional. True para que la ecuación de la línea de tendencia se muestre en el gráfico (en el mismo rótulo de datos que el valor de R cuadrado). El valor predeterminado es False.

DisplayRSquared   Variant opcional. True para que el valor de R cuadrado de la línea de tendencia se muestre en el gráfico (en el mismo rótulo de datos que la ecuación). El valor predeterminado es False.

Name   Variant opcional. El nombre de la línea de tendencia en forma de texto. Si este argumento se omite, Microsoft Excel generará un nombre.


Ejemplo del método Add

Este ejemplo crea una línea de tendencia lineal nueva en el Gráfico1.

ActiveWorkbook.Charts("Gráfico1").SeriesCollection(1).Trendlines.Add


Método Add (conjunto Workbooks)

Crea un libro nuevo. El nuevo libro se convertirá en el libro activo. Devuelve un objeto Workbook.

Sintaxis

expresión.Add(Template)

expresión   Requerida. Una expresión que devuelve un objeto Workbooks.

Template   Variant opcional. Determina cómo se crea el nuevo libro. Si este argumento es una cadena que especifica el nombre de un archivo de Microsoft Excel ya existente, el nuevo libro se creará con el archivo especificado como plantilla. Si el argumento es una constante, el nuevo libro contendrá una sola hoja del tipo especificado. Puede ser una de las siguientes constantes XlWBATemplate: xlWBATChart, xlWBATExcel4IntlMacroSheet, xlWBATExcel4MacroSheet o xlWBATWorksheet. Si este argumento se omite, Microsoft Excel creará un libro nuevo con varias hojas en blanco (la propiedad SheetsInNewWorkbook establece el número de hojas).

Comentarios

Si el argumento Template especifica un archivo, el nombre de éste puede incluir una ruta de acceso.


Ejemplo del método Add

Este ejemplo crea un libro nuevo.

Workbooks.Add


Método Add (conjunto Worksheets)

Crea una hoja de cálculo nueva. La nueva hoja de cálculo se convertirá en la hoja activa. Devuelve un objeto Worksheet.

Sintaxis

expresión.Add(Before, After, Count, Type)

expresión   Requerida. Una expresión que devuelve un objeto Worksheets.

Before   Variant opcional. Un objeto que especifica la hoja antes de la cual se agregará la hoja nueva.

After   Variant opcional. Un objeto que especifica la hoja después de la cual se agregará la hoja nueva.

Count   Variant opcional. El número de hojas de cálculo que se agregarán. El valor predeterminado es uno.

Type   Variant opcional. El tipo de la hoja. Puede ser una de las siguientes constantes XlSheetType: xlWorksheet, xlExcel4MacroSheet o xlExcel4IntlMacroSheet. El valor predeterminado es xlWorksheet.

Comentarios

Si se omiten tanto Before como After, la hoja nueva se insertará antes de la hoja activa.


Ejemplo del método Add

Este ejemplo crea una hoja de cálculo nueva y la inserta antes de la hoja activa.

ActiveWorkbook.Worksheets.Add

Este ejemplo agrega una hoja de cálculo nueva después de la última hoja de cálculo del libro activo.

Worksheets.Add.Move after:=Worksheets(Worksheets.Count)


Método Add (conjunto SeriesCollection)

Agrega una o más series al conjunto SeriesCollection.

Sintaxis

expresión.Add(Source, Rowcol, SeriesLabels, CategoryLabels, Replace)

expresión   Requerida. Una expresión que devuelve un objeto SeriesCollection.

Source   Variant requerida. Los nuevos datos, ya sea como un objeto Range o como una matriz de puntos de datos.

Rowcol   Variant opcional. Especifica si los nuevos valores están en las filas o las columnas del rango especificado. Puede ser una de las siguientes constantes XlRowCol: xlRows o xlColumns. El valor predeterminado es xlColumns.

SeriesLabels   Variant opcional. Se ignora si Source es una matriz. True si la primera fila o columna contiene el nombre de la serie de datos. False si la primera fila o columna contiene el primer punto de datos de la serie. Si este argumento se omite, Microsoft Excel intentará determinar la ubicación del nombre de la serie a partir del contenido de la primera fila o columna.

CategoryLabels   Variant opcional. Se ignora si Source es una matriz. True si la primera fila o columna contiene el nombre de los rótulos de categorías. False si la primera fila o columna contiene el primer punto de datos de la serie. Si este argumento se omite, Microsoft Excel intentará determinar la ubicación del rótulo de categorías a partir del contenido de la primera fila o columna.

Replace   Variant opcional. Si CategoryLabels es True y Replace es True, las categorías especificadas reemplazarán a las existentes en la serie. Si Replace es False, no se reemplazarán las categorías ya existentes. El valor predeterminado es False.


Ejemplo del método Add

Este ejemplo crea una serie nueva en el Gráfico1. El origen de datos de la nueva serie es el rango B1:B10 de la Hoja1.

Charts("Gráfico1").SeriesCollection.Add _

Source:=ActiveWorkbook.Worksheets("Hoja1").Range("B1:B10")

Este ejemplo crea una nueva serie en el gráfico incrustado en la Hoja1.

Worksheets("Hoja1").ChartObjects(1).Activate

ActiveChart.SeriesCollection.Add _

Source:=Worksheets("Hoja1").Range("B1:B10")


Propiedad BuiltIn

True si el estilo está incorporado. Boolean de sólo lectura.


Ejemplo de la propiedad BuiltIn

Este ejemplo crea una lista en la hoja de cálculo uno que contiene los nombres y el estado de incorporado de todos los estilos del libro activo.

r = 0

Worksheets(1).Activate

For Each s In ActiveWorkbook.Styles

r = r + 1

Cells(r, 1).Value = s.Name

Cells(r, 2).Value = s.BuiltIn

Next


Propiedad Enabled

True si el objeto está activado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Enabled

Este ejemplo desactiva el gráfico incrustado uno de la hoja uno.

Worksheets(1).ChartObjects(1).Enabled = False


Propiedad o método Item

Devuelve un miembro de un conjunto. Es de sólo lectura.

Item es el miembro predeterminado de un conjunto. Por ejemplo, las dos siguientes líneas de código son equivalentes.

ActiveWorkbook.Worksheets.Item(1)

ActiveWorkbook.Worksheets(1)

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, vea Devolver un objeto de un conjunto.

Para obtener información específica acerca del método o la propiedad Item para un conjunto dado, seleccione el nombre del conjunto en la siguiente lista.

AddIns	Areas	Axes
Borders	CalculatedFields	CalculatedItems
ChartGroups	ChartObjects	Charts
Comments	CustomViews	DataLabels
Dialogs	FormatConditions	GroupShapes
HPageBreaks	LegendEntries	Names
ODBCErrors	OLEObjects	Panes
Parameters	PivotCaches	PivotFields
PivotFormulas	PivotItems	PivotTables
Points	QueryTables	Range
RecentFiles	Scenarios	SeriesCollection
ShapeRange	Shapes	Sheets
Styles	Trendlines	VPageBreaks
Windows	Workbooks	Worksheets


Propiedad Item (conjunto Borders)

Devuelve un objeto Border que representa uno de los bordes de un rango de celdas o un estilo. Es de sólo lectura.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un conjunto Borders.

Index   Long requerido. El borde que se devuelve. Puede ser una de las siguientes constantes XlBorderType: xlInsideHorizontal, xlInsideVertical, xlDiagonalDown, xlDiagonalUp, xlEdgeBottom, xlEdgeLeft, xlEdgeRight o xlEdgeTop.


Ejemplo de la propiedad Item (conjunto Borders)

El siguiente ejemplo establece el color del borde inferior de las celdas A1:G1.

Worksheets("Hoja1").Range("a1:g1"). _

    Borders.Item(xlEdgeBottom).Color = RGB(255, 0, 0)


Propiedad Item (objeto Range)

Devuelve un objeto Range que representa un rango desplazado con respecto al rango especificado. Es de sólo lectura.

Sintaxis 1

expresión.Item(RowIndex, ColumnIndex)

Sintaxis 2

expresión.Item(RowIndex)

expresión   Requerida. Una expresión que devuelve un objeto Range.

RowIndex   Sintaxis 1: Variant requerida. El número de fila de la celda a la que se desea obtener acceso, empezando por 1 para la primera fila del rango.

Sintaxis 2: Variant requerida. El número de índice de la celda a la que se desea obtener acceso, por orden de izquierda a derecha y después hacia abajo. Range.Item(1) devuelve la celda superior izquierda del rango; Range.Item(2) devuelve la celda situada inmediatamente a la derecha de la celda superior izquierda.

ColumnIndex   Variant opcional. Un número o una cadena que indica el número de columna de la celda a la que se desea obtener acceso, empezando por 1 o “A” para la primera columna del rango.

Comentarios

La sintaxis 1 usa como argumentos de índice un número de fila y un número o una letra de columna. Para obtener más información acerca de la sintaxis, vea el objeto Range. Los argumentos RowIndex y ColumnIndex son desplazamientos relativos. En otras palabras, si especifica un valor 1 para RowIndex se devolverán las celdas de la primera fila del rango, no de la hoja de cálculo. Por ejemplo, si la selección es la celda C3, Selection.Cells(2, 2) devolverá la celda D4 (puede usar la propiedad Item para indexar fuera del rango original).


Ejemplo de la propiedad Item (objeto Range)

Este ejemplo rellena el rango A1:A10 de la Hoja1 en función del contenido de la celda A1.

Worksheets("Hoja1").Range.Item("A1:A10").FillDown


Propiedad Item (conjunto Dialogs)

Devuelve un objeto Dialog que representa un cuadro de diálogo incorporado. Es de sólo lectura.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un conjunto Dialogs.

Index   Long requerido. El cuadro de diálogo incorporado que se devuelve. Puede ser una de las constantes XlBuiltInDialog.

Comentarios

Si usa la propiedad Item del conjunto Dialogs y el método Show, podrá mostrar aproximadamente 200 cuadros de diálogo incorporados. Cada cuadro de diálogo tiene asignada una constante, todas las cuales comienzan con “xlDialog”.

Para ver una tabla con las constantes disponibles y sus listas de argumentos correspondientes, vea Listas de argumentos de cuadros de diálogo incorporados.

La propiedad Item del conjunto Dialogs puede fallar si intenta mostrar un cuadro de diálogo en un contexto incorrecto. Por ejemplo, para mostrar el cuadro de diálogo Formato Rótulo Datos (usando la expresión de Visual Basic Application.Dialogs(xlDialogDataLabel).Show), la hoja activa debe ser un gráfico; de lo contrario, la propiedad fallará.


Ejemplo de la propiedad Item (conjunto Dialogs)

Este ejemplo muestra el cuadro de diálogo Abrir y, a continuación, selecciona la opción Sólo lectura.

Application.Dialogs.Item(xlDialogOpen).Show arg3:=True


Función SQLBind

No use SQLBind y otras funciones ODBC en la macro automática Xlodbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLBind especifica dónde se sitúan los resultados cuando se recuperan con SQLRetrieve o SQLRetrieveToFile. Utilice SQLBind para cambiar el orden de las columnas en el conjunto de resultados de una consulta o para situar las columnas del conjunto de resultados en columnas no adyacentes de la hoja de cálculo.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLBind(ConnectionNum, Column, Reference)

ConnectionNum   Requerido. El identificador de conexión único (devuelto por SQLOpen) de la fuente de datos para la cual se enlazan resultados.

Column   Opcional. El número de columna del conjunto de resultados que se enlazan. Las columnas del conjunto de resultados se numeran de izquierda a derecha, empezando desde 1. Si se omite Column, se eliminarán los enlaces de ConnectionNum.

La columna 0 (cero) contiene los números de fila del conjunto de resultados. Puede devolver los números de fila enlazando la columna 0 (cero).

Reference   Opcional. Un objeto Range que especifica la ubicación de una sola celda en una hoja de cálculo en la que deben enlazarse los resultados. Si Reference se omite, se eliminará el enlace de la columna.

Valor devuelto

Esta función devuelve una matriz de las columnas enlazadas para la conexión actual, ordenadas por número de columna.

Si SQLBind no puede enlazar la columna con la celda de la referencia especificada, devolverá el Error 2042.

Si ConnectionNum no es válido o si se intenta enlazar una celda que no está disponible, SQLBind devolverá el Error 2015.

Si Reference hace referencia a varias celdas, SQLBind devolverá el Error 2023.

Si SQLRetrieve no tiene un parámetro de destino, SQLBind situará el conjunto de resultados en la ubicación indicada por Reference.

Comentarios

SQLBind indica al Administrador del panel de control de ODBC dónde debe situar los resultados cuando éstos se reciban mediante SQLRetrieve. Los resultados se situarán en la celda de la referencia y en las que se encuentren inmediatamente debajo de ella.

Utilice SQLBind si desea que los resultados de diferentes columnas se sitúen en áreas de la hoja de cálculo no contiguas.

Utilice SQLBind para cada columna del juego de resultados. Una asociación seguirá siendo válida mientras la conexión especificada por ConnectionNum esté abierta.

Llame a SQLBind después de una llamada a SQLOpen y SQLExecQuery, pero antes de usar SQLRetrieve o SQLRetrieveToFile. Las llamadas a SQLBind no afectan a los resultados que ya se han recuperado.


Ejemplo de la función SQLBind

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno y, a continuación, usa la función SQLBind para mostrar únicamente las columnas cuarta y novena del conjunto de resultados de la consulta (el nombre del producto y la cantidad de pedido) de la Hoja1.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

Set output1 = Worksheets("Hoja1").Range("A1")

Set output2 = Worksheets("Hoja1").Range("B1")

SQLBind chan, 4, output1

SQLBind chan, 9, output2

SQLRetrieve chan

SQLClose chan


Función SQLClose

No use SQLClose y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLClose cierra una conexión con una fuente de datos externa.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLClose(ConnectionNum)

ConnectionNum   Requerido. El identificador de conexión único de la fuente de datos de la cual desea desconectarse.

Valor devuelto

Si la conexión se cierra satisfactoriamente, la función devolverá 0 (cero) y el identificador dejará de ser válido.

Si ConnectionNum no es válido, la función devolverá el Error 2015.

Si SQLClose no puede desconectar de la fuente de datos, devolverá el Error 2042.


Ejemplo de la función SQLClose

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que se muestra en la Hoja1, es una lista de todos los productos que están pedidos.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

Set output = Worksheets("Hoja1").Range("A1")

SQLRetrieve chan, output, , , True

SQLClose chan


Función SQLError

No use SQLError y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLError devuelve información de error pormenorizada cuando se utiliza después de que falle otra de las funciones ODBC. Si falla la propia función SQLError, no se devolverá información del error.

La información de error se define y almacena en la memoria siempre que falla una función ODBC. Para que dicha información esté disponible, llame a la función SQLError.

SQLError sólo ofrece información pormenorizada de los errores que se producen al fallar una función ODBC. No ofrece información de los errores de Microsoft Excel.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLError()

Valor devuelto

Si hay errores, SQLError devuelve información pormenorizada en una matriz de dos dimensiones, en la que cada fila describe un solo error.

Cada fila tiene los tres siguientes campos para almacenar la información obtenida mediante la llamada a la función SQLError en ODBC.

•	Una cadena de caracteres que indica la clase y subclase del error de ODBC.

•	Un valor numérico que indica el código de error nativo de la fuente de datos.

•	Un mensaje de texto que describe el error.

Si la llamada a una función genera varios errores, SQLError creará una fila por cada error.

Si una llamada previa a una función ODBC no genera errores, la función sólo devolverá el Error 2042.


Ejemplo de la función SQLError

Este ejemplo genera un error intencionado, causado al intentar abrir una conexión con la base de datos de ejemplo Neptuno usando una cadena de conexión incorrecta (Neptuno se escribe incorrectamente). La información de error se muestra en la Hoja1.

chan = SQLOpen("DSN=NWin")

matrizDevuelta = SQLError()

For i = LBound(matrizDevuelta, 1) To UBound(matrizDevuelta, 1)

Worksheets("Hoja1").Cells(1, i).Formula = matrizDevuelta(i)

Next i

SQLClose chan


Función SQLExecQuery

No use SQLExecQuery y las demás funciones ODBC de la macro automática XLODBBC.XLA; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLExecQuery ejecuta una consulta en una fuente de datos con una conexión establecida mediante SQLOpen.

SQLExecQuery solamente ejecuta la conexión. Use SQLRetrieve o SQLRetrieveToFile para obtener los resultados.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLExecQuery(ConnectionNum, QueryText)

ConnectionNum   Requerido. El identificador de conexión único devuelto por SQLOpen que identifica a la fuente de datos en la cual se ejecuta la consulta.

QueryText   Requerido. La consulta que se ejecuta en la fuente de datos. Debe seguir las reglas de sintaxis SQL para el controlador específico.

Valor devuelto

El valor que devuelve SQLExecQuery depende del enunciado SQL, como se muestra en la siguiente tabla.

Enunciado SQL	Valor devuelto
SELECT	El número de columnas del conjunto de resultados.
UPDATE, INSERT o DELETE	El número de filas a las que afecta la consulta.
Cualquier otro enunciado SQL válido	0 (cero).
Si SQLExecQuery no puede ejecutar la consulta en la fuente de datos especificada, devolverá el Error 2042.

Si ConnectionNum no es válido, la función devolverá el Error 2015.

Comentarios

Antes de llamar a SQLExecQuery, debe establecer una conexión con una fuente de datos mediante SQLOpen. SQLExecQuery usa el identificador de conexión único que devuelve SQLOpen para enviar las consultas a la fuente de datos.

Si llama a SQLExecQuery usando un identificador de conexión que había usado previamente, los resultados pendientes de dicha conexión se reemplazarán con los nuevos.


Ejemplo de la función SQLExecQuery

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que se muestra en la Hoja1, es una lista de todos los productos que están pedidos.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

Set output = Worksheets("Hoja1").Range("A1")

SQLRetrieve chan, output, , , True

SQLClose chan


Función SQLGetSchema

No use SQLGetSchema y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLGetSchema devuelve información acerca de la estructura de la fuente de datos de una conexión en particular.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLGetSchema(ConnectionNum, TypeNum, QualifierText)

ConnectionNum   Requerido. El identificador de conexión único de la fuente de datos a la que se ha conectado usando SQLOpen y de la cual desea información.

TypeNum   Requerido. Especifica el tipo de información que se devolverá, como se muestra en la siguiente tabla.

Valor	Significado
1	Una lista de todas las fuentes de datos disponibles.
2	Una lista de las bases de datos de la conexión actual.
3	Una lista de propietarios de una base de datos de la conexión actual.
4	Una lista de tablas para un propietario y base de datos dados de la conexión actual.
5	Una lista de columnas de una tabla en particular y sus tipos de datos SQL ODBC, en una matriz de dos dimensiones. El primer campo contiene el nombre de la columna; el segundo es el tipo de datos SQL ODBC de la columna.
6	El identificador del usuario actual.
7	El nombre de la base de datos actual.
8	El nombre de la fuente de datos definida durante la configuración o mediante el Administrador del panel de control de ODBC.
9	El nombre del DBMS que usa la fuente de datos; por ejemplo, ORACLE o SQL Server.
10	El nombre de servidor de la fuente datos.
11	La terminología que usa la fuente de datos para hacer referencia a los propietarios; por ejemplo, “propietario”, “Identificador de autorización” o “Esquema”.
12	La terminología que usa la fuente de datos para hacer referencia a una tabla; por ejemplo, “tabla” o “archivo”.
13	La terminología que usa la fuente de datos para hacer referencia a un calificador; por ejemplo, “base de datos” o “carpeta”.
14	La terminología que usa la fuente de datos para hacer referencia a un procedimiento; por ejemplo, “procedimiento de base de datos” o “procedimiento”.
QualifierText   Opcional. Sólo se incluye para los valores de TypeNum 3, 4 y 5. Una cadena que califica la búsqueda, como se muestra en la siguiente tabla.

TypeNum	QualifierText
3	El nombre de la base de datos de la fuente de datos actual. SQLGetSchema devuelve los nombres de los propietarios de las tablas de dicha base de datos.
4	El nombre de una base de datos y el de un propietario. La sintaxis se compone del nombre de la base de datos seguido por el nombre del propietario, con un punto que separa a ambos; por ejemplo, "BasedeDatos.Propietario". Esta función devuelve una matriz de los nombres de tabla que se encuentran en la base de datos dada y de las cuales es propietario el propietario indicado.
5	El nombre de una tabla. SQLGetSchema devuelve información acerca de las columnas de la tabla.
Valor devuelto

El valor devuelto por una llamada satisfactoria a SQLGetSchema depende del tipo de información que se solicita.

Si SQLGetSchema no encuentra la información solicitada, devolverá el Error 2042.

Si ConnectionNum no es válido, la función devolverá el Error 2015.

Comentarios

SQLGetSchema usa las funciones del API de ODBC SQLGetInfo y SQLTables para buscar la información solicitada.


Ejemplo de la función SQLGetSchema

Este ejemplo recupera el nombre de base de datos y el nombre de DBMS de la base de datos de ejemplo Neptuno y, a continuación, los muestra en un cuadro de mensaje.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

chan = SQLOpen("DSN=" & databaseName)

dsName = SQLGetSchema(chan, 8)

dsDBMS = SQLGetSchema(chan, 9)

MsgBox "El nombre de la base de datos es " & dsName & ", y su DBMS es " & dsDBMS

SQLClose chan


Función SQLOpen

No use SQLOpen y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLOpen establece una conexión con una fuente de datos.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLOpen(ConnectionStr, OutputRef, DriverPrompt)

ConnectionStr   Requerido. Suministra la información que requiere el controlador empleado para conectarse con una fuente de datos; debe tener el formato del controlador.

ConnectionStr suministra el nombre de la fuente de datos y otra información, por ejemplo, identificadores de usuario y contraseñas, que necesita el controlador para establecer una conexión.

Para poder conectarse, debe definir el nombre de la fuente de datos (DSN) que se usa en ConnectionStr.

OutputRef   Opcional. Un objeto Range (debe ser una sola celda) que contiene la cadena de conexión completa.

Use OutputRef si desea que SQLOpen devuelva la cadena de conexión completa a una hoja de cálculo.

DriverPrompt   Opcional. Especifica si se muestra el cuadro de diálogo de controladores y, en ese caso, las opciones disponibles. Utilice uno de los valores que se describen en la siguiente tabla. Si DriverPrompt se omite, SQLOpen usará 2 como valor predeterminado.

Valor	Significado
1	El cuadro de diálogo de controladores siempre se muestra.
2	El cuadro de diálogo de controladores se muestra únicamente si la información suministrada por la cadena de conexión y la especificación de la fuente de datos no es suficiente para completar la conexión. Todas las opciones del cuadro de diálogo están disponibles.
3	Igual que 2, excepto que las opciones del cuadro de diálogo no necesarias están atenuadas (no disponibles).
4	El cuadro de diálogo de controladores no se muestra. Si la conexión no es satisfactoria, SQLOpen devolverá un error.
Valor devuelto

Si tiene éxito, SQLOpen devuelve un número de identificador de conexión único. Use el número del identificador de conexión en las otras funciones ODBC.

Si SQLOpen no puede conectar usando la información suministrada, devolverá el Error 2042. Se cargará en la memoria información de error adicional para SQLError.


Ejemplo de la función SQLOpen

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que se muestra en la Hoja1, es una lista de todos los productos que están pedidos.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

Set output = Worksheets("Hoja1").Range("A1")

SQLRetrieve chan, output, , , True

SQLClose chan


Función SQLRequest

No utilice SQLRequest y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, utilice los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLRequest conecta con una fuente de datos externa y ejecuta una consulta desde una hoja de cálculo; a continuación, devuelve el resultado de la consulta en forma de matriz.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLRequest(ConnectionStr, QueryText, OutputRef, DriverPrompt, ColNamesLogical)

ConnectionStr   Requerido. Suministra información, por ejemplo, el nombre de la fuente de datos, identificadores de usuario y contraseñas, que necesita el controlador empleado para establecer la conexión con una fuente de datos; debe tener el formato del controlador.

Para poder conectarse, debe definir el nombre de la fuente de datos (DSN) que se usa en ConnectionStr.

Si SQLRequest no puede obtener acceso a la fuente de datos usando ConnectionStr, devolverá el Error 2042.

QueryText   Requerido. El enunciado SQL que se ejecutará en la fuente de datos.

Si SQLRequest no puede ejecutar QueryText en la fuente de datos especificada, devolverá el Error 2042.

OutputRef   Opcional. Un objeto Range (debe ser una sola celda) donde debe situarse la cadena de conexión completa.

DriverPrompt   Opcional. Especifica si se muestra el cuadro de diálogo de controladores y las opciones disponibles en él. Use uno de los valores que se describen en la siguiente tabla. Si DriverPrompt se omite, SQLRequest usará 2 como valor predeterminado.

Valor	Significado
1	El cuadro de diálogo de controladores siempre se muestra.
2	El cuadro de diálogo de controladores se muestra únicamente si la información suministrada por la cadena de conexión y la especificación de la fuente de datos no es suficiente para completar la conexión. Todas las opciones del cuadro de diálogo están disponibles.
3	El cuadro de diálogo de controladores se muestra únicamente si la información suministrada por la cadena de conexión y la especificación de la fuente de datos no es suficiente para completar la conexión. Las opciones del cuadro de diálogo no necesarias están atenuadas (no disponibles)
4	El cuadro de diálogo no se muestra. Si la conexión no es satisfactoria, devolverá un error.
ColNamesLogical   Opcional. True para que los nombres de las columnas se devuelvan como la primera fila de resultados. False para que no se devuelvan los nombres de la columnas. Si ColNamesLogical se omite, el valor predeterminado es False.

Comentarios

Los argumentos de la función SQLRequest están en distinto orden que los de la función de macros SQL.REQUEST.

Valor devuelto

Si la función finaliza todas sus acciones, devolverá una matriz de resultados de consulta o el número de las filas afectadas por la consulta.

Si SQLRequest no puede finalizar todas sus acciones, devolverá un valor de error y situará la información del error en la memoria para SQLError.

Si SQLRequest no puede obtener acceso a la fuente de datos usando ConnectionStr, devolverá el Error 2042.


Ejemplo de la función SQLRequest

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que se muestra en la Hoja1, es una lista de todos los productos que están pedidos. La función SQLRequest también escribe la cadena de conexión completa en la Hoja2.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

matrizDevuelta = SQLRequest("DSN=" & databaseName, _

queryString, _

Worksheets("Hoja1").Range("A1"), _

2, True)

For i = LBound(matrizDevuelta, 1) To UBound(matrizDevuelta, 1)

For j = LBound(matrizDevuelta, 2) To UBound(matrizDevuelta, 2)

Worksheets("Hoja1").Cells(i, j).Formula = matrizDevuelta(i, j)

Next j

Next i


Función SQLRetrieve

No use SQLRetrieve y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLRetrieve recupera todos los resultados, o parte de ellos, de una consulta ejecutada con anterioridad.

Para poder usar SQLRetrieve, debe establecer una conexión con SQLOpen, ejecutar una consulta con SQLExecQuery y hacer que los resultados queden pendientes.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLRetrieve(ConnectionNum, DestinationRef, MaxColumns, MaxRows, ColNamesLogical, RowNumsLogical, NamedRngLogical, FetchFirstLogical)

ConnectionNum   Requerido. El identificador de conexión único que devuelve SQLOpen y para el cual existen resultados de consulta pendientes que ha generado SQLExecQuery.

Si ConnectionNum no es válido, la función devolverá el Error 2015.

DestinationRef   Opcional. Un objeto Range que especifica dónde se situarán los resultados. Esta función sobrescribe los valores de las celdas sin pedir confirmación.

Si DestinationRef hace referencia a una sola celda, SQLRetrieve devolverá todos los resultados pendientes de la celda y de las celdas situadas a su derecha y debajo de ella.

Si DestinationRef se omite, se usarán los enlaces establecidos por llamadas previas a SQLBind para devolver los resultados. Si no existen enlaces para la conexión actual, SQLRetrieve devolverá el Error 2023.

Si una columna de resultados en particular no está enlazada y DestinationRef se omite, los resultados se descartan.

MaxColumns   Opcional. El número máximo de columnas que se devuelven a la hoja de cálculo, empezando en DestinationRef.

Si MaxColumns especifica más columnas de las que están disponibles en el resultado, SQLRetrieve situará los datos en las columnas para las cuales estén disponibles datos y borrará las columnas adicionales.

Si MaxColumns especifica menos columnas de las que están disponibles en el resultado, SQLRetrieve descartará las columnas de resultados del extremo derecho hasta que los resultados se ajusten al tamaño especificado.

La posición de las columnas está determinada por el orden en que la fuente de datos devuelve las columnas.

Si MaxColumns se omite, se devolverán todos los resultados.

MaxRows   Opcional. El número máximo de filas que se devuelven a la hoja de cálculo, empezando en DestinationRef.

Si MaxRows especifica más filas de las que están disponibles en el resultado, SQLRetrieve situará los datos en las filas para las cuales estén disponibles datos y borrará las filas adicionales.

Si MaxRows especifica menos filas de las que están disponibles en el resultado, SQLRetrieve situará los datos en las filas seleccionadas pero no descartará las filas adicionales. Puede recuperar las filas adicionales usando de nuevo SQLRetrieve y estableciendo FetchFirstLogical como False.

Si MaxRows se omite, se devolverán todas las filas del resultado.

ColNamesLogical   Opcional. True para que los nombres de las columnas se devuelvan como la primera fila de resultados. False o se omite para que no se devuelvan los nombres de columna.

RowNumsLogical   Opcional. Se usa únicamente cuando se incluye DestinationRef en la llamada a la función. True para que la primera columna del conjunto de resultados contenga números de fila. False o se omite para que no se devuelvan los números de fila. También puede recuperar los números de fila enlazando la columna 0 (cero) con SQLBind.

NamedRngLogical   Opcional. True para que cada columna de los resultados se declare como un rango con nombre de la hoja de cálculo. El nombre de cada rango es el nombre de la columna de resultados. El rango con nombre sólo incluye las filas que se devuelven con SQLRetrieve. El valor predeterminado es False.

FetchFirstLogical   Opcional. Permite solicitar resultados del principio del conjunto de resultados. Si FetchFirstLogical es False, es posible llamar a SQLRetrieve de forma reiterada para que devuelva el siguiente conjunto de filas hasta que se devuelvan todas las filas. Cuando no queden más filas en el conjunto de resultados, SQLRequest devolverá 0 (cero). Si desea recuperar los resultados del principio del conjunto, establezca FetchFirstLogical como True. Para recuperar filas adicionales del conjunto de resultados, defina FetchFirstLogical como False en posteriores llamadas. El valor predeterminado es False.

Valor devuelto

SQLRetrieve devuelve el número de filas del conjunto de resultados.

Si SQLRetrieve no puede recuperar los resultados de la fuente de datos especificada o si no quedan resultados pendientes, devolverá el Error 2042. Si no encuentra datos, devolverá 0 (cero).

Comentarios

Antes de llamar a SQLRetrieve, haga lo siguiente:

1.	Establezca una conexión con una fuente de datos, usando SQLOpen.

2.	Use el identificador de conexión que se devuelve en SQLOpen para enviar una consulta con SQLExecQuery.


Ejemplo de la función SQLRetrieve

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que se muestra en la Hoja1, es una lista de todos los productos que están pedidos.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

Set output = Worksheets("Hoja1").Range("A1")

SQLRetrieve chan, output, , , True

SQLClose chan


Función SQLRetrieveToFile

No utilice SQLRetrieveToFile y las demás funciones ODBC de la macro automática Xlodbbc.xla; en su lugar, use los objetos, métodos y propiedades de la biblioteca Objetos de acceso a datos (DAO). Para obtener más información acerca de Objetos de acceso a datos, vea Información general de acceso a datos.

SQLRetrieveToFile devuelve todos los resultados de una consulta ejecutada con anterioridad y los sitúa en un archivo.

Para poder usar esta función, debe estar establecida una conexión con una fuente de datos usando SQLOpen, ejecutarse una consulta con SQLExecQuery y hacer que los resultados de la consulta queden pendientes.

Esta función está en la macro automática Xlodbc.xla (macro automática ODBC en Macintosh). Para poder usar la función, debe establecer una referencia a la macro automática mediante el comando Referencias (menú Herramientas).

Sintaxis

SQLRetrieveToFile(ConnectionNum, Destination, ColNamesLogical, ColumnDelimiter)

ConnectionNum   Requerido. El identificador de conexión único que devuelve SQLOpen y para el cual existen resultados de consulta pendientes que ha generado SQLExecQuery.

Si ConnectionNum no es válido, la función devolverá el Error 2015.

Destination   Requerido. Una cadena que especifica el nombre y la ruta de acceso del archivo en el que se situarán los resultados. Si el archivo ya existe, su contenido se reemplazará con los resultados de la consulta. Si el archivo no existe, SQLRetrieveToFile lo creará y abrirá, para llenarlo con los resultados.

El formato de los datos del archivo es compatible con el formato de archivo .csv (valores separados por comas) de Microsoft Excel.

Las columnas están separadas por el carácter especificado por ColumnDelimiter y las filas individuales están separadas por un carácter de salto de línea.

Si no puede abrirse el archivo especificado por Destination, SQLRetrieveToFile devolverá el Error 2042.

ColNamesLogical   Opcional. True para que los nombres de las columnas se devuelvan como la primera fila de datos. False o se omite para que no se devuelvan los nombres de las columnas.

ColumnDelimiter   Opcional. Una cadena que especifica el carácter empleado para separar los elementos de cada fila. Por ejemplo, use "," para especificar un delimitador de coma o bien ";" para especificar un delimitador de punto y coma. Si se omite ColumnDelimiter, se empleará el carácter separador de lista.

Valor devuelto

Si tiene éxito, SQLRetrieveToFile devuelve los resultados de la consulta, los escribe en un archivo y, a continuación, devuelve el número de filas que se han escrito en el archivo.

Si SQLRetrieveToFile no puede recuperar los resultados, devolverá el Error 2042 y no escribirá en el archivo.

Si no hay resultados pendientes en la conexión, SQLRetrieveToFile devolverá el Error 2042.

Comentarios

Antes de llamar a SQLRetrieveToFile, haga lo siguiente:

1.	Establezca una conexión con una fuente de datos, usando SQLOpen.

2.	Use el identificador de conexión que devuelve SQLOpen para enviar una consulta con SQLExecQuery.


Ejemplo de la función SQLRetrieveToFile

Este ejemplo ejecuta una consulta en la base de datos de ejemplo Neptuno. El resultado de la consulta, que es una lista de todos los productos que están pedidos, se escribe como un archivo de texto delimitado, Salida.txt, en la carpeta actual.

If Application.OperatingSystem Like "*Win*" Then

databaseName = "Neptuno"

Else	'Macintosh

databaseName = "Neptuno"

End If

queryString = "SELECT * FROM product.dbf WHERE (product.ON_ORDER<>0)"

chan = SQLOpen("DSN=" & databaseName)

SQLExecQuery chan, queryString

SQLRetrieveToFile chan, "SALIDA.TXT", True

SQLClose chan


Función SolverAdd

Agrega una restricción al problema actual. Equivale a hacer clic en Solver del menú Herramientas y, a continuación, hacer clic en Agregar en el cuadro de diálogo Parámetros de Solver.

Para poder usar esta función, debe establecer una referencia a la macro automática de Solver. Cuando esté activado un módulo de Visual Basic, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverAdd(CellRef, Relation, FormulaText)

CellRef   Variant requerida. Una referencia a una celda o un rango de celdas que constituye el lado izquierdo de una restricción.

Relation   Integer requerido. La relación aritmética entre los lados izquierdo y derecho de la restricción. Si elige 4 o 5, CellRef debe hacer referencia a celdas ajustables (cambiantes) y no debe especificarse FormulaText.

Relación	Relación aritmética
1	<=
2	=
3	>=
4	Las celdas a las que hace referencia CellRef deben tener valores finales enteros.
5	Las celdas a las que hace referencia CellRef deben tener el valor final 0 (cero) o 1.
FormulaText   Variant opcional. El lado derecho de la restricción.

Comentarios

Después de agregar las restricciones, podrá manipularlas con las funciones SolverChange y SolverDelete.


Ejemplo de la función SolverAdd

Este ejemplo usa las funciones de Solver para maximizar el beneficio bruto en un problema de negocios. La función SolverAdd se emplea para agregar tres restricciones al problema actual.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions precision:=0,001

SolverOK setCell:=Range("BeneficioTotal"), _

maxMinVal:=1, _

byChange:=Range("C4:E6")

SolverAdd cellRef:=Range("F4:F6"), _

relation:=1, _

formulaText:=100

SolverAdd cellRef:=Range("C4:E6"), _

relation:=3, _

formulaText:=0

SolverAdd cellRef:=Range("C4:E6"), _

relation:=4

SolverSolve userFinish:=False

SolverSave saveArea:=Range("A33")


Función SolverChange

Cambia una restricción ya existente. Equivale a hacer clic en Solver del menú Herramientas y, a continuación, hacer clic en Cambiar en el cuadro de diálogo Parámetros de Solver.

Para poder usar esta función, debe establecer una referencia a la macro automática de Solver. Cuando esté activado un módulo de Visual Basic, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverChange(CellRef, Relation, FormulaText)

CellRef   Variant requerida. Una referencia a una celda o a un rango de celdas que constituye el lado izquierdo de una restricción.

Relation   Integer requerido. La relación aritmética entre los lados izquierdo y derecho de la restricción. Si elige 4 o 5, CellRef debe hacer referencia a celdas ajustables (cambiantes) y no debe especificarse FormulaText.

Relación	Relación aritmética
1	<=
2	=
3	>=
4	Las celdas a las que hace referencia CellRef deben tener valores finales enteros.
5	Las celdas a las que hace referencia CellRef deben tener el valor final 0 (cero) o 1.
FormulaText   Variant opcional. El lado derecho de la restricción.

Comentarios

Si CellRef y Relation no coinciden con una restricción ya existente, deberá usar las funciones SolverDelete y SolverAdd para cambiar la restricción.


Ejemplo de la función SolverChange

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en la Hoja1, cambia una de las restricciones y, a continuación, vuelve a resolver el modelo.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverChange cellRef:=Range("F4:F6"), _

relation:=1, _

formulaText:=200

SolverSolve userFinish:=False


Función SolverDelete

Elimina una restricción ya existente. Equivale a hacer clic en Solver del menú Herramientas y, a continuación, hacer clic en Eliminar en el cuadro de diálogo Parámetros de Solver.

Para poder usar esta función, debe establecer una referencia a la macro automática de Solver. Cuando esté activado un módulo de Visual Basic, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverDelete(CellRef, Relation, FormulaText)

CellRef   Variant requerida. Una referencia a una celda o un rango de celdas que constituye el lado izquierdo de una restricción.

Relation   Integer requerido. La relación aritmética entre los lados izquierdo y derecho de la restricción. Si elige 4 o 5, CellRef debe hacer referencia a celdas ajustables (cambiantes) y no debe especificarse FormulaText.

Relación	Relación aritmética
1	<=
2	=
3	>=
4	Las celdas a las que hace referencia CellRef deben tener valores finales enteros.
5	Las celdas a las que hace referencia CellRef deben tener el valor final 0 (cero) o 1.
FormulaText   Variant opcional. El lado derecho de la restricción.


Ejemplo de la función SolverDelete

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en la Hoja1, elimina una de las restricciones y, a continuación, vuelve a resolver el modelo.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverDelete cellRef:=Range("C4:E6"), _

relation:=4

SolverSolve userFinish:=False


Función SolverFinish

Indica a Microsoft Excel qué debe hacer con los resultados y qué clase de informe debe crear al finalizar el proceso de resolución.

Para poder usar esta función, debe establecer una referencia a la macro automática Solver. Con el editor de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverFinish(KeepFinal, ReportArray)

KeepFinal   Variant opcional. Puede ser 1 o 2. Si KeepFinal es 1 o se omite, los valores de la solución final se conservarán en las celdas cambiantes, reemplazando a los valores anteriores. Si KeepFinal es 2, los valores de la solución final se descartarán y se restablecerán los valores anteriores.

ReportArray   Variant opcional. La clase de informe que Microsoft Excel creará cuando Solver finalice: 1 crea un informe de resultados, 2 crea un informe de sensibilidad y 3 crea un informe de límite. Use la función Array para especificar los informes que desee mostrar, por ejemplo, ReportArray:= Array(1,3).


Ejemplo de la función SolverFinish

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en la Hoja1, vuelve a resolver el modelo y, a continuación, genera un informe de resultados en una nueva hoja de cálculo.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverSolve userFinish:=True

SolverFinish keepFinal:=1, reportArray:=Array(1)


Función SolverFinishDialog

Indica a Microsoft Excel qué debe hacer con los resultados y qué clase de informe debe crear al finalizar el proceso de resolución. Equivale a la función SolverFinish, pero también muestra el cuadro de diálogo Resultados de Solver después de resolver el problema.

Para poder usar esta función, debe establecer una referencia a la macro automática de Solver. Cuando esté activado un módulo de Visual Basic, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverFinishDialog(KeepFinal, ReportArray)

KeepFinal   Variant opcional. Puede ser 1 o 2. Si KeepFinal es 1 o se omite, los valores de la solución final se conservarán en las celdas cambiantes, reemplazando a los valores anteriores. Si KeepFinal es 2, los valores de la solución final se descartarán y se restablecerán los valores anteriores.

ReportArray   Variant opcional. La clase de informe que Microsoft Excel creará cuando Solver finalice: 1 crea un informe de resultados, 2 crea un informe de sensibilidad y 3 crea un informe de límite. Use la función Array para especificar los informes que desee mostrar, por ejemplo, ReportArray:= Array(1,3).


Ejemplo de la función SolverFinishDialog

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en Hoja1, vuelve a resolver el modelo y, a continuación, muestra el cuadro de diálogo Finalizar con dos opciones preestablecidas.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverSolve userFinish:=True

SolverFinishDialog keepFinal:=1, reportArray:=Array(1)


Función SolverGet

Devuelve información acerca de los valores actuales de Solver. Los valore se especifican en los cuadros de diálogo Parámetros de Solver y Opciones de Solver.

Para poder usar esta función, debe establecer una referencia a la macro automática de Solver. Cuando esté activado un módulo de Visual Basic, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla Solver.xla, bajo Referencias Disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverGet(TypeNum, SheetName)

TypeNum   Integer requerido. Un número que especifica el tipo de información que se desea. Los siguientes valores se especifican en el cuadro de diálogo Parámetros de Solver.

TypeNum	Devuelve
1	La referencia del cuadro Celda objetivo o el valor de error #N/A si no se ha usado Solver en la hoja activa.
2	Un número que corresponde a la opción Valor de la celda objetivo: 1 representa Máx, 2 representa Mín y 3 representa Valor de.
3	El valor del cuadro Valor de.
4	La referencia (como referencia múltiple, si es necesario) del cuadro Cambiando las celdas.
5	El número de restricciones.
6	Una matriz de los lados izquierdos de las restricciones, en forma de texto.
7	Una matriz de números que corresponden a las relaciones entre los lados izquierdo y derecho de las restricciones: 1 representa <=, 2 representa =, 3 representa >=, 4 representa int y 5 representa bin.
8	Una matriz de los lados derechos de las restricciones, en forma de texto.
Los siguientes valores se especifican en el cuadro de diálogo Opciones de Solver.

TypeNum	Devuelve
9	El tiempo máximo de cálculo.
10	El número máximo de iteraciones.
11	La precisión.
12	El valor de la tolerancia de números enteros.
13	True si la casilla Adoptar modelo lineal está activada; False en caso contrario
14	True si la casilla Mostrar resultado de iteraciones está activada; False en caso contrario
15	True si la casilla Usar escala automática está activada; False en caso contrario
16	Un número que corresponde al tipo de estimaciones: 1 representa Tangente y 2 representa Cuadrática.
17	Un número que corresponde al tipo de derivadas: 1 representa Progresivas y 2 representa Centrales.
18	Un número que corresponde al tipo de búsqueda: 1 representa cuasi-Newton y 2 representa Gradiente de conjugado.
19	El valor de convergencia.
20	True si la casilla Asumir no negativo está activada.
SheetName   Variant opcional. El nombre de la hoja de cálculo que contiene el modelo de Solver del cual se desea obtener información. Si SheetName se omite, se supone que la hoja es la hoja de cálculo activa.


Ejemplo de la función SolverGet

Este ejemplo muestra un mensaje si no ha usado Solver en la Hoja1.

Worksheets("Hoja1").Activate

state = SolverGet(typeNum:=1)

If IsError(state) Then

MsgBox "No ha usado Solver en la hoja activa"

End If


Función SolverLoad

En el modelo de Solver, carga los parámetros ya existentes que se guardaron en la hoja de cálculo.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverLoad(LoadArea)

LoadArea   Variant requerida. Una referencia de la hoja activa a un rango de celdas desde el cual se desea cargar una especificación de problema completa. La primera celda de LoadArea contiene una fórmula para el cuadro Celda objetivo del cuadro de diálogo Parámetros de Solver; la segunda contiene una fórmula para el cuadro Cambiando las celdas; las celdas siguientes contienen restricciones en forma de fórmulas lógicas. Como opción, la última celda contiene una matriz de valores de opcionales de Solver. Para obtener más información, vea SolverOptions. El rango que representa el argumento LoadArea puede estar en cualquier hoja de cálculo pero, si no es la hoja activa, deberá especificarla. Por ejemplo, SolverLoad("Hoja2!A1:A3") carga un modelo de Hoja2 aunque ésta no sea la hoja activa.


Ejemplo de la función SolverLoad

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en la Hoja1, cambia una de las restricciones y, a continuación, vuelve a resolver el modelo.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverChange cellRef:=Range("F4:F6"), _

relation:=1, _

formulaText:=200

SolverSolve userFinish:=False


Función SolverOk

Define un modelo básico de Solver. Equivale a hacer clic en Solver del menú Herramientas y, a continuación, especificar opciones del cuadro de diálogo Parámetros de Solver.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverOk(SetCell, MaxMinVal, ValueOf, ByChange)

SetCell   Variant opcional. Hace referencia a una celda de la hoja de cálculo activa. Corresponde al cuadro Celda objetivo del cuadro de diálogo Parámetros de Solver.

MaxMinVal   Variant opcional. Corresponde a las opciones Máx, Mín y Valor de del cuadro de diálogo Parámetros de Solver.

MaxMinVal	Especifica
1	Maximizar.
2	Minimizar.
3	Coincidencia con un valor específico.
ValueOf   Variant opcional. Si MaxMinVal tiene el valor 3, deberá especificar el valor con el cual coincide la celda objetivo.

ByChange   Variant opcional. La celda o rango de celdas que se cambiarán a fin de obtener el resultado deseado en la celda objetivo. Corresponde al cuadro Cambiando las celdas del cuadro de diálogo Parámetros de Solver.


Ejemplo de la función SolverOK

Este ejemplo usa las funciones de Solver para maximizar el beneficio bruto en un problema de negocios. La función SolverOK define un problema especificando los argumentos SetCell, MaxMinVal y ByChange.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions precision:=0,001

SolverOK setCell:=Range("BeneficioTotal"), _

maxMinVal:=1, _

byChange:=Range("C4:E6")

SolverAdd cellRef:=Range("F4:F6"), _

relation:=1, _

formulaText:=100

SolverAdd cellRef:=Range("C4:E6"), _

relation:=3, _

formulaText:=0

SolverAdd cellRef:=Range("C4:E6"), _

relation:=4

SolverSolve userFinish:=False

SolverSave saveArea:=Range("A33")


Función SolverOkDialog

Equivalente a la función SolverOK, pero también presenta el cuadro de diálogo Solver.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverOkDialog(SetCell, MaxMinVal, ValueOf, ByChange)

SetCell   Variant opcional. Hace referencia a una celda de la hoja de cálculo activa. Corresponde al cuadro Celda objetivo del cuadro de diálogo Parámetros de Solver.

MaxMinVal   Variant opcional. Corresponde a las opciones Máx, Mín y Valor de del cuadro de diálogo Parámetros de Solver.

MaxMinVal	Especifica
1	Maximizar.
2	Minimizar.
3	Coincidencia con un valor específico.
ValueOf   Variant opcional. Si MaxMinVal tiene el valor 3, deberá especificar el valor con el cual coincide la celda objetivo.

ByChange   Variant opcional. La celda o rango de celdas que se cambiarán a fin de obtener el resultado deseado en la celda objetivo. Corresponde al cuadro Cambiando las celdas del cuadro de diálogo Parámetros de Solver.


Ejemplo de la función SolverOKDialog

Este ejemplo carga el modelo de Solver calculado anteriormente y almacenado en Hoja1, restablece todas las opciones de Solver y, a continuación, muestra el cuadro de diálogo Parámetros de Solver. A partir de este punto, Solver puede emplearse manualmente.

Worksheets("Hoja1").Activate

SolverLoad loadArea:=Range("A33:A38")

SolverReset

SolverOKDialog setCell:=Range("BeneficiosTotales")

SolverSolve userFinish:=False


Función SolverOptions

Permite especificar opciones avanzadas del modelo de Solver. Esta función y sus argumentos corresponden a las opciones del cuadro de diálogo Opciones de Solver.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverOptions(MaxTime, Iterations, Precision, AssumeLinear, StepThru, Estimates, Derivatives, Search, IntTolerance, Scaling, Convergence, AssumeNonNeg)

MaxTime   Variant opcional. El tiempo máximo (en segundos) que Microsoft Excel dedicará a resolver el problema. Debe ser un entero positivo. El valor predeterminado de 100 es idóneo para la mayoría de los problemas, aunque puede especificar valores hasta 32.767.

Iterations   Variant opcional. El número máximo de iteraciones que Microsoft Excel ejecutará para resolver el problema. Debe ser un entero positivo. El valor predeterminado de 100 es idóneo para la mayoría de los problemas, aunque puede especificar valores hasta 32.767.

Precision   Variant opcional. Un número comprendido entre 0 (cero) y 1 que especifica el grado de precisión que se usará para resolver el problema. La precisión predeterminada es 0,000001. Un número menor de decimales (por ejemplo, 0,0001) indica un grado de precisión más bajo. Por lo general, cuanto más alto sea el grado de precisión (números más pequeños), más tiempo tardará Solver en resolver los problemas.

AssumeLinear   Variant opcional. True para que Solver suponga que el modelo subyacente es lineal. Esto acelera el cálculo de soluciones, pero sólo debe usarse si todas las relaciones del modelo son lineales. El valor predeterminado es False.

StepThru   Variant opcional. True para que Solver haga una pausa en cada solución de ensayo. Puede transferir a Solver una macro que se ejecute en cada pausa, mediante el argumento ShowRef de la función SolverSolve. False para que Solver no haga una pausa en cada solución de ensayo. El valor predeterminado es False.

Estimates   Variant opcional. Especifica la aproximación empleada para obtener las estimaciones iniciales de las variables básicas en una búsqueda de una dimensión: 1 representa estimaciones tangenciales y 2 representa estimaciones cuadráticas. Las estimaciones tangenciales usan extrapolación lineal de un vector tangente. Las estimaciones cuadráticas usan extrapolación cuadrática, lo que puede mejorar los resultados para problemas no lineales. El valor predeterminado es 1 (estimaciones tangenciales).

Derivatives   Variant opcional. Especifica diferenciales progresivas o centrales para las estimaciones de derivadas parciales de las funciones de restricción y objetivo: 1 representa diferencial progresiva y 2 representa diferencial central. La diferencial central exige más cálculos en la hoja, pero puede ser útil en los problemas que generen un mensaje indicando que Solver no pudo mejorar la solución. En las restricciones cuyos valores cambien rápidamente cerca de los límites, use diferencial central. El valor predeterminado es 1 (diferencial central).

Search   Variant opcional. Use las opciones de Search para especificar el algoritmo de búsqueda que se empleará en cada iteración para decidir la dirección de búsqueda: 1 representa el método de búsqueda de Newton y 2 representa el método conjugado. El método predeterminado es el de Newton, que usa un método cuasi-Newton. Normalmente este método exige más memoria que el método de búsqueda conjugado, pero requiere menos iteraciones. El método conjugado de búsqueda de gradientes requiere menos memoria que el método de Newton, pero habitualmente exige más iteraciones para alcanzar una precisión en particular. Puede probar con este método si tiene un problema complicado y memoria insuficiente para resolverlo. La búsqueda conjugada tiene utilidad especial si la ejecución de iteración en iteración proporciona poco progreso entre puntos de ensayo sucesivos.

IntTolerance   Variant opcional. Un número decimal comprendido entre 0 (cero) y 1 que especifica el grado de tolerancia de números enteros. Este argumento sólo es aplicable si se han definido restricciones de enteros. Puede ajustar el valor de la tolerancia, que representa el porcentaje de error admitido en la solución óptima cuando se usa una restricción de enteros en cualquier elemento del problema. Un grado de tolerancia alto (porcentaje de error admitido) tiende a acelerar la búsqueda de soluciones.

Scaling   Variant opcional. Si dos o más restricciones difieren en varios órdenes de magnitud, el valor True hace que Solver ajuste la escala de las restricciones a órdenes de magnitud similares durante los cálculos. Esto es útil cuando las entradas (en el cuadro Cambiando las celdas del cuadro de diálogo Parámetros de Solver) y las salidas (en los cuadros Celda objetivo y Sujetas a las siguientes restricciones del cuadro de diálogo Parámetros de Solver) tienen grandes diferencias de magnitud, por ejemplo, elevando al máximo el porcentaje de beneficios basado en inversiones de un millón de dólares. False para que Solver efectúe los cálculos sin ajustar la escala de las restricciones. El valor predeterminado es False.

Convergence   Variant opcional. Un número comprendido entre 0 (cero) y 1 que especifica el grado de tolerancia de convergencia que se usará para resolver problemas no lineales. Si el cambio relativo del valor de la celda objetivo es menor que la tolerancia durante las cinco últimas iteraciones, Solver se detendrá y mostrará el mensaje "Solver converge a la solución actual. Se satisfacen todas las restricciones”.

AssumeNonNeg   Variant opcional. True para que Solver asuma un límite inferior de 0 (cero) para todas las celdas ajustables (cambiantes) que no tengan límite inferior explícito en el cuadro de lista Restricción (las celdas deben contener valores no negativos). False para que Solver sólo use los límites especificados en el cuadro de lista Restricción.


Ejemplo de la función SolverOptions

Este ejemplo establece la opción Precisión como ,001.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions Precision:=0,001

SolverOK SetCell:=Range("BeneficioTotal"), _

MaxMinVal:=1, _

ByChange:=Range("C4:E6")

SolverAdd CellRef:=Range("F4:F6"), _

Relation:=1, _

FormulaText:=100

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=3, _

FormulaText:=0

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=4

SolverSolve UserFinish:=False

SolverSave SaveArea:=Range("A33")


Función SolverSave

Guarda las especificaciones de problema de Solver en la hoja de cálculo.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverSave(SaveArea)

SaveArea   Variant requerida. El rango de celdas en el que se guardará el modelo de Solver. El rango que representa el argumento SaveArea puede estar en cualquier hoja de cálculo pero, si no es la hoja activa, deberá especificarla. Por ejemplo, SolverSave("Hoja2!A1:A3") guarda el modelo en la Hoja2 aunque ésta no sea la hoja activa.


Ejemplo de la función SolverSave

Este ejemplo usa las funciones de Solver para maximizar el beneficio bruto en un problema de negocios. La función SolverSave guarda el problema actual en un rango de la hoja de cálculo activa.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions Precision:=0,001

SolverOK SetCell:=Range("BeneficioTotal"), _

MaxMinVal:=1, _

ByChange:=Range("C4:E6")

SolverAdd CellRef:=Range("F4:F6"), _

Relation:=1, _

FormulaText:=100

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=3, _

FormulaText:=0

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=4

SolverSolve UserFinish:=False

SolverSave SaveArea:=Range("A33")


Función SolverSolve

Inicia una ejecución de Solver para buscar soluciones. Equivale a hacer clic en Resolver del cuadro de diálogo Parámetros de Solver.

Antes de usar esta función, deberá establecer una referencia a la macro automática Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverSolve(UserFinish, ShowRef)

UserFinish   Variant opcional. True para que se devuelvan los resultados sin mostrar el cuadro de diálogo Resultados de Solver. False o se omite para que se devuelvan los resultados y se muestre el cuadro de diálogo Resultados de Solver.

ShowRef   Variant opcional. Se usa únicamente si se transfiere True al argumento StepThru de la función SolverOptions. Puede pasar el nombre de una macro (en forma de cadena) como argumento ShowRef. Se llamará a esta macro siempre que Solver devuelva una solución intermedia.


Ejemplo de la función SolverSolve

Este ejemplo usa las funciones de Solver para maximizar el beneficio bruto en un problema de negocios. La función SolverSolve inicia la ejecución de soluciones de Solver.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions Precision:=0,001

SolverOK SetCell:=Range("BeneficioTotal"), _

MaxMinVal:=1, _

ByChange:=Range("C4:E6")

SolverAdd CellRef:=Range("F4:F6"), _

Relation:=1, _

FormulaText:=100

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=3, _

FormulaText:=0

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=4

SolverSolve UserFinish:=False

SolverSave SaveArea:=Range("A33")


Función SolverReset

Restablece todas las restricciones y selecciones de celda del cuadro de diálogo Parámetros de Solver y restaura los valores predeterminados de todos los valores de Opciones de Solver. Equivale a hacer clic en Restablecer todo del cuadro de diálogo Parámetros de Solver. Se llama automáticamente a la función SolverReset después de cada llamada a la función SolverLoad.

Antes de usar esta función, deberá establecer una referencia a la macro automática de Solver. Con un módulo de Visual Basic activado, haga clic en Referencias del menú Herramientas y, a continuación, active la casilla de verificación Solver.xla bajo Referencias disponibles. Si Solver.xla no aparece bajo Referencias Disponibles, haga clic en Examinar y abra Solver.xla en la carpeta \Excel\Biblioteca\Solver.

Sintaxis

SolverReset()


Ejemplo de la función SolverReset

Este ejemplo restablece la configuración predeterminada de Solver antes de definir otro problema.

Worksheets("Hoja1").Activate

SolverReset

SolverOptions Precision:=0,001

SolverOK SetCell:=Range("BeneficioTotal"), _

MaxMinVal:=1, _

ByChange:=Range("C4:E6")

SolverAdd CellRef:=Range("F4:F6"), _

Relation:=1, _

FormulaText:=100

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=3, _

FormulaText:=0

SolverAdd CellRef:=Range("C4:E6"), _

Relation:=4

SolverSolve UserFinish:=False

SolverSave SaveArea:=Range("A33")


Tema de Ayuda no disponible

No se puede mostrar el tema de la Ayuda porque no se ha encontrado o no se ha instalado la Referencia de Visual Basic para aplicaciones.

Para instalar la Referencia de Visual Basic para aplicaciones

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar/Quitar.

2.	Haga clic en Microsoft Excel y luego en Cambiar opción.

3.	Haga clic en Ayuda en línea y archivos de ejemplo y luego en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda en línea de Visual Basic esté activada.

5.	Continúe con la ejecución del programa de instalación.


Tema de Ayuda no disponible

No se puede mostrar el tema de la Ayuda porque no se ha encontrado o no se ha instalado la Ayuda de Microsoft Excel.

Para instalar la Ayuda de Microsoft Excel

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar/Quitar.

2.	Haga clic en Microsoft Excel y luego en Cambiar opción.

3.	Haga clic en Ayuda en línea y archivos de ejemplo y luego en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda en línea de Microsoft Excel esté activada.

5.	Continúe con la ejecución del programa de instalación.


Tema de Ayuda no disponible

No se puede mostrar el tema de la Ayuda porque no se ha encontrado o no se ha instalado la Ayuda de Objetos de acceso a datos.

Para instalar la Ayuda de Objetos de acceso a datos

1.	Ejecute el programa de instalación de Microsoft Office y haga clic en Agregar/Quitar.

2.	Haga clic en Convertidores, filtros y acceso a datos y luego en Cambiar opción.

3.	Haga clic en Acceso de datos y luego en Cambiar opción.

4.	Asegúrese de que la casilla Ayuda en línea de Objetos de acceso a datos esté activada.

5.	Continúe con la ejecución del programa de instalación.


Método AddFields

Agrega campos de filas, columnas y páginas a una tabla dinámica.

Sintaxis

expresión.AddFields(RowFields, ColumnFields, PageFields, AddToTable)

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

RowFields   Variant opcional. Especifica el nombre de un campo de tabla dinámica (o una matriz de nombres de campos de tabla dinámica) que se agregará como filas.

ColumnFields   Variant opcional. Especifica el nombre de un campo de tabla dinámica (o una matriz de nombres de campos de tabla dinámica) que se agregará como columnas.

PageFields   Variant opcional. Especifica el nombre de un campo de tabla dinámica (o una matriz de nombres de campos de tabla dinámica) que se agregará como páginas.

AddToTable   Variant opcional. True para que los campos se agreguen a la tabla dinámica (no se reemplazará ninguno de los campos existentes). False para que se reemplacen los campos ya existentes con los nuevos. El valor predeterminado es False.

Comentarios

Se debe especificar uno de los argumentos de campo.


Ejemplo del método AddFields

Este ejemplo reemplaza los campos de columnas ya existentes en la tabla dinámica uno de la Hoja1 con los campos Estado y Cerrado_por.

Worksheets("Hoja1").PivotTables(1).AddFields _

ColumnFields:=Array("Estado", "Cerrado_por")


Propiedad BaseField

Devuelve o establece el campo base de un cálculo personalizado. Válido sólo para campos de datos. Variant de Lectura/Escritura.


Ejemplo de la propiedad BaseField

Este ejemplo establece el campo de datos de la tabla dinámica de la Hoja1 para que calcule la diferencia con respecto al campo base, establece el campo base como el campo llamado "FECHA_PEDIDO" y establece el elemento base como el elemento denominado "16/5/89."

With Worksheets("Hoja1").Range("A3").PivotField

.Calculation = xlDifferenceFrom

.BaseField = "FECHA_PEDIDO"

.BaseItem = "5/16/89"

End With


Propiedad BaseItem

Devuelve o establece el elemento del campo base para un cálculo personalizado. Válido sólo para campos de datos. Variant de Lectura/Escritura.


Ejemplo de la propiedad BaseItem

Este ejemplo establece el campo de datos de la tabla dinámica de la Hoja1 para que calcule la diferencia con respecto al campo base, establece el campo base como el campo llamado "FECHA_PEDIDO" y establece el elemento base como el elemento llamado "16/5/89."

With Worksheets("Hoja1").Range("A3").PivotField

.Calculation = xlDifferenceFrom

.BaseField = "FECHA_PEDIDO"

.BaseItem = "16/5/89"

End With


Propiedad Calculation

Objeto Application: Devuelve o establece el modo de cálculo. Puede ser una de las siguientes constantes XlCalculation: xlCalculationAutomatic, xlCalculationManual o xlCalculationSemiautomatic.

Objeto PivotField: Devuelve o establece el tipo de cálculo efectuado por el campo de tabla dinámica especificado. Puede ser una de las siguientes constantes XlPivotFieldCalculation: xlDifferenceFrom, xlIndex, xlNormal, xlPercentDifferenceFrom, xlPercentOf, xlPercentOfColumn, xlPercentOfRow, xlPercentOfTotal o xlRunningTotal. Válido sólo para campos de datos. Long de Lectura/Escritura.


Ejemplo de la propiedad Calculation

Este ejemplo hace que Microsoft Excel calcule los libros antes de guardarlos en el disco.

Application.Calculation = xlCalculateManual

Application.CalculateBeforeSave = True

Este ejemplo establece el campo de datos de la tabla dinámica de la Hoja1 para que calcule la diferencia con respecto al campo base, establece el campo base como el campo llamado "FECHA_PEDIDO" y establece el elemento base como el elemento llamado "16/5/89."

With Worksheets("Hoja1").Range("A3")	.PivotField

.Calculation = xlDifferenceFrom

.BaseField = "FECHA_PEDIDO"

.BaseItem = "16/5/89"

End With


Propiedad ChildField

Devuelve un objeto PivotField que representa el campo de tabla dinámica subordinado del campo especificado (si el campo está agrupado y tiene un campo subordinado). Es de sólo lectura.

Comentarios

Si el campo especificado no tiene ningún campo subordinado, esta propiedad causará un error.


Ejemplo de la propiedad ChildField

Este ejemplo muestra el nombre del campo subordinado para el campo llamado "REGIÓN2".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

MsgBox "El nombre del campo secundario es " & _

tablaDinámica.PivotFields("REGIÓN2").ChildField.Name


Propiedad ChildItems

Devuelve un objeto que representa un elemento único de tabla dinámica (un objeto PivotItem, sintaxis 1) o un conjunto de todos los elementos de tabla dinámica (un objeto PivotItems, sintaxis 2) que están agrupados como subordinados en un campo específico o subordinados del elemento especificado. Es de sólo lectura.

Sintaxis 1

expresión.ChildItems(Index)

Sintaxis 2

expresión.ChildItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField o PivotItem.

Index   Variant opcional. El nombre o número de elemento de tabla dinámica (puede ser una matriz si desea especificar varios elementos).


Ejemplo de la propiedad ChildItems

Este ejemplo agrega los nombres de todos los elementos subordinados del elemento llamado "verduras" a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each elementoDinámico In tablaDinámica.PivotFields("producto").PivotItems("verduras").ChildItems

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = elementoDinámico.Name

Next elementoDinámico


Propiedad ColumnFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de campos de tablas dinámicas (un objeto PivotFields, sintaxis 2) que se muestran actualmente como campos de columnas. Es de sólo lectura.

Sintaxis 1

expresión.ColumnFields(Index)

Sintaxis 2

expresión.ColumnFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o número de campo de tabla dinámica (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad ColumnFields

Este ejemplo agrega los nombres de campo de las columnas de tabla dinámica a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.ColumnFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad ColumnGrand

True si la tabla dinámica muestra el total general de las columnas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ColumnGrand

Este ejemplo establece que la tabla dinámica muestre totales generales de columnas.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.ColumnGrand = True


Propiedad ColumnRange

Devuelve un objeto Range que representa el rango que contiene el área de columnas de la tabla dinámica. Es de sólo lectura.


Ejemplo de la propiedad ColumnRange

Este ejemplo selecciona los encabezados de columna de la tabla dinámica.

Worksheets("Hoja1").Activate

Range("A3").Select

ActiveCell.PivotTable.ColumnRange.Select


Propiedad CurrentPage

Devuelve o establece la página actual que se muestra para el campo de página (sólo válido para campos de página). String de Lectura/Escritura.

Comentarios

Establezca esta propiedad como el nombre de la página. Defina la propiedad como "Todas" para establecer todas las páginas que se muestran.


Ejemplo de la propiedad CurrentPage

Este ejemplo establece la página actual de la tabla dinámica de la Hoja1 como la página llamada "Canadá".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.PivotFields("País").CurrentPage = "Canadá"


Propiedad DataBodyRange

Devuelve un objeto Range que representa el rango que contiene el área de datos de la tabla dinámica. Es de sólo lectura.


Ejemplo de la propiedad DataBodyRange

Este ejemplo selecciona los datos de la tabla dinámica activa.

Worksheets("Hoja1").Activate

Range("A3").Select

ActiveCell.PivotTable.DataBodyRange.Select


Propiedad DataFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de campos de tablas dinámicas (un objeto PivotFields, sintaxis 2) que se muestran actualmente como campos de datos. Es de sólo lectura.

Sintaxis 1

expresión.DataFields(Index)

Sintaxis 2

expresión.DataFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o número del campo de tabla dinámica (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad DataFields

Este ejemplo agrega los nombres de campo de datos de tabla dinámica a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.DataFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad DataLabelRange

Devuelve un objeto Range que representa el rango que contiene los rótulos de los campos de tabla dinámica. Es de sólo lectura.


Ejemplo de la propiedad DataLabelRange

Este ejemplo selecciona los rótulos de campo de datos de la tabla dinámica.

Worksheets("Hoja1").Activate

Range("A3").Select

ActiveCell.PivotTable.DataLabelRange.Select


Propiedad DataRange

Devuelve un objeto Range tal y como se muestra en la tabla siguiente. Es de sólo lectura.

Objeto	Rango de datos
Campo de datos	Datos contenidos en el campo
Campo de filas, columnas o páginas	Elementos del campo
Elemento	Datos calificados por el elemento


Ejemplo de la propiedad DataRange

Este ejemplo selecciona los elementos de tabla dinámica del campo llamado "REGIÓN".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

Worksheets("Hoja1").Activate

tablaDinámica.PivotFields("REGIÓN").DataRange.Select


Propiedad DataType

Objeto PivotField: Devuelve una constante que describe el tipo de datos del campo de tabla dinámica. Puede ser una de las siguientes constantes XlPivotFieldDataType: xlText, xlNumber o xlDate. Long de sólo lectura.

Objeto Parameter: Devuelve o establece el tipo de datos del parámetro de la consulta especificado. Long de Escritura/Lectura.

Puede ser una de las constantes XlParameterDataType siguientes:

xlParamTypeBigInt xlParamTypeBinary xlParamTypeBit xlParamTypeChar xlParamTypeDate xlParamTypeDecimal xlParamTypeDouble xlParamTypeFloat xlParamTypeInteger xlParamTypeLongVarBinary	xlParamTypeLongVarChar xlParamTypeNumeric xlParamTypeReal xlParamTypeSmallInt xlParamTypeTime xlParamTypeTimeStamp xlParamTypeTinyInt xlParamTypeUnknown xlParamTypeVarBinary xlParamTypeVarChar


Ejemplo de la propiedad DataType

Este ejemplo muestra el tipo de datos del campo llamado "FECHA_PEDIDO".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

Select Case tablaDinámica.PivotFields("FECHA_PEDIDO").DataType

Case Is = xlText

MsgBox "El campo contiene datos de texto"

Case Is = xlNumber

MsgBox "El campo contiene datos numéricos"

Case Is = xlDate

MsgBox "El campo contiene datos de fecha"

End Select


Propiedad GroupLevel

Devuelve la ubicación del campo especificado dentro de un grupo de campos (si el campo es miembro de un conjunto de campos agrupados). Es de sólo lectura.

Comentarios

El campo maestro del nivel más alto (campo maestro situado más a la izquierda) tiene el nivel uno, su campo subordinado tiene el nivel dos y así sucesivamente.


Ejemplo de la propiedad GroupLevel

Este ejemplo muestra un cuadro de mensaje si el campo que contiene la celda activa es el campo maestro de más alto nivel.

Worksheets("Hoja1").Activate

If ActiveCell.PivotField.GroupLevel = 1 Then

MsgBox "Este es el campo maestro de más alto nivel".

End If


Propiedad HasAutoFormat

True si se da formato automáticamente a la tabla dinámica cuando los campos se actualizan o se desplazan. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasAutoFormat

Este ejemplo hace que se vuelva a dar formato a la tabla dinámica de manera automática cuando los campos se actualicen o se desplacen.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.HasAutoFormat = True


Propiedad HiddenFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de todos los campos de tablas dinámicas (un objeto PivotFields, sintaxis 2) que no se muestran actualmente como campos de filas, columnas, páginas o datos. Es de sólo lectura.

Sintaxis 1

expresión.HiddenFields(Index)

Sintaxis 2

expresión.HiddenFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o el número del campo de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad HiddenFields

Este ejemplo agrega los nombres de los campos ocultos a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.HiddenFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad HiddenItems

Devuelve un objeto que representa un solo elemento de tabla dinámica oculto (un objeto PivotItem, sintaxis 1) o un conjunto de todos los elementos de tabla dinámica ocultos (un objeto PivotItems, sintaxis 2) del campo especificado. Es de sólo lectura.

Sintaxis 1

expresión.HiddenItems(Index)

Sintaxis 2

expresión.HiddenItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Index   Variant opcional. El nombre o el número del elemento de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios elementos).


Ejemplo de la propiedad HiddenItems

Este ejemplo agrega los nombres de todos los elementos ocultos del campo llamado "producto" a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each elementoDinámico In tablaDinámica.PivotFields("producto").HiddenItems

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = elementoDinámico.Name

Next elementoDinámico


Propiedad InnerDetail

Devuelve o establece el nombre del campo que se mostrará como detalle cuando la propiedad ShowDetail sea True en el campo de filas o de columnas más interno. String de Lectura/Escritura.


Ejemplo de la propiedad InnerDetail

Este ejemplo presenta el nombre del campo que se mostrará como detalle cuando la propiedad ShowDetail sea True en el campo de filas o de columnas más interno.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

MsgBox tablaDinámica.InnerDetail


Propiedad LabelRange

Objeto PivotField: Devuelve un objeto Range que representa la celda (o celdas) que contiene el rótulo de campo. Es de sólo lectura.

Objeto PivotItem: Devuelve un objeto Range que representa todas las celdas de tabla dinámica que contienen el elemento. Es de sólo lectura.


Ejemplo de la propiedad LabelRange

Este ejemplo selecciona el botón del campo llamado "FECHA_PEDIDO".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

Set campoDinámico = tablaDinámica.PivotFields("FECHA_PEDIDO")

Worksheets("Hoja1").Activate

campoDinámico.LabelRange.Select


Propiedad LocationInTable

Devuelve una constante que describe la parte de la PivotTable que contiene la esquina superior izquierda del rango especificado. Puede ser una de las siguientes constantes XlLocationInTable: xlRowHeader, xlColumnHeader, xlPageHeader, xlDataHeader, xlRowItem, xlColumnItem, xlPageItem, xlDataItem o xlTableBody. Long de sólo lectura.


Ejemplo de la propiedad LocationInTable

Este ejemplo muestra un cuadro de texto que describe la ubicación de la celda activa en la tabla dinámica.

Worksheets("Hoja1").Activate

Select Case ActiveCell.LocationInTable

Case Is = xlRowHeader

MsgBox "La celda activa forma parte de un encabezado de fila"

Case Is = xlColumnHeader

MsgBox "La celda activa forma parte de un encabezado de columna"

Case Is = xlPageHeader

MsgBox "La celda activa forma parte de un encabezado de página"

Case Is = xlDataHeader

MsgBox "La celda activa forma parte de un encabezado de datos"

Case Is = xlRowItem

MsgBox "La celda activa forma parte de un elemento de fila"

Case Is = xlColumnItem

MsgBox "La celda activa forma parte de un elemento de columna"

Case Is = xlPageItem

MsgBox "La celda activa forma parte de un elemento de página"

Case Is = xlDataItem

MsgBox "La celda activa forma parte de un elemento de datos"

Case Is = xlTableBody

MsgBox "La celda activa forma parte del cuerpo de la tabla"

End Select


Propiedad PageFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de los campos de tablas dinámicas (un objeto PivotFields, sintaxis 2) que se muestran actualmente como campos de página. Es de sólo lectura.

Sintaxis 1

expresión.PageFields(Index)

Sintaxis 2

expresión.PageFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o el número del campo de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad PageFields

Este ejemplo agrega los nombres de campo de página a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.PageFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad PageRange

Devuelve un objeto Range que representa el rango que contiene el área de página de la tabla dinámica. Es de sólo lectura.


Ejemplo de la propiedad PageRange

Este ejemplo selecciona los encabezados de página de tabla dinámica.

Worksheets("Hoja1").Activate

Range("A3").Select

ActiveCell.PivotTable.PageRange.Select


Propiedad ParentField

Devuelve un objeto PivotField que representa el campo de tabla dinámica que es el grupo maestro del objeto. El campo debe estar agrupado y tener un campo maestro. Es de sólo lectura.


Ejemplo de la propiedad ParentField

Este ejemplo muestra el nombre del campo que es el grupo maestro del campo que contiene la celda activa.

Worksheets("Hoja1").Activate

MsgBox "El campo activo es un subordinado del campo " & _

ActiveCell.PivotField.ParentField.Name


Propiedad ParentItem

Devuelve un objeto PivotItem que representa el elemento maestro de tabla dinámica en el objeto PivotField maestro (el campo deberá estar agrupado para que tenga un maestro). Es de sólo lectura.


Ejemplo de la propiedad ParentItem

Este ejemplo muestra el nombre del elemento maestro del elemento que contiene la celda activa.

Worksheets("Hoja1").Activate

MsgBox "Este elemento es un subelemento de " & _

ActiveCell.PivotItem.ParentItem.Name


Propiedad ParentItems

Devuelve un objeto que representa un elemento único de tabla dinámica (un objeto PivotItem, sintaxis 1) o un conjunto de todos los elementos de tabla dinámica (un objeto PivotItems, sintaxis 2) que son grupos maestros del campo especificado. El campo especificado deberá ser un grupo maestro de otro campo. Es de sólo lectura.

Sintaxis 1

expresión.ParentItems(Index)

Sintaxis 2

expresión.ParentItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Index   Variant opcional. El nombre o el número del elemento de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios elementos).


Ejemplo de la propiedad ParentItems

Este ejemplo crea una lista que contiene los nombres de todos los elementos que son grupos maestros del campo llamado “producto”.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each elementoDinámico In tablaDinámica.PivotFields("producto").ParentItems

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = elementoDinámico.Name

Next elementoDinámico


Propiedad ParentShowDetail

True si el elemento especificado se muestra porque uno de sus maestros muestra el detalle. False si el elemento especificado no se muestra debido a que uno de sus maestros oculta el detalle. Esta propiedad sólo está disponible si el elemento está agrupado. Boolean de sólo lectura.


Ejemplo de la propiedad ParentShowDetail

Este ejemplo muestra un mensaje si el elemento de tabla dinámica que contiene la celda activa está visible porque su elemento maestro muestra el detalle.

Worksheets("Hoja1").Activate

Set elemDinámico = ActiveCell.PivotItem

If elemDinámico.ParentShowDetail = True Then

MsgBox "El elemento maestro muestra el detalle "

End If


Propiedad PivotField

Devuelve un objeto PivotField que representa el campo de tabla dinámica que contiene la esquina superior izquierda del rango especificado. Es de sólo lectura.


Ejemplo de la propiedad PivotField

Este ejemplo muestra el nombre del campo de tabla dinámica que contiene la celda activa.

Worksheets("Hoja1").Activate

MsgBox "La celda activa está en el campo " & _

ActiveCell.PivotField.Name


Método PivotFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de los campos de tabla dinámica visibles y ocultos (un objeto PivotFields, sintaxis 2) de la tabla dinámica. Es de sólo lectura.

Sintaxis 1

expresión.PivotFields(Index)

Sintaxis 2

expresión.PivotFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o el número del campo de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios campos).


Ejemplo del método PivotFields

Este ejemplo agrega los nombres de campo de tabla dinámica a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoOculto In tablaDinámica.PivotFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad PivotItem

Devuelve un objeto PivotItem que representa el elemento de tabla dinámica que contiene la esquina superior izquierda del rango especificado. Es de sólo lectura.


Ejemplo de la propiedad PivotItem

Este ejemplo muestra el número del elemento de tabla dinámica que contiene la celda activa de la Hoja1.

Worksheets("Hoja1").Activate

MsgBox "La celda activa está en el elemento " & _

ActiveCell.PivotItem.Name


Método PivotItems

Devuelve un objeto que representa un solo elemento de tabla dinámica (un objeto PivotItem, sintaxis 1) o un conjunto de todos los elementos de tabla dinámica visibles y ocultos (un objeto PivotItems, sintaxis 2) del campo especificado. Es de sólo lectura.

Sintaxis 1

expresión.PivotItems(Index)

Sintaxis 2

expresión.PivotItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Index   Variant opcional. El nombre o el número del elemento de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios elementos).


Ejemplo del método PivotItems

Este ejemplo agrega los nombres de todos los elementos del campo llamado "producto" a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each elementoDinámico In tablaDinámica.PivotFields("producto").ParentItems

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = elementoDinámico.Name

Next


Propiedad PivotTable

Devuelve un objeto PivotTable que representa la tabla dinámica que contiene la esquina superior izquierda del rango especificado. Es de sólo lectura.


Ejemplo de la propiedad PivotTable

Este ejemplo establece la página actual de la tabla dinámica de la Hoja1 como la página llamada "Canadá".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.PivotFields("País").CurrentPage = "Canadá"


Método PivotTables

Devuelve un objeto que representa una sola tabla dinámica (un objeto PivotTable, sintaxis 1) o un conjunto de todas las tablas dinámicas (un objeto PivotTables, sintaxis 2) de una hoja de cálculo. Es de sólo lectura.

Sintaxis 1

expresión.PivotTables(Index)

Sintaxis 2

expresión.PivotTables

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.

Index   Variant opcional. El nombre o el número de la tabla dinámica (puede ser una matriz si desea especificar varias tablas).


Ejemplo del método PivotTables

Este ejemplo establece la Suma del campo 1994 de la TablaDinámica1 para que use la función SUMA.

ActiveSheet.PivotTables("TablaDinámica1"). _ _

PivotFields("Suma de 1994").Function = xlSum


Método PivotTableWizard

Crea una PivotTable. Este método no presenta el Asistente para tablas dinámicas.

Sintaxis

expresión.PivotTableWizard(SourceType, SourceData, TableDestination, TableName, RowGrand, ColumnGrand, SaveData, HasAutoFormat, AutoPage, Reserved, BackgroundQuery, OptimizeCache, PageFieldOrder, PageFieldWrapCount, ReadData, Connection)

expresión   Requerida. Una expresión que devuelve un objeto Worksheet o PivotTable.

SourceType   Variant opcional. La fuente de datos de la tabla dinámica. Puede ser una de las siguientes constantes XlPivotTableSourceType:

Constante	Descripción
xlConsolidation	Varios rangos de consolidación
xlDatabase	Lista o base de datos de Microsoft Excel
xlExternal	Datos de otra aplicación
xlPivotTable	La misma fuente que otra tabla dinámica
Si especifica este argumento, también deberá especificar SourceData. Si se omiten SourceType y SourceData, Microsoft Excel supondrá que el tipo de fuente es xlDatabase y que los datos fuente provienen del rango con nombre “Base_de_datos”. Si el rango con nombre no existe y la selección actual está dentro de un rango de más de 10 celdas que contienen datos, Microsoft Excel usará la región actual. Si esto no es verdadero, el método fallará.

SourceData   Variant opcional. Los datos de la nueva tabla dinámica. Puede ser un objeto Range, una matriz de rangos o una constante de texto que represente el nombre de otra tabla dinámica. Para una base de datos externa, es una matriz de dos elementos. El primer elemento es la cadena de conexión que especifica la fuente de datos ODBC. El segundo es la cadena de la consulta SQL empleada para obtener los datos. Si especifica este argumento, también deberá especificar SourceType. Si la celda activa se encuentra dentro del rango SourceData, deberá especificar TableDestination.

TableDestination   Variant opcional. Un objeto Range que especifica el lugar de la hoja de cálculo donde debe colocarse la tabla dinámica. Si este argumento se omite, la tabla dinámica se colocará en la celda activa.

TableName   Variant opcional. Una cadena que especifica el nombre de la nueva tabla dinámica.

RowGrand   Variant opcional. True para que se muestren los totales generales de las filas en la tabla dinámica. False para que se omitan los totales generales de las filas.

ColumnGrand   Variant opcional. True para que se muestren los totales generales de las columnas en la tabla dinámica. False para que se omitan los totales generales de las columnas.

SaveData   Variant opcional. True para que se guarden los datos con la tabla dinámica. False para que sólo se guarde la definición de la tabla dinámica.

HasAutoFormat   Variant opcional. True para que Microsoft Excel dé formato automáticamente a la tabla dinámica cuando ésta se actualice o cuando los campos se desplacen.

AutoPage   Variant opcional. Válido únicamente si SourceType tiene el valor xlConsolidation. True para que Microsoft Excel cree un campo de páginas para la consolidación. Si es False, el usuario deberá crear el campo o campos de páginas.

Reserved   Variant opcional. No se utiliza en Microsoft Excel.

BackgroundQuery   Variant opcional. True si las consultas de la tabla dinámica se realizan de forma asíncrona (en el fondo). El valor predeterminado es False.

OptimizeCache   Variant opcional. True para optimizar el caché de la tabla dinámica cuando se construye. El valor predeterminado es False.

PageFieldOrder   Variant opcional. El orden en que los campos de la página se agregan al diseño de la tabla dinámica. Puede ser uno de las siguientes constantes XlOrder: xlDownThenOver o xlOverThenDown. El valor predeterminado es xlDownThenOver.

PageFieldWrapCount   Variant opcional. El número de los campos de la página de la tabla dinámica en cada columna o fila. El valor predeterminado es 0 (cero).

ReadData   Variant opcional. True para crear un caché dinámico se conteniendo todos los registros de la base de datos externa; este caché puede ser muy grande. Si False, algunos campos pueden configurarse como campos de página con arquitectura de servidor antes de que los datos sean leídos.

Connection   Variant opcional. Una cadena que contiene la configuración ODBC que permite a Microsoft Excel conectarse a un origen de datos ODBC, un URL que permite a Microsoft Excel conectarse a un origen de datos Web o a un archivo que especifique una base de datos o consulta Web. Cambia la configuración de la propiedad Connection del objeto PivotCache .


Ejemplo del método PivotTableWizard

Este ejemplo crea una nueva tabla dinámica a partir de una base de datos de Microsoft Excel (contenida en el rango A1:C100).

ActiveSheet.PivotTableWizard xlDatabase, Range("A1:C100")


Propiedad RefreshDate

Devuelve la fecha de la última actualización de la tabla dinámica o de la caché dinámica. Date de sólo lectura.


Ejemplo de la propiedad RefreshDate

Este ejemplo muestra la fecha en que se actualizó la tabla dinámica por última vez.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

dateString = Format(tablaDinámica.RefreshDate, "Fecha Larga")

MsgBox "La fecha de la última actualización es " & dateString


Propiedad RefreshName

Devuelve el nombre de la persona que actualizó por última vez los datos de la tabla dinámica o de la caché dinámica. String de sólo lectura.


Ejemplo de la propiedad RefreshName

Este ejemplo muestra el nombre de la persona que actualizó la tabla dinámica por última vez.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

MsgBox "La última persona que actualizó los datos es " & tablaDinámica.RefreshName


Método RefreshTable

Actualiza la tabla dinámica a partir de los datos fuente. Devuelve True si tiene éxito.

Sintaxis

expresión.RefreshTable

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.


Ejemplo del método RefreshTable

Este ejemplo actualiza la tabla dinámica.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.RefreshTable


Propiedad RowFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de todos los campos de tabla dinámica (un objeto PivotFields, sintaxis 2) que se muestran actualmente como campos de filas. Es de sólo lectura.

Sintaxis 1

expresión.RowFields(Index)

Sintaxis 2

expresión.RowFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o el número del campo de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad RowFields

Este ejemplo agrega los nombres de campo de filas de la tabla dinámica a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.RowFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad RowGrand

True si la tabla dinámica muestra el total general de las filas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad RowGrand

Este ejemplo hace que la tabla dinámica muestre los totales generales de filas.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.RowGrand = True


Propiedad RowRange

Devuelve un objeto Range que representa el rango que contiene el área de filas de la tabla dinámica. Es de sólo lectura.


Ejemplo de la propiedad RowRange

Este ejemplo selecciona los encabezados de filas de la tabla dinámica.

Worksheets("Hoja1").Activate

Range("A3").Select

ActiveCell.PivotTable.RowRange.Select


Propiedad SaveData

True si los datos de la tabla dinámica se guardan con el libro. False si sólo se guarda la definición de la tabla dinámica. Boolean de Lectura/Escritura.


Ejemplo de la propiedad SaveData

Este ejemplo establece la tabla dinámica para que guarde los datos con el libro.

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.SaveData = True


Propiedad ShowDetail

True si el esquema se expande en el rango especificado (para que el detalle de la columna o la fila esté visible). El rango especificado debe ser una sola columna o fila de resumen de un esquema. Variant de Lectura/Escritura.

Para el objeto PivotItem (o el objeto Range si dicho rango se encuentra en una tabla dinámica), esta propiedad es True si el elemento de tabla dinámica muestra el detalle.

Comentarios

Si el rango especificado no está en una tabla dinámica, los siguientes comentarios son pertinentes:

•	El rango debe encontrarse en una sola columna o fila de resumen.

•	Esta propiedad devuelve False si cualquiera de los subordinados de la fila o la columna están ocultos.

•	Establecer el valor True para esta propiedad equivale a mostrar todos los subordinados de la fila o la columna de resumen.

•	Establecer el valor False para esta propiedad equivale a ocultar todos los subordinados de la fila o columna de resumen.

Si el rango especificado se encuentra en una tabla dinámica, es posible establecer esta propiedad para más de una celda a la vez si el rango es contiguo. Esta propiedad sólo se devolverá si el rango es una sola celda.


Ejemplo de la propiedad ShowDetail

Este ejemplo muestra el detalle de la fila de resumen de un esquema de la Hoja1. Antes de ejecutar el ejemplo, cree un esquema sencillo que contenga una sola fila de resumen y, a continuación, contraiga el esquema de modo que sólo se muestre la fila de resumen. Seleccione una de las celdas de la fila de resumen y ejecute el ejemplo.

Worksheets("Hoja1").Activate

Set miRango = ActiveCell.CurrentRegion

últimaFila = miRango.Rows.Count

miRango.Rows(últimaFila).ShowDetail = True


Método ShowPages

Crea una tabla dinámica nueva por cada elemento del campo de páginas. Cada tabla dinámica se creará en una nueva hoja de cálculo.

Sintaxis

expresión.ShowPages(PageField)

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

PageField   Variant opcional. Una cadena que asigna un nombre a un solo campo de páginas de la tabla dinámica.


Ejemplo del método ShowPages

Este ejemplo crea una nueva tabla dinámica por cada elemento del campo de páginas, que es el campo llamado "País".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

tablaDinámica.ShowPages "País"


Propiedad TableRange1

Devuelve un objeto Range que representa el rango que contiene la tabla dinámica completa, pero no incluye los campos de páginas. Es de sólo lectura.

Comentarios

La propiedad TableRange2 incluye los campos de páginas.


Ejemplo de la propiedad TableRange1

Este ejemplo selecciona toda la tabla dinámica excepto sus campos de páginas.

Worksheets("Hoja1").Activate

Range("A3").PivotTable.TableRange1.Select


Propiedad TableRange2

Devuelve un objeto Range que representa el rango que contiene la tabla dinámica completa, incluidos los campos de páginas. Es de sólo lectura.

Comentarios

La propiedad TableRange1 no incluye los campos de páginas.


Ejemplo de la propiedad TableRange2

Este ejemplo selecciona toda la tabla dinámica, incluidos sus campos de páginas.

Worksheets("Hoja1").Activate

Range("A3").PivotTable.TableRange2.Select


Propiedad TotalLevels

Devuelve el número total de campos en el grupo de campos actual. Si el campo no está agrupado, TotalLevels devuelve el valor 1. Long de sólo lectura.

Comentarios

Todos los campos de un conjunto de campos agrupados tienen el mismo valor de TotalLevels.


Ejemplo de la propiedad TotalLevels

Este ejemplo muestra el número total de campos del grupo que contiene la celda activa.

Worksheets("Hoja1").Activate

MsgBox "Este grupo tiene " & _

ActiveCell.PivotField.TotalLevels & " niveles."


Propiedad VisibleFields

Devuelve un objeto que representa un solo campo de tabla dinámica (un objeto PivotField, sintaxis 1) o un conjunto de todos los campos de tabla dinámica visibles (un objeto PivotFields, sintaxis 2). Los campos de tabla dinámica visibles se muestran como filas, como columnas, como páginas o como campos de datos. Es de sólo lectura.

Sintaxis 1

expresión.VisibleFields(Index)

Sintaxis 2

expresión.VisibleFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Index   Variant opcional. El nombre o el número del campo de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios campos).


Ejemplo de la propiedad VisibleFields

Este ejemplo agrega los nombres de los campos visibles a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each campoDinámico In tablaDinámica.VisibleFields

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = campoDinámico.Name

Next campoDinámico


Propiedad VisibleItems

Devuelve un objeto que representa un solo elemento de tabla dinámica visible (un objeto PivotItem, sintaxis 1) o un conjunto de todos los elementos de tabla dinámica visibles (un objeto PivotItems, sintaxis 2) del campo especificado. Es de sólo lectura.

Sintaxis 1

expresión.VisibleItems(Index)

Sintaxis 2

expresión.VisibleItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Index   Variant opcional. El nombre o el número del elemento de tabla dinámica que se devolverá (puede ser una matriz si desea especificar varios elementos).


Ejemplo de la propiedad VisibleItems

Este ejemplo agrega los nombres de todos los elementos visibles del campo llamado "Producto" a una lista de una hoja nueva.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Activate

Set tablaDinámica = Worksheets("Hoja2").Range("A1").PivotTable

rw = 0

For Each elementoDinámico In tablaDinámica.PivotFields("Producto").VisibleItems

    rw = rw + 1

    nuevaHoja.Cells(rw, 1).Value = elementoDinámico.Name

Next


Propiedad PageFieldStyle

Devuelve o establece el estilo que se usa en el área de campo de páginas limitado. El valor predeterminado es una cadena nula (es decir, no se aplica un estilo). String de Lectura/Escritura.

Comentarios

Este es el estilo predeterminado para el área de fondo y se aplica antes de que el usuario dé un formato. Las celdas que se vacíen al mover un campo del área de campo de páginas a otra posición conservarán este estilo.


Ejemplo de la propiedad PageFieldStyle

Este ejemplo asigna al área del campo de páginas de la tabla dinámica el estilo PúrpuraYOro.

Worksheets(1).PivotTables("Dinámica1").PageFieldStyle = "PúrpuraYOro"


Propiedad TableStyle

Devuelve o establece el estilo que se usa en el cuerpo de la tabla dinámica. El valor predeterminado es una cadena nula (es decir, no se aplica un estilo). String de Lectura/Escritura.

Comentarios

Este es el estilo predeterminado para el área de fondo y se aplica antes de que el usuario dé un formato.


Ejemplo de la propiedad TableStyle

Este ejemplo asigna al cuerpo de la tabla dinámica el estilo PúrpuraYOro.

Worksheets(1).PivotTables("Dinámica1").TableStyle = "PúrpuraYOro"


Propiedad VacatedStyle

Devuelve o establece el estilo aplicado a las celdas que se vacíen cuando se actualice la tabla dinámica. El valor predeterminado es una cadena nula (es decir, no se aplica un estilo). String de Lectura/Escritura.


Ejemplo de la propiedad VacatedStyle

Este ejemplo asigna a las celdas vacías de la tabla dinámica el estilo PúrpuraYOro.

Worksheets(1).PivotTables("Dinámica1").VacatedStyle = "PúrpuraYOro"


Propiedad PreserveFormatting

True si el formato de la tabla dinámica se va a conservar cuando la tabla se actualice o se vuelva a calcular por acción de operaciones tales como desplazamiento, ordenación o cambio de los elementos del campo de páginas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PreserveFormatting

Este ejemplo hace que se conserve el formato de la tabla dinámica.

Worksheets(1).PivotTables("Dinámica1").PreserveFormatting = True


Propiedad ManualUpdate

True si la tabla dinámica sólo se vuelve a calcular cuando lo solicita el usuario. El valor predeterminado es False. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ManualUpdate

Este ejemplo hace que la tabla dinámica se vuelva a calcular sólo cuando lo solicite el usuario y antes de que se guarde el libro.

With Worksheets(1).PivotTables("Dinámica1")

.ManualUpdate = True

.UpdateBeforeSave = True

End With


Propiedad DisplayErrorString

True si la tabla dinámica muestra una cadena de error personalizada en las celdas que contienen errores. El valor predeterminado es False. Boolean de Lectura/Escritura.

Comentarios

Utilice la propiedad ErrorString para definir la cadena de error personalizada.

Esta propiedad tiene gran utilidad para suprimir los errores de dividir por cero que se produzcan al calcular campos que se mueven.


Ejemplo de la propiedad DisplayErrorString

Este ejemplo hace que la tabla dinámica muestre un guión en las celdas que contienen errores.

With Worksheets(1).PivotTables("Dinámica1")

.ErrorString = "-"

.DisplayErrorString = True

End With


Propiedad DisplayNullString

True si la tabla dinámica muestra una cadena personalizada en las celdas que contienen el valor nulo. El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

Use la propiedad NullString para definir la cadena nula personalizada.


Ejemplo de la propiedad DisplayNullString

Este ejemplo hace que la tabla dinámica muestre “NA” en las celdas que contienen el valor nulo.

With Worksheets(1).PivotTables("Dinámica1")

.NullString = "NA"

.DisplayNullString = True

End With

Este ejemplo hace que la tabla dinámica muestre 0 (cero) en las celdas que contienen el valor nulo.

Worksheets(1).PivotTables("Dinámica1").DisplayNullString = False


Propiedad ErrorString

Objeto PivotTable: Devuelve o establece la cadena que se muestra en las celdas que contienen errores cuando la propiedad DisplayErrorString tiene el valor True. El valor predeterminado es la cadena vacía (""). String de Lectura/Escritura.

Objeto ODBCError: Devuelve la cadena de error ODBC. String de sólo lectura.


Ejemplo de la propiedad ErrorString

Este ejemplo hace que la tabla dinámica muestre un guión en las celdas que contienen errores.

With Worksheets(1).PivotTables("Dinámica1")

.ErrorString = "-"

.DisplayErrorString = True

End With


Propiedad NullString

Devuelve o establece la cadena que se muestra en las celdas que contienen el valor nulo cuando la propiedad DisplayNullString presenta el valor True. El valor predeterminado es la cadena vacía (""). String de Lectura/Escritura.


Ejemplo de la propiedad NullString

Este ejemplo hace que la tabla dinámica muestre “NA” en las celdas que contienen valores nulos.

With Worksheets(1).PivotTables("Dinámica1")

.NullString = "NA"

.DisplayNullString = True

End With


Propiedad ShowAllItems

True si se muestran todos los elementos de la tabla dinámica, aunque no contengan datos de resumen. El valor predeterminado es False. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowAllItems

Este ejemplo hace que la tabla dinámica muestre todas las filas del campo Mes, incluidos los meses que no tienen datos.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Mes").ShowAllItems = True


Propiedad SubtotalHiddenPageItems

True si los elementos de los campos de páginas ocultos de la tabla dinámica se incluyen en los subtotales de filas y columnas, totales de bloques y totales generales. El valor predeterminado es False. Boolean de Lectura/Escritura.


Ejemplo de la propiedad SubtotalHiddenPageItems

Este ejemplo establece que los elementos de campos de páginas ocultos de la tabla Dinámica1 de la hoja uno se excluyan de los subtotales.

Worksheets(1).PivotTables("Dinámica1").SubtotalHiddenPageItems = True


Propiedad PageFieldOrder

Devuelve o establece el orden en que los campos de páginas se agregan al diseño de la tabla dinámica. Puede ser una de las siguientes constantes XlOrder: xlDownThenOver o xlOverThenDown. La constante predeterminada es xlDownThenOver. Long de Lectura/Escritura.


Ejemplo de la propiedad PageFieldOrder

Este ejemplo hace que la tabla dinámica dibuje tres campos de páginas en un fila antes de empezar la siguiente.

With Worksheets(1).PivotTables("Dinámica1")

.PageFieldOrder = xlOverThenDown

.PageFieldWrapCount = 3

End With


Propiedad PageFieldWrapCount

Devuelve o establece el número de campos de páginas que tiene la tabla dinámica en cada fila o cada columna. Long de Lectura/Escritura.


Ejemplo de la propiedad PageFieldWrapCount

Este ejemplo hace que la tabla dinámica dibuje tres campos de páginas en un fila antes de empezar la siguiente.

With Worksheets(1).PivotTables("Dinámica1")

.PageFieldOrder = xlOverThenDown

.PageFieldWrapCount = 3

End With


Propiedad CacheIndex

Devuelve o establece el número de índice de la caché de la tabla dinámica. Long de Lectura/Escritura.

Comentarios

Si establece la propiedad CacheIndex de manera que una tabla dinámica use la caché para una segunda tabla, los campos de la primera tabla dinámica deberán ser un subconjunto válido de los campos de la segunda.


Ejemplo de la propiedad CacheIndex

Este ejemplo define la caché de la tabla dinámica llamada “Dinámica1” como la caché de la tabla dinámica llamada “Dinámica2”.

Worksheets(1).PivotTables("Dinámica1").CacheIndex = _

Worksheets(1).PivotTables("Dinámica2").CacheIndex


Propiedad RecordCount

Devuelve el número de registros de la caché de la tabla dinámica o el número de registros de caché que contienen el elemento especificado. Long de sólo lectura.


Ejemplo de la propiedad RecordCount

Este ejemplo muestra el número de registros de caché que contienen “Kiwi” en el campo “Productos”.

MsgBox Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Productos").PivotItems("Kiwi").RecordCount


Propiedad RefreshOnFileOpen

True si la caché o la tabla de consulta de la tabla dinámica se actualiza de forma automática cada vez que se abre el libro. El valor predeterminado es False. Boolean de Lectura/Escritura.

Comentarios

Las tablas de consulta y la tablas dinámicas no se actualizan de forma automática al abrir el libro utilizando el método Open en Visual Basic. Utilice el método Refresh para actualizar los datos al abrir el libro.


Ejemplo de la propiedad RefreshOnFileOpen

Este ejemplo hace que la caché de la tabla dinámica se actualice automáticamente cada vez que se abra el libro.

ActiveWorkbook.PivotCaches(1).RefreshOnFileOpen = True


Propiedad EnableRefresh

True si el usuario puede actualizar la caché o la tabla de consulta de la tabla dinámica. El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

La propiedad RefreshOnFileOpen se pasa por alto si la propiedad EnableRefresh tiene el valor False.


Ejemplo de la propiedad EnableRefresh

Este ejemplo establece que la tabla dinámica no pueda actualizarse.

Worksheets(1).PivotTables("Dinámica1") _

.PivotCache.EnableRefresh = False


Propiedad BackgroundQuery

True si las consultas de la tabla dinámica o la tabla de consulta se llevan a cabo de forma asíncrona (en segundo plano). Boolean de Lectura/Escritura.


Ejemplo de la propiedad BackgroundQuery

Este ejemplo hace que las consultas de la tabla dinámica se realicen en segundo plano.

Worksheets(1).PivotTables("Dinámica1").PivotCache.BackgroundQuery = True


Propiedad OptimizeCache

True si la caché de la tabla dinámica se optimiza cuando se genera. El valor predeterminado es False. Boolean de Lectura/Escritura.

Comentarios

La optimización de la caché produce consultas adicionales y degrada el rendimiento inicial de la tabla dinámica.


Ejemplo de la propiedad OptimizeCache

Este ejemplo hace que la caché de la tabla dinámica se optimice cuando se genera.

Worksheets(1).PivotTables("Dinámica1") _

.PivotCache.OptimizeCache = True


Propiedad Tag

Devuelve o establece una cadena guardada con la tabla dinámica. String de Lectura/Escritura.


Ejemplo de la propiedad Tag

Este ejemplo establece la propiedad Tag de la tabla dinámica.

Worksheets(1).PivotTables("Dinámica1").Tag = "Ventas de productos por región"


Propiedad MemoryUsed

Objeto Application: devuelve la cantidad de memoria, en bytes, que Microsoft Excel está usando actualmente. Long de sólo lectura.

Objeto PivotCache o PivotField: devuelve la cantidad de memoria, en bytes, que actualmente está usando el objeto. Long de sólo lectura.


Ejemplo de la propiedad MemoryUsed

Este ejemplo presenta un cuadro de mensaje que muestra el número de bytes que actualmente usa Microsoft Excel.

MsgBox "Microsoft Excel usa actualmente " & _

Application.MemoryUsed & " bytes"


Propiedad DragToColumn

True si es posible arrastrar el campo de tabla dinámica a la posición de la columna. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DragToColumn

Este ejemplo impide que el campo Año sea arrastrado a la posición de la columna.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Año").DragToColumn = False


Propiedad DragToHide

True si el campo puede ocultarse al arrastrarlo fuera de la tabla dinámica. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DragToHide

Este ejemplo impide que el campo Año sea arrastrado fuera de la tabla dinámica.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Año").DragToHide = False


Propiedad DragToPage

True si es posible arrastrar el campo a la posición de la página. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DragToPage

Este ejemplo impide que el campo Año se arrastre a la posición de la página.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Año").DragToPage = False


Propiedad DragToRow

True si es posible arrastrar el campo a la posición de la fila. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad DragToRow

Este ejemplo impide que el campo Año sea arrastrado a la posición de la fila.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Año").DragToRow = False


Propiedad EnableDrilldown

True si el traspaso de detalles está habilitado. El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

Cuando se establece esta propiedad para una tabla dinámica, también se establece para todos sus campos.


Ejemplo de la propiedad EnableDrilldown

Este ejemplo desactiva el traspaso de detalles para todos los campos de la tabla dinámica.

Worksheets(1).PivotTables("Dinámica1").EnableDrilldown = False


Propiedad EnableFieldDialog

True si el cuadro de diálogo Campo de la tabla dinámica está disponible cuando el usuario hace doble clic en el campo de la tabla dinámica. El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

Si establece esta propiedad para una tabla dinámica, también lo establecerá para todos sus campos.


Ejemplo de la propiedad EnableFieldDialog

Este ejemplo desactiva el cuadro de diálogo Campo de la tabla dinámica para el campo Año.

Worksheets(1).PivotTables("Dinámica1") _

.PivotFields("Año").EnableFieldDialog = False


Propiedad EnableWizard

True si está disponible el Asistente para tablas dinámicas. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableWizard

Este ejemplo desactiva el Asistente para tablas dinámicas para la tabla llamada “Dinámica1”.

Worksheets(1).PivotTables("Dinámica1").EnableWizard = False


Propiedad IsCalculated

True si el elemento o el campo de tabla dinámica es un elemento o un campo calculado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad IsCalculated

Este ejemplo desactiva el cuadro de diálogo Campo de la tabla dinámica si la tabla contiene campos calculados.

set td = Worksheets(1).PivotTables("Dinámica1")

For Each fld in td.PivotFields

If fld.IsCalculated Then td.EnableFieldDialog = False

Next


Método PivotCaches

Devuelve un conjunto PivotCaches que representa todas las cachés de tabla dinámica del libro especificado. Es de sólo lectura.

Sintaxis

expresión.PivotCaches

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


Ejemplo del método PivotCaches

Este ejemplo hace que la caché de la tabla dinámica se actualice automáticamente cada vez que se abra el libro.

ActiveWorkbook.PivotCaches(1).RefreshOnFileOpen = True


Método Refresh

Actualiza la tabla de consulta o la caché de tabla dinámica.

Sintaxis

expresión.Refresh(BackgroundQuery)

expresión   Requerida. Una expresión que devuelve un objeto PivotCache o QueryTable.

BackgroundQuery   Variant opcional. Sólo se usa con tablas de consulta. True para que el control se devuelva al procedimiento en el momento en que se efectúe una conexión con base de datos y se ejecute la consulta (la consulta se actualiza en segundo plano). False para que el control se devuelva al procedimiento solamente cuando todos los datos se hayan extraído a la hoja de cálculo. Si no se especifica este argumento, el valor de la propiedad BackgroundQuery determinará el modo de consulta.

Comentarios

Los siguientes comentarios son aplicables al objeto QueryTable.

El método Refresh hace que Microsoft Excel se conecte con la fuente de datos de la tabla de consulta, ejecute la consulta SQL y devuelva los datos al rango de destino de la tabla de consulta. Hasta que no se llame a este método, la tabla de consulta no se comunicará con la fuente de datos.

Cuando Microsoft Excel efectúe la conexión con la fuente de datos ODBC, usará la cadena de conexión especificada por la propiedad Connection. Si la cadena de conexión especificada no tiene los valores necesarios, el administrador de controladores de ODBC o el controlador de ODBC (o ambos) mostrará cuadros de diálogos modales para solicitar al usuario la información necesaria. Si la propiedad DisplayAlerts tiene el valor False, no se mostrarán cuadros de diálogo y el método Refresh fallará con la excepción Información de conexión insuficiente.

Cuando Microsoft Excel establezca una conexión satisfactoria, almacenará la cadena de conexión completada para que no se muestren más mensajes en las siguientes llamadas al método Refresh durante la misma sesión de edición. Puede obtener la cadena de conexión completa examinando el valor de la propiedad Connection.

Cuando se haya efectuado la conexión con la base de datos, se validará la consulta SQL. Si la consulta no es válida, el método Refresh fallará con la excepción Error de sintaxis SQL.

Si la consulta necesita parámetros, el conjunto Parameters debe iniciarse con información de enlace de parámetros. Si no se encuentran suficientes parámetros, el método Refresh fallará con la excepción Error de parámetro. Si los parámetros se definen de manera que soliciten sus valores, se mostrarán cuadros de diálogo con independencia del valor de la propiedad DisplayAlerts. Si el usuario cancela el cuadro de diálogo de un parámetro, el método Refresh se detendrá y devolverá False. Si hay parámetros adicionales enlazados con el conjunto Parameters, se hará caso omiso de dichos parámetros.

El método Refresh devuelve True si la consulta se inicia o completa con éxito; devuelve False si el usuario cancela un cuadro de diálogo de conexión o parámetros.

Para saber si el número de filas encontradas excede del número de filas disponibles en la hoja de cálculo, examine la propiedad FetchedRowOverflow. Esta propiedad se inicia cada vez que se llama al método Refresh.


Ejemplo del método Refresh

Este ejemplo actualiza la tabla dinámica.

Worksheets(1).PivotTables(1).PivotCache.Refresh


Propiedad SelectionMode

Devuelve o establece el modo de selección estructurada de la tabla dinámica. Puede ser una de las siguientes constantes XlPTSelectionMode: xlLabelOnly, xlDataAndLabel o xlDataOnly. Long de Lectura/Escritura.


Ejemplo de la propiedad SelectionMode

Este ejemplo activa el modo de selección estructurada y después establece la tabla dinámica uno para que sólo se permita la selección de datos.

Application.PivotTableSelection = True

Worksheets(1).PivotTables(1).SelectionMode = xlDataOnly


Método CalculatedFields

Devuelve un conjunto CalculatedFields que representa todos los campos calculados de la tabla dinámica especificada. Es de sólo lectura.

Sintaxis

expresión.CalculatedFields

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.


Ejemplo del método CalculatedFields

Este ejemplo impide que los campos calculados se arrastren a la posición de la fila.

For Each fld in Worksheets(1).PivotTables("Dinámica1").CalculatedFields

fld.DragToRow = False

Next


Método CalculatedItems

Devuelve un conjunto CalculatedItems que representa todos los elementos calculados de la tabla dinámica especificada. Es de sólo lectura.

Sintaxis

expresión.CalculatedItems

expresión   Requerida. Una expresión que devuelve un objeto PivotField.


Ejemplo del método CalculatedItems

Este ejemplo crea una lista de los campos calculados y sus fórmulas.

set td = Worksheets(1).PivotTables(1)

For Each ci In td.PivotFields("Ventas").CalculatedItems

r = r + 1

With Worksheets(2)

.Cells(r, 1).Value = ci.Name

.Cells(r, 2).Value = ci.Formula

End With

Next


Método PivotCache

Devuelve un objeto PivotCache que representa la caché de la tabla dinámica especificada. Es de sólo lectura.

Sintaxis

expresión.PivotCache

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.


Ejemplo del método PivotCache

Este ejemplo hace que la caché de la tabla dinámica se optimice cuando se genera.

Worksheets(1).PivotTables("Dinámica1") _

.PivotCache.OptimizeCache = True


Propiedad ShowChartTipNames

True si en los gráficos se muestran nombres de sugerencia de gráfico. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowChartTipNames

Este ejemplo desactiva los nombres y valores de las sugerencias de gráficos.

With Application

.ShowChartTipNames = False

.ShowChartTipValue = False

End With


Propiedad ShowChartTipValues

True si en los gráficos se muestran valores de sugerencia de gráfico. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowChartTipValues

Este ejemplo desactiva los nombres y valores de las sugerencias de gráficos.

With Application

.ShowChartTipNames = False

.ShowChartTipValue = False

End With


Propiedad ShowWindow

True si el gráfico incrustado se muestra en otra ventana. El objeto Chart que se use con esta propiedad debe hacer referencia a un gráfico incrustado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowWindow

Este ejemplo hace que el gráfico incrustado se muestre en otra ventana.

Worksheets(1).ChartObjects(1).Chart.ShowWindow = True


Método AcceptAllChanges

Acepta todos los cambios del libro compartido especificado.

Sintaxis

expresión.AcceptAllChanges

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


Ejemplo del método AcceptAllChanges

Este ejemplo acepta todos los cambios del libro activo.

ActiveWorkbook.AcceptAllChanges


Método RejectAllChanges

Rechaza todos los cambios del libro compartido especificado.

Sintaxis

expresión.RejectAllChanges

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


Ejemplo del método RejectAllChanges

Este ejemplo rechaza todos los cambios del libro activo.

ActiveWorkbook.RejectAllChanges


Propiedad AcceptLabelsInFormulas

True si pueden usarse rótulos en las fórmulas de hoja de cálculo. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AcceptLabelsInFormulas

Este ejemplo establece la propiedad AcceptLabelsInFormulas del libro activo y después define las celdas B1:D1 de la hoja de cálculo uno como rótulos de las columnas.

ActiveWorkbook.AcceptLabelsInFormulas = True

Worksheets(1).Range("b1:d1").FormulaLabel = xlColumnLabels


Método Add (objeto Validation)

Agrega validación de datos al rango especificado.

Sintaxis

expresión.Add(Type, AlertStyle, Operator, Formula1, Formula2)

expresión   Requerida. Una expresión que devuelve un objeto Validation.

Type   Long requerido. El tipo de validación. Puede ser una de las siguientes constantes XlDVType: xlValidateCustom, xlValidateDate, xlValidateDecimal, xlValidateInputOnly, xlValidateList, xlValidateTextLength, xlValidateTime o xlValidateWholeNumber.

AlertStyle   Variant opcional. El estilo de alerta de validación. Puede ser una de las siguientes constantes XlDVAlertStyle: xlValidAlertInformation, xlValidAlertStop o xlValidAlertWarning.

Operator    Variant opcional. El operador de validación de datos. Puede ser una de las siguientes constantes XlFormatConditionOperator: xlBetween, xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween o xlNotEqual.

Formula1   Variant opcional. La primera parte de la ecuación de validación de datos.

Formula2   Variant opcional. La segunda parte de la validación de datos cuando Operator es xlBetween o xlNotBetween (de lo contrario se ignora este argumento)

Comentarios

El método Add requiere diferentes argumentos, que dependen del tipo de validación, como se muestra en la siguiente tabla:

Tipo de validación	Argumentos
xlValidateCustom	Minimum se requiere, Maximum se pasa por alto. Minimum debe contener una expresión cuyo resultado sea True si la entrada de datos es válida y False en caso contrario.
xlInputOnly	AlertStyle, Minimum o Maximum no pueden usarse.
xlValidateList	Minimum se requiere, Maximum se pasa por alto. Minimum debe contener una lista de valores delimitados por comas o una referencia de hoja de cálculo a dicha lista.
xlValidateWholeNumber, xlValidateDate, xlValidateDecimal, xlValidateTextLength o xlValidateTime	Debe especificarse Formula1 o Formula2 o bien pueden especificarse ambos.


Ejemplo del método Add (objeto Validation)

Este ejemplo agrega validación de datos a la celda E5.

With Range("e5").Validation

.Add Type:=xlValidateWholeNumber, _

AlertStyle:= xlValidAlertStop, _

Operator:=xlBetween, Formula1:="5", Formula2:="10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Introduzca un entero comprendido entre cinco y diez"

.ErrorMessage = "Debe introducir un entero comprendido entre cinco y diez"

End With


Propiedad AlertStyle

Devuelve el estilo de alerta de validación. Puede ser una de las siguientes constantes XlDVAlertStyle: xlValidAlertInformation, xlValidAlertStop o xlValidAlertWarning. Long de sólo lectura.

Comentarios

Use el método Add para establecer el estilo de alerta de un rango. Si el rango ya tiene validación de datos, use el método Modify para cambiar el estilo de alerta.


Ejemplo de la propiedad AlertStyle

Este ejemplo muestra el estilo de alerta de la celda E5.

MsgBox Range("e5").Validation.AlertStyle


Propiedad AutoScaleFont

True si el tamaño de la fuente de texto del objeto cambia cuando cambia el tamaño del objeto. El valor predeterminado es True. Variant de Lectura/Escritura.


Ejemplo de la propiedad AutoScaleFont

Este ejemplo agrega un título al gráfico incrustado uno de la hoja activa y hace que la fuente del título conserve su tamaño cuando cambie el tamaño del gráfico.

With ActiveSheet.ChartObjects(1).Chart

.HasTitle = True

.ChartTitle.Text = "Ventas de 1996"

.ChartTitle.AutoScaleFont = False

End With


Propiedad BaseUnit

Devuelve o establece la unidad de base del eje de categorías especificado. Puede ser una de las siguientes constantes XlTimeUnit: xlDays, xlMonths o xlYears. Long de Lectura/Escritura.

Comentarios

Establecer esta propiedad no tiene un efecto visible si la propiedad CategoryType del eje especificado tiene el valor xlCategoryScale. Sin embargo, el valor establecido se conserva y tiene efecto cuando la propiedad CategoryType tiene el valor xlTimeScale.

No podrá establecer esta propiedad para un eje de valores.


Ejemplo de la propiedad BaseUnit

Este ejemplo establece que el eje de categorías del gráfico incrustado uno de la hoja uno sea una escala tiempo, con meses como unidad de base.

With Worksheets(1).ChartObjects(1).Chart

With .Axes(xlCategory)

.CategoryType = xlTimeScale

.BaseUnit = xlMonths

End With

End With


Propiedad BaseUnitIsAuto

True si Microsoft Excel elige las unidades de base apropiadas para el eje de categorías especificado. El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

No podrá establecer esta propiedad para un eje de valores.


Ejemplo de la propiedad BaseUnitIsAuto

Este ejemplo establece que el eje de categorías del gráfico incrustado uno de la hoja uno sea una escala tiempo, con unidades de base automáticas.

With Worksheets(1).ChartObjects(1).Chart

With .Axes(xlCategory)

.CategoryType = xlTimeScale

.BaseUnitIsAuto = True

End With

End With


Propiedad BubbleScale

Devuelve o establece el factor de escala para las burbujas del grupo de gráficos especificado. Puede ser un valor entero comprendido entre 0 (cero) y 300, que corresponde a un porcentaje del tamaño predeterminado. Sólo se aplica a gráficos de burbujas. Long de Lectura/Escritura.


Ejemplo de la propiedad BubbleScale

Este ejemplo establece el tamaño de las burbujas del grupo de gráficos uno como el 200% del tamaño predeterminado.

With Worksheets(1).ChartObjects(1).Chart

.ChartGroups(1).BubbleScale = 200

End With


Propiedad BubbleSizes

Devuelve o establece una cadena en notación de estilo A1 que hace referencia a las celdas de la hoja de cálculo que contienen la información de tamaño del gráfico de burbujas. Sólo se aplica a gráficos de burbujas. Variant de Lectura/Escritura.


Ejemplo de la propiedad BubbleSizes

Este ejemplo muestra la referencia de las celdas que contienen la información de tamaño del gráfico de burbujas.

MsgBox Worksheets(1).ChartObjects(1).Chart _

.SeriesCollection(1).BubbleSizes


Propiedad Build

Devuelve el número de versión de Microsoft Excel. Long de sólo lectura.

Comentarios

Normalmente es más seguro comprobar la propiedad Version, salvo si está seguro de que necesita saber el número de versión.


Ejemplo de la propiedad Build

Este ejemplo comprueba la propiedad Build.

If Application.Build > 2500 Then

' poner aquí un código de build

End If


Propiedad CategoryType

Devuelve o establece el tipo del eje de categorías. Puede ser una de las siguientes constantes XlCategoryType: xlCategoryScale, xlTimeScale o xlAutomaticScale. Long de Lectura/Escritura.

Comentarios

No podrá establecer esta propiedad para un eje de valores.


Ejemplo de la propiedad CategoryType

Este ejemplo establece que el eje de categorías del gráfico incrustado uno de la hoja uno sea una escala tiempo, con meses como unidad de base.

With Worksheets(1).ChartObjects(1).Chart

With .Axes(xlCategory)

.CategoryType = xlTimeScale

.BaseUnit = xlMonths

End With

End With


Propiedad ChartType

Devuelve o establece el tipo del gráfico. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlChartType:

Tipo de gráfico.	Descripción	Constante
Columna	Columna agrupada	xlColumnClustered
	Columna 3D agrupada	xl3DColumnClustered
	Columna apilada	xlColumnStacked
	Columna 3D apilada	xl3DColumnStacked
	Columna 100% apilada	xlColumnStacked100
	Columna 3D 100% apilada	xl3DColumnStacked100
	Columna 3D	xl3DColumn
Barra	Barra agrupada	xlBarClustered
	Barra 3D agrupada	xl3DBarClustered
	Barra apilada	xlBarStacked
	Barra 3D apilada	xl3DBarStacked
	Barra 100% apilada	xlBarStacked100
	Barra 3D 100% apilada	xl3DBarStacked100
Línea	Línea	xlLine
	Línea con marcadores	xlLineMarkers
	Línea apilada	xlLineStacked
	Línea apilada con marcadores	xlLineMarkersStacked
	Línea 100% apilada	xlLineStacked100
	Línea 100% apilada con marcadores	xlLIneMarkersStacked100
	Líneas 3D	xl3DLine
Circular	Circular	xlPie
	Circular seccionado	xlPieExploded
	Circular 3D	xl3Dpie
	Circular seccionado 3D	xl3DPieExploded
	Circular con subgráfico circular	xlPieOfPie
	Circular con subgráfico de barras	xlBarOfPie
XY (Dispersión)	Dispersión	xlXYScatter
	Dispersión con líneas optimizadas	xlXYScatterSmooth
	Dispersión con líneas optimizadas y sin marcadores de datos	xlXYScatterSmoothNoMarkers
	Dispersión con líneas	xlXYScatterLines
	Dispersión con líneas y sin marcadores de datos	xlXYScatterLinesNoMarkers
Burbujas	Burbujas	xlBubble
	Burbujas con efecto 3D	xlBubble3DEffect
Área	Área	xlArea
	Área 3D	xl3DArea
	Área apilada	xlAreaStacked
	Área 3D apilada	xl3DAreaStacked
	Área 100% apilada	xlAreaStacked100
	Área 3D 100% apilada	xl3DAreaStacked100
Anillos	Anillos	xlDoughnut
	Anillos seccionado	xlDoughnutExploded
Radial	Radial	xlRadar
	Radial con marcadores de datos	xlRadarMarkers
	Radial  relleno	xlRadarFilled
Superficie	Superficie 3D	xlSurface
	Superficie (vista superior)	xlSurfaceTopView
	Superficie 3D (trama)	xlSurfaceWireframe
	Superficie (vista superior de la trama)	xlSurfaceTopViewWireframe
Cotizaciones de bolsa	Máximos, mínimos, cierre	xlStockHLC
	Volumen, máximos, mínimos, cierre	xlStockVHLC
	Apertura, máximos, mínimos, cierre	xlStockOHLC
	Volumen, apertura, máximo, mínimo, cierre	xlStockVOHLC
Cilindro	Columna cilíndrica agrupada	xlCylinderColClustered
	Barra cilíndrica agrupada	xlCylinderBarClustered
	Columna cilíndrica apilada	xlCylinderColStacked
	Barra cilíndrica apilada	xlCylinderBarStacked
	Columna cilíndrica 100% apilada	xlCylinderColStacked100
	Barra cilíndrica 100% apilada	xlCylinderBarStacked100
	Columna cilíndrica 3D	xlCylinderCol
Cónica	Columna cónica agrupada	xlConeColClustered
	Barra cónica agrupada	xlConeBarClustered
	Columna cónica apilada	xlConeColStacked
	Barra cónica apilada	xlConeBarStacked
	Columna cónica 100% apilada	xlConeColStacked100
	Barra cónica 100% apilada	xlConeBarStacked100
	Columna cónica 3D	xlConeCol
Piramidal	Columna piramidal agrupada	xlPyramidColClustered
	Barra piramidal agrupada	xlPyramidBarClustered
	Columna piramidal apilada	xlPyramidColStacked
	Barra piramidal apilada	xlPyramidBarStacked
	Columna piramidal 100% apilada	xlPyramidColStacked100
	Barra piramidal 100% apilada	xlPyramidBarStacked100
	Columna piramidal 3D	xlPyramidCol


Ejemplo de la propiedad ChartType

Este ejemplo establece el tamaño del gráfico de burbujas del grupo de gráficos uno como el 200% del tamaño predeterminado si el gráfico es del tipo burbujas 3D.

With Worksheets(1).ChartObjects(1).Chart

If .ChartType = xlBubble Then

.ChartGroups(1).BubbleScale = 200

End If

End With


Método CircleInvalid

Rodea con un círculo los elementos no válidos de la hoja de cálculo.

Sintaxis

expresión.CircleInvalid

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.


Ejemplo del método CircleInvalid

Este ejemplo rodea con un círculo los elementos no válidos del rango A1:C10.

Worksheets(1).CircleInvalid


Método ClearCircles

Borra los círculos de los elementos no válidos de la hoja de cálculo.

Sintaxis

expresión.ClearCircles

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.

Comentarios

Use el método CircleInvalid para rodear con un círculo las celdas que contengan datos no válidos.


Ejemplo del método ClearCircles

Este ejemplo borra los círculos de los elementos no válidos de la hoja de cálculo uno.

Worksheets(1).ClearCircles


Propiedad DisplayPageBreaks

True si en la hoja de cálculo especificada se muestran los saltos de página (automáticos y manuales). Boolean de Lectura/Escritura.

Comentarios

No puede establecer esta propiedad si no tiene una impresora instalada.


Ejemplo de la propiedad DisplayPageBreaks

Este ejemplo hace que en la Hoja1 se muestren los saltos de página.

Worksheets("Hoja1").DisplayPageBreaks = True


Propiedad ErrorMessage

Devuelve o establece el mensaje de error de validación de datos. String de Lectura/Escritura.


Ejemplo de la propiedad ErrorMessage

Este ejemplo agrega validación de datos a la celda E5 y especifica los mensajes de entrada y de error.

With Range("e5").Validation

.Add Type:=xlValidateWholeNumber, _

AlertStyle:= xlValidAlertStop, _

Operator:=xlBetween, Formula1:="5", Formula2:="10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Introduzca un entero comprendido entre cinco y diez"

.ErrorMessage = "Debe introducir un entero comprendido entre cinco y diez"

End With


Propiedad FormulaLabel

Devuelve o establece el tipo de rótulo de fórmula del rango especificado. Puede ser xlNone si el rango no contiene rótulos o bien una de las siguientes constantes XlFormulaLabel: xlRowLabels, xlColumnLabels o xlMixedLabels. Variant de Lectura/Escritura.


Ejemplo de la propiedad FormulaLabel

Este ejemplo establece la propiedad AcceptLabelsInFormulas y después define las celdas B1:D1 como rótulos de columna.

ActiveWorkbook.AcceptLabelsInFormulas = True

Worksheets(1).Range("b1:d1").FormulaLabel = xlColumnLabels


Propiedad Has3DEffect

True si la serie tiene aspecto tridimensional. Sólo se aplica a gráficos de burbujas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Has3DEffect

Este ejemplo da aspecto tridimensional a la serie uno del gráfico de burbujas incrustado.

With Worksheets(1).ChartObjects(1).Chart

.SeriesCollection(1).Has3DEffect = True

End With


Propiedad InputMessage

Devuelve o establece el mensaje de entrada de validación de datos. String de Lectura/Escritura.


Ejemplo de la propiedad InputMessage

Este ejemplo agrega validación de datos a la celda E5 y especifica los mensajes de entrada y de error.

With Range("e5").Validation

.Add Type:=xlValidateWholeNumber, _

AlertStyle:= xlValidAlertStop, _

Operator:=xlBetween, Formula1:="5", Formula2:="10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Introduzca un entero comprendido entre cinco y diez"

.ErrorMessage = "Debe introducir un entero comprendido entre cinco y diez"

End With


Propiedad InsideHeight

Devuelve el alto interior del área de trazado, en puntos. Double de sólo lectura.

Comentarios

El área de trazado de esta medida no incluye a los rótulos de los ejes. La propiedad Height del área de trazado usa el rectángulo de límite que incluye a los rótulos de los ejes.


Ejemplo de la propiedad InsideHeight

Este ejemplo dibuja un rectángulo de puntos alrededor del interior del área de trazado en el Gráfico1.

With Charts("gráfico1")

Set pa = .PlotArea

With .Shapes.AddShape(msoShapeRectangle, _

pa.InsideLeft, pa.InsideTop, pa.InsideWidth, pa.InsideHeight)

.Fill.Transparency = 1

.Line.DashStyle = msoLineDashDot

End With

End With


Propiedad InsideLeft

Devuelve la distancia desde el borde del gráfico al borde interior izquierdo del área de trazado, en puntos. Double de sólo lectura.

Comentarios

El área de trazado de esta medida no incluye a los rótulos de los ejes. La propiedad Left del área de trazado usa el rectángulo de límite que incluye a los rótulos de los ejes.


Ejemplo de la propiedad InsideLeft

Este ejemplo dibuja un rectángulo de puntos alrededor del interior del área de trazado en el Gráfico1.

With Charts("gráfico1")

Set pa = .PlotArea

With .Shapes.AddShape(msoShapeRectangle, _

pa.InsideLeft, pa.InsideTop, pa.InsideWidth, pa.InsideHeight)

.Fill.Transparency = 1

.Line.DashStyle = msoLineDashDot

End With

End With


Propiedad InsideTop

Devuelve la distancia desde el borde del gráfico al borde interior superior del área de trazado, en puntos. Double de sólo lectura.

Comentarios

El área de trazado de esta medida no incluye a los rótulos de los ejes. La propiedad Top del área de trazado usa el rectángulo de límite que incluye a los rótulos de los ejes.


Ejemplo de la propiedad InsideTop

Este ejemplo dibuja un rectángulo de puntos alrededor del interior del área de trazado en el Gráfico1.

With Charts("gráfico1")

Set pa = .PlotArea

With .Shapes.AddShape(msoShapeRectangle, _

pa.InsideLeft, pa.InsideTop, pa.InsideWidth, pa.InsideHeight)

.Fill.Transparency = 1

.Line.DashStyle = msoLineDashDot

End With

End With


Propiedad InsideWidth

Devuelve el ancho interior del área de trazado, en puntos. Double de sólo lectura.

Comentarios

El área de trazado de esta medida no incluye a los rótulos de los ejes. La propiedad Width del área de trazado usa el rectángulo de límite que incluye a los rótulos de los ejes.


Ejemplo de la propiedad InsideWidth

Este ejemplo dibuja un rectángulo de puntos alrededor del interior del área de trazado en el Gráfico1.

With Charts("gráfico1")

Set pa = .PlotArea

With .Shapes.AddShape(msoShapeRectangle, _

pa.InsideLeft, pa.InsideTop, pa.InsideWidth, pa.InsideHeight)

.Fill.Transparency = 1

.Line.DashStyle = msoLineDashDot

End With

End With


Propiedad PlotBy

Devuelve o establece el modo en que se usan los valores de las filas o las columnas como serie de datos del gráfico. Puede ser una de las siguientes constantes XlRowCol: xlColumns o xlRows. Long de Lectura/Escritura.


Ejemplo de la propiedad PlotBy

Este ejemplo hace que los datos del gráfico incrustado se tracen por columnas.

Worksheets(1).ChartObjects(1).Chart.PlotBy = xlColumns


Propiedad ProtectChartObject

True si no es posible mover, cambiar de tamaño o eliminar el marco del gráfico incrustado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ProtectChartObject

Este ejemplo protege el gráfico incrustado uno de la hoja uno.

Worksheets(1).ChartObjects(1).ProtectChartObject = True


Propiedad ProtectData

True si el usuario no puede modificar las fórmulas de las series. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ProtectData

Este ejemplo protege los datos del gráfico incrustado uno de la hoja uno.

Worksheets(1).ChartObjects(1).Chart.ProtectData = True


Propiedad ProtectFormatting

True si el usuario no puede modificar el formato del gráfico. Boolean de Lectura/Escritura.

Comentarios

Si esta propiedad es True, el comando Objeto del menú Formato estará desactivado y no será posible agregar, mover, cambiar de tamaño o eliminar elementos del gráfico.


Ejemplo de la propiedad ProtectFormatting

Este ejemplo protege el formato del gráfico incrustado uno de la hoja uno.

Worksheets(1).ChartObjects(1).Chart.ProtectFormatting = True


Propiedad ProtectGoalSeek

True si el usuario no puede modificar los puntos de datos del gráfico con acciones del Mouse (ratón). Boolean de Lectura/Escritura.


Ejemplo de la propiedad ProtectGoalSeek

Este ejemplo protege los puntos de datos del gráfico incrustado uno de la hoja uno.

Worksheets(1).ChartObjects(1).Chart.ProtectGoalSeek = True


Propiedad ProtectSelection

True si no es posible seleccionar los elementos del gráfico. Boolean de Lectura/Escritura.

Comentarios

Si esta propiedad es True, no será posible agregar formas al gráfico ni ocurrirán eventos clic y doble clic para los elementos del gráfico.


Ejemplo de la propiedad ProtectSelection

Este ejemplo impide la selección de elementos en el gráfico uno de la hoja uno.

Worksheets(1).ChartObjects(1).Chart.ProtectSelection = True


Propiedad ShrinkToFit

True si el texto se reduce automáticamente para ajustarse al ancho de columna disponible. Devuelve Null si la propiedad no tiene el mismo valor para todas las celdas del rango especificado. Variant de Lectura/Escritura.


Ejemplo de la propiedad ShrinkToFit

Este ejemplo hace que el texto de la fila uno se reduzca de forma automática para ajustarse al ancho de columna disponible.

Rows(1).ShrinkToFit = True


Propiedad SplitValue

Devuelve o establece el valor mínimo que separa dos secciones de un subgráfico circular de gráfico circular o de un subgráfico de barras de gráfico circular. Variant de Lectura/Escritura.


Ejemplo de la propiedad SplitValue

El ejemplo debe ejecutarse en un gráfico circular con subgráfico circular o de barras. El ejemplo divide las dos secciones del gráfico por valores, combinando todos los valores inferiores a 10 en el gráfico circular principal y mostrándolos en la sección secundaria.

With Worksheets(1).ChartObjects(1).Chart.ChartGroups(1)

.SplitType = xlSplitByValue

.SplitValue = 10

.VaryByCategories = True

End With


Propiedad SplitType

Devuelve o establece cómo se separan las dos secciones de un subgráfico circular de gráfico circular o de un subgráfico de barras de gráfico circular. Puede ser una de las siguientes constantes XlChartSplitType: xlSplitByPosition, xlSplitByPercentValue, xlSplitByCustomSplit o xlSplitByValue. Long de Lectura/Escritura.


Ejemplo de la propiedad SplitType

El ejemplo debe ejecutarse en un gráfico circular con subgráfico circular o de barras. El ejemplo divide las dos secciones del gráfico por valores, combinando todos los valores inferiores a 10 en el gráfico circular principal y mostrándolos en la sección secundaria.

With Worksheets(1).ChartObjects(1).Chart.ChartGroups(1)

.SplitType = xlSplitByValue

.SplitValue = 10

.VaryByCategories = True

End With


Propiedad SecondPlotSize

Devuelve o establece el tamaño de la sección secundaria de un gráfico circular con subgráfico circular o de barras, en forma de porcentaje del tamaño del gráfico circular principal. Puede ser un valor comprendido entre 5 y 200. Long de Lectura/Escritura.


Ejemplo de la propiedad SecondPlotSize

El ejemplo debe ejecutarse en un gráfico circular con subgráfico circular o de barras. El ejemplo divide las dos secciones del gráfico por valores, combinando todos los valores inferiores a 10 en el gráfico circular principal y mostrándolos en la sección secundaria. La sección secundaria tiene el 50% del tamaño del gráfico circular principal.

With Worksheets(1).ChartObjects(1).Chart.ChartGroups(1)

.SplitType = xlSplitByValue

.SplitValue = 10

.VaryByCategories = True

.SecondPlotSize = 50

End With


Propiedad SecondaryPlot

True si el punto está en la sección secundaria de un subgráfico circular de gráfico circular o de un subgráfico de barras de gráfico circular. Se aplica únicamente a los puntos de subgráficos circulares de gráficos circulares o de subgráficos de barras de gráficos circulares. Boolean de Lectura/Escritura.


Ejemplo de la propiedad SecondaryPlot

El ejemplo debe ejecutarse en un gráfico circular con subgráfico circular o de barras. El ejemplo mueve el punto cuatro de la sección secundaria del gráfico.

With Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)

.Points(4).SecondaryPlot = True

End With


Propiedad Validation

Devuelve el objeto Validation que representa la validación de datos para el rango especificado. Es de sólo lectura.


Ejemplo de la propiedad Validation

Este ejemplo causa que la validación de datos en la celda E5 permita valores en blanco.

Range("e5").Validation.IgnoreBlank = True


Propiedad WorksheetFunction

Devuelve el objeto WorksheetFunction. Es de sólo lectura.


Ejemplo de la propiedad WorksheetFunction

El ejemplo muestra el resultado de aplicar la función de hoja de cálculo Min al rango A1:A10.

Set miRango = Worksheets("Hoja1").Range("A1:C10")

respuesta = Application.WorksheetFunction.Min(miRango)

MsgBox respuesta


Propiedad IgnoreBlank

True si la validación de datos del rango permite valores en blanco. Boolean de Lectura/Escritura.

Comentarios

Si la propiedad IgnoreBlank tiene el valor True, los datos del celda se considerarán válidos si la celda está vacía o bien si una celda a la que hace referencia una de las propiedades MinVal o MaxVal está vacía.


Ejemplo de la propiedad IgnoreBlank

Este ejemplo hace que la validación de datos de la celda E5 permita valores en blanco.

Range("e5").Validation.IgnoreBlank = True


Propiedad InCellDropdown

True si la validación de datos muestra una lista desplegable que contiene los valores aceptables. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad se pasa por alto si el tipo de validación no es xlValidateList.

Use el argumento Minimum del método Add o Modify del objeto Validation para especificar el rango que contiene los datos válidos.


Ejemplo de la propiedad InCellDropdown

Este ejemplo agrega validación de datos a la celda E5. El rango A1:A10 contiene los valores aceptables de la celda y en ésta se muestra una lista desplegable de los valores aceptables.

With Range("e5").Validation

.Add xlValidateList, xlValidAlertStop, xlBetween, "=$A$1:$A$10"

.InCellDropdown = True

End With


Método Modify (objeto Validation)

Modifica la validación de datos para un rango.

Sintaxis

expresión.Modify(Type, AlertStyle, Minimum, Maximum)

expresión   Requerido. Una expresión que devuelve un objeto Validation.

Type   Long requerido. El tipo de validación. Puede ser una de las siguientes constantes XlDVType: xlValidateCustom, xlValidateDate, xlValidateDecimal, xlValidateInputOnly, xlValidateList, xlValidateTextLength, xlValidateTime o xlValidateWholeNumber.

AlertStyle   Variant opcional. El estilo de alerta de validación. Puede ser una de las siguientes constantes XlDVAlertStyle: xlValidAlertInformation¡, xlValidAlertStop o xlValidAlertWarning.

Operator   Optional Variant. The data validation operator. Can be one of the following XlFormatConditionOperator constants: xlBetween, xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween, or xlNotEqual.

Formula1   Optional Variant. The first part of the data validation equation.

Formula2   Optional Variant. The second part of the data validation when Operator is xlBetween or xlNotBetween (otherwise, this argument is ignored).

Comentarios

El método Modify requiere diferentes argumentos, que dependen del tipo de validación, como se muestra en la siguiente tabla:

Tipo de validación	Argumentos
xlValidateCustom	Formula1 se requiere; Formula2 se pasa por alto. Formula1 debe contener una expresión cuyo resultado sea True si la introducción de datos es válida y False en caso contrario.
xlInputOnly	AlertStyle, Formula1 y Formula2 no pueden usarse.
xlValidateList	Formula1 se requiere; Formula2 se pasa por alto. Formula1 debe contener una lista de valores limitados por comas o una referencia de hoja de cálculo a dicha lista.
xlValidateWholeNumber, xlValidateDate, xlValidateDecimal, xlValidateTextLength o xlValidateTime	Debe especificarse Formula1 o Formula2, o bien ambos.


Ejemplo del método Modify (objeto Validation)

Este ejemplo cambia la validación de datos para la celda E5.

Range("e5").Validation _

.Modify xlValidateList, xlValidAlertStop, xlBetween, "=$A$1:$A$10"


Propiedad Name

Devuelve o establece el nombre del objeto. El nombre de un objeto Range es un objeto Name. Para el resto de los tipos de objetos, el nombre es una cadena.


Ejemplo de la propiedad Name

Este ejemplo muestra el nombre del estilo uno de la hoja activa, primero en el lenguaje de la macro y después en el lenguaje del usuario.

With ActiveWorkbook.Styles(1)

MsgBox "El nombre del estilo es " & .Name

MsgBox "El nombre adaptado del estilo es " & .NameLocal

End With


Propiedad ActiveSheet

Devuelve un objeto que representa la hoja activa (la hoja en primer plano) del libro activo o de la ventana o el libro especificado. Devuelve Nothing si no hay ninguna hoja activa. Es de sólo lectura.

Comentarios

Si no especifica un calificador de objeto, la propiedad devolverá la hoja activa del libro activo.

Si un libro aparece en más de una ventana, es posible que la propiedad ActiveSheet tenga un valor diferente en cada ventana.


Ejemplo de la propiedad ActiveSheet

Este ejemplo muestra el nombre de la hoja activa.

MsgBox "El nombre de la hoja activa es " & ActiveSheet.Name


Propiedad Address

Objeto Hyperlink (sintaxis 1): Devuelve o establece la dirección del documento objetivo. String de Lectura/Escritura.

Objeto Range (sintaxis 2): Devuelve la referencia del rango en el lenguaje de la macro. String de sólo lectura.

Sintaxis 1

expresión.Address

Sintaxis 2

expresión.Address(RowAbsolute, ColumnAbsolute, ReferenceStyle, External, RelativeTo)

expresión   Requerida. Una expresión que devuelve un objeto Hyperlink (sintaxis 1) o un objeto Range (sintaxis 2).

RowAbsolute   Variant opcional. True para que se devuelva la parte de fila de la referencia en forma de referencia absoluta. El valor predeterminado es True.

ColumnAbsolute   Variant opcional. True para que se devuelva la parte de columna de la referencia en forma de referencia absoluta. El valor predeterminado es True.

ReferenceStyle   Variant opcional. Puede ser una de las siguientes constantes XlReferenceStyle: xlA1 o xlR1C1. Use xlA1 para devolver un estilo de referencia A1.Use xlR1C1 para devolver un estilo de referencia F1C1. El valor predeterminado es xlA1.

External   Variant opcional. True para que se devuelva una referencia externa. False para que se devuelva una referencia local. El valor predeterminado es False.

RelativeTo   Variant opcional. Si RowAbsolute y ColumnAbsolute tienen el valor False y ReferenceStyle es xlR1C1, deberá incluir un punto inicial para la referencia relativa. Este argumento es un objeto Range que define el punto inicial.

Comentarios

Si la referencia contiene más de una celda, se aplicarán RowAbsolute y ColumnAbsolute a todas las filas y columnas.


Ejemplo de la propiedad Address

El ejemplo siguiente muestra cuatro representaciones distintas de la misma dirección de celda en la Hoja1. Los comentarios del ejemplo son las direcciones que se mostrarán en los cuadros de mensaje.

Set mc = Worksheets("Hoja1").Cells(1, 1)

MsgBox mc.Address()                              ' $A$1

MsgBox mc.Address(RowAbsolute:=False)            ' $A1

MsgBox mc.Address(ReferenceStyle:=xlR1C1)        ' R1C1

MsgBox mc.Address(ReferenceStyle:=xlR1C1, _

RowAbsolute:=False,     _

ColumnAbsolute:=False,  _

RelativeTo:=Worksheets(1).Cells(3, 3))        ' R[-2]C[-2]


Propiedad AddressLocal

Devuelve la referencia del rango en el lenguaje del usuario. String de sólo lectura.

Sintaxis

expresión.AddressLocal(RowAbsolute, ColumnAbsolute, ReferenceStyle, External, RelativeTo)

RowAbsolute   Variant opcional. True para que se devuelva la parte de fila de la referencia en forma de referencia absoluta. El valor predeterminado es True.

ColumnAbsolute   Variant opcional. True para que se devuelva la parte de columna de la referencia en forma de referencia absoluta. El valor predeterminado es True.

ReferenceStyle   Variant opcional. Puede ser una de las siguientes constantes XlReferenceStyle: xlA1 o xlR1C1. Use xlA1 para devolver un estilo de referencia A1. Use xlR1C1 para devolver un estilo de referencia F1C1. El valor predeterminado es xlA1.

External   Variant opcional. True para que se devuelva una referencia externa. False para que se devuelva una referencia local. El valor predeterminado es False.

RelativeTo   Variant opcional. Si RowAbsolute y ColumnAbsolute tienen el valor False y ReferenceStyle es xlR1C1, deberá incluir un punto inicial para la referencia relativa. Este argumento es un objeto Range que define el punto inicial.

Comentarios

Si la referencia contiene más de una celda, se aplicarán RowAbsolute y ColumnAbsolute a todas las filas y columnas.


Ejemplo de la propiedad AddressLocal

Supongamos que el ejemplo siguiente se creó en la versión en inglés de EE.UU. de Microsoft Excel y que se ejecutó en la versión alemana. El ejemplo muestra el texto que aparecerá en los comentarios.

Set mc = Worksheets(1).Cells(1, 1)

MsgBox mc.AddressLocal()                         ' $A$1

MsgBox mc.AddressLocal(RowAbsolute:=False)       ' $A1

MsgBox mc.AddressLocal(ReferenceStyle:=xlR1C1)   ' Z1S1

MsgBox mc.AddressLocal(ReferenceStyle:=xlR1C1, _

    RowAbsolute:=False, _

    ColumnAbsolute:=False, _

    RelativeTo:=Worksheets(1).Cells(3, 3))       ' Z(-2)S(-2)


Propiedad Author

Devuelve o establece el autor del comentario. String de sólo lectura.


Ejemplo de la propiedad Author

Este ejemplo elimina todos los comentarios agregados por Pedro García en la hoja activa.

For Each c In ActiveSheet.Comments

If c.Author = "Pedro García" Then c.Delete

Next


Propiedad Caller

Devuelve información acerca de cómo se llamó a Visual Basic (para obtener más información vea la sección Comentarios).

Sintaxis

expresión.Caller(Index)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Index   Variant opcional. Un índice para la matriz. Este argumento se emplea únicamente si la propiedad devuelve una matriz (para obtener más información, vea la sección Comentarios).

Comentarios

Esta propiedad devuelve información acerca de cómo se llamó a Visual Basic, tal como se muestra en la siguiente tabla.

Llamador	Valor devuelto
Una función personalizada introducida en una sola celda.	Un objeto Range que especifica la celda.
Una función personalizada que forma parte de una fórmula matricial de un rango de celdas.	Un objeto Range que especifica el rango de celdas.
Una macro Auto_abrir, Auto_cerrar, Auto_activar o Auto_desactivar.	El nombre del documento en forma de texto.
Una macro establecida por una de las propiedades OnDoubleClick o OnEntry	El nombre del identificador del objeto gráfico o de la referencia de celda (si existe) al que se aplica la macro.
El cuadro de diálogo Macro (menú Herramientas) o cualquier llamador no descrito más arriba	El valor de error #¡REF!.


Ejemplo de la propiedad Caller

Este ejemplo muestra información acerca de cómo se llamó a Visual Basic.

Select Case TypeName(Application.Caller)

Case "Rango"

v = Application.Caller.Address

Case "Cadena"

v = Application.Caller

Case "Error"

v = "Error"

Case Else

v = "desconocido"

End Select

MsgBox "llamador = " & v


Propiedad Caption

Devuelve un texto con uno de los siguientes significados, que depende del tipo de objeto al que se aplique. String de Lectura/Escritura, excepto lo que se indica en la siguiente tabla.

Tipo de objeto	Significado
Application	El nombre que aparece en la barra de título de la ventana principal de Microsoft Excel. Si no establece un nombre o si establece el nombre como el valor Empty, esta propiedad devolverá "Microsoft Excel". Es de sólo lectura en Macintosh.
AxisTitle	El texto del título del eje.
Characters	El texto de este rango de caracteres.
ChartTitle	El texto del título del gráfico.
DataLabel	El texto del rótulo de datos
Window	El nombre que aparece en la barra de título de la ventana del documento. Si establece un nombre, podrá usarlo como índice para la propiedad Windows (vea el segundo ejemplo).


Ejemplo de la propiedad Caption

Este ejemplo asigna un nombre personalizado que aparece en la barra de título de la ventana principal de Microsoft Excel (sólo puede hacerse en Windows; en Macintosh, la propiedad Caption del objeto Application es de sólo lectura).

Application.Caption = "Sistema de reservas Aerolíneas Cielo Azul"

Este ejemplo establece el nombre de la primera ventana del libro como "Balance de situación consolidada". Después el nombre se empleará como índice de la propiedad Windows.

ActiveWorkbook.Windows(1).Caption = "Balance de situación consolidada"

ActiveWorkbook.Windows("Balance de situación consolidada") _

.ActiveSheet.Calculate


Propiedad Charts

Objeto Application: Devuelve un conjunto Sheets que representa todas las hojas de gráficos del libro activo. Es de sólo lectura.

Objeto Workbook: Devuelve un conjunto Sheets que representa todas las hojas de gráficos del libro especificado. Es de sólo lectura.

Si esta propiedad se usa sin un calificador de objeto devolverá todas las hojas de gráficos del libro activo.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Charts

Este ejemplo establece el texto del título del Gráfico1.

With Charts("Gráfico1")

.HasTitle = True

.ChartTitle.Text = "Ventas del primer trimestre"

End With

Este ejemplo elimina todas las hojas de gráficos del libro activo.

ActiveWorkbook.Charts.Delete

Este ejemplo oculta el Gráfico1, el Gráfico3 y el Gráfico5.

Charts(Array("Gráfico1", "Gráfico3", "Gráfico5")).Visible = False


Propiedad ClipboardFormats

Devuelve los formatos que se encuentran actualmente en el Portapapeles, en forma de una matriz de valores numéricos. Para determinar si un formato en particular está presente en el Portapapeles, compare cada elemento de la matriz con la constante apropiada, mostrada en la sección Comentarios.

Sintaxis

expresión.ClipboardFormats(Index)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Index   Variant opcional. El elemento de matriz que se devuelve. Si este argumento se omite, la propiedad devolverá la matriz completa de los formatos que estén en el Portapapeles. Si desea más información, vea la sección Comentarios.

Comentarios

Esta propiedad está disponible tanto en Windows como en Macintosh. Es posible que algunos formatos sólo estén disponibles en Macintosh o en Windows.

Esta propiedad devuelve una matriz de valores numéricos. Para saber si un formato en particular está presente en el Portapapeles, compare cada elemento de la matriz con una de las siguientes constantes XlClipboardFormat:

xlClipboardFormatBIFF xlClipboardFormatBIFF2 xlClipboardFormatBIFF3 xlClipboardFormatBIFF4 xlClipboardFormatBinary xlClipboardFormatBitmap xlClipboardFormatCGM xlClipboardFormatCSV xlClipboardFormatDIF xlClipboardFormatDspText xlClipboardFormatEmbeddedObject xlClipboardFormatEmbedSource xlClipboardFormatLink xlClipboardFormatLinkSource xlClipboardFormatLinkSourceDesc xlClipboardFormatMovie xlClipboardFormatNative	xlClipboardFormatObjectDesc xlClipboardFormatObjectLink xlClipboardFormatOwnerLink xlClipboardFormatPICT xlClipboardFormatPrintPICT xlClipboardFormatRTF xlClipboardFormatScreenPICT xlClipboardFormatStandardFont xlClipboardFormatStandardScale xlClipboardFormatSYLK xlClipboardFormatTable xlClipboardFormatText xlClipboardFormatToolFace xlClipboardFormatToolFacePICT xlClipboardFormatVALU xlClipboardFormatWK1


Ejemplo de la propiedad ClipboardFormats

Este ejemplo muestra un cuadro de mensaje si el Portapapeles contiene un objeto con formato de texto enriquecido (RTF). Puede crear un objeto RTF copiando texto de un documento de Word.

aFmts = Application.ClipboardFormats

For Each fmt In aFmts

If fmt = xlClipboardFormatRTF Then

MsgBox "El Portapapeles contiene texto enriquecido"

End If

Next


Propiedad Colors

Devuelve o establece los colores de la paleta del libro. La paleta tiene 56 elementos, representado cada uno por un valor RGB. Variant de Lectura/Escritura.

Sintaxis

expresión.Colors(Index)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Index   Variant opcional. El número del color (de 1 a 56). Si este argumento no se especifica, el método devolverá una matriz de los 56 colores de la paleta.


Ejemplo de la propiedad Colors

Este ejemplo establece que la paleta de colores del libro activo sea la misma que la paleta de LIBRO2.XLS.

ActiveWorkbook.Colors = Workbooks("LIBRO2.XLS").Colors

Este ejemplo establece el color cinco de la paleta del libro activo.

ActiveWorkbook.Colors(5) = RGB(255, 0, 0)


Propiedad Comment

Objeto Range: Devuelve un objeto Comment que representa el comentario correspondiente a la celda de la esquina superior izquierda del rango. Es de sólo lectura.

Objeto Scenario: Devuelve o establece el comentario correspondiente al escenario. El comentario no puede exceder de 255 caracteres. String de Lectura/Escritura.


Ejemplo de la propiedad Comment

Este ejemplo establece el comentario del escenario uno de la Hoja1.

Worksheets("Hoja1").Scenarios(1).Comment = _

"Peor caso ventas julio de 1993"


Propiedad Comments

Devuelve un conjunto Comments que representa todos los comentarios del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Comments

Este ejemplo elimina todos los comentarios agregados por Pedro García en la hoja activa.

For Each c In ActiveSheet.Comments

If c.Author = "Pedro García" Then c.Delete

Next


Propiedad DisplayAlerts

True si Microsoft Excel muestra ciertos mensajes de alerta durante la ejecución de una macro. Boolean de Lectura/Escritura.

Comentarios

El valor predeterminado es True. Defina la propiedad como False para evitar que los mensajes de error y mensajes de alerta interrumpan la ejecución de una macro y para que, si un mensaje necesita una respuesta, Microsoft Excel elija la predeterminada.

Si establece la propiedad como False, Microsoft Excel no la volverá a establecer como True una vez finalizada la macro. Cuando la macro termine de ejecutarse, haga que vuelva a establecer la propiedad como True.

Nota   Este comportamiento es diferente al de las versiones anteriores de Microsoft Excel. En versiones anteriores, la propiedad DisplayAlerts se restablecía automáticamente a True al finalizar la ejecución de la macro. Si tiene un código antiguo que espera este comportamiento, cámbielo para que establezca de forma explícita esta propiedad como True al finalizar.


Ejemplo de la propiedad DisplayAlerts

Este ejemplo cierra Libro1.xls y no pregunta al usuario si desea guardar los cambios. No se guardarán los cambios efectuados en Libro1.xls.

Application.DisplayAlerts = False

Workbooks("LIBRO1.XLS").Close

Application.DisplayAlerts = True

Este ejemplo suprime el mensaje que aparece cuando se inicia un canal DDE a una aplicación que no se está ejecutando.

Application.DisplayAlerts = False

númeroCanal = Application.DDEInitiate( _

app:="WinWord", _

topic:="C:\WINWORD\CARTAMOD.DOC")

Application.DisplayAlerts = True

Application.DDEExecute númeroCanal, "[FILEPRINT]"

Application.DDETerminate númeroCanal

Application.DisplayAlerts = True


Propiedad DisplayNoteIndicator

True si en las celdas que contienen notas se muestran sugerencias de celda y contienen indicadores de notas (pequeños puntos en la esquina superior derecha). Boolean de Lectura/Escritura.


Ejemplo de la propiedad DisplayNoteIndicator

Este ejemplo oculta los indicadores de notas.

Application.DisplayNoteIndicator = False


Propiedad End

Devuelve un objeto Range que representa la celda situada al final de la región que contiene el rango fuente. Equivale a presionar las teclas FIN+FLECHA ARRIBA, FIN+FLECHA ABAJO, FIN+FLECHA IZQUIERDA o FIN+FLECHA DERECHA. Es de sólo lectura.

Sintaxis

expresión.End(Direction)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Direction   Long requerido. La dirección de desplazamiento. Puede ser una de las siguientes constantes XlDirection: xlToLeft, xlToRight, xlUp o xlDown.


Ejemplo de la propiedad End

Este ejemplo selecciona la celda del principio de la columna B en la región que contiene la celda B4.

Range("B4").End(xlUp).Select

Este ejemplo selecciona la celda del final de la fila 4 en la región que contiene la celda B4.

Range("B4").End(xlToRight).Select

Este ejemplo amplía la selección desde la celda B4 hasta la última celda de la fila cuatro que contenga datos.

Worksheets("Hoja1").Activate

Range("B4", Range("B4").End(xlToRight)).Select


Propiedad FileConverters

Devuelve información acerca de los convertidores de archivos instalados. Devuelve Null si no hay convertidores instalados. Variant de sólo lectura.

Sintaxis

expresión.FileConverters(Index1, Index2)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Index1   Variant opcional. El nombre largo del convertidor, incluida la cadena de caracteres de búsqueda de tipo de archivo en Windows (por ejemplo "Archivos Lotus 1-2-3 (*.wk*)").

Index2   Variant opcional. La ruta de acceso de la DLL del convertidor o del recurso de código.

Comentarios

Si no especifica los argumentos del índice, la propiedad devolverá una matriz con información acerca de todos los convertidores de archivos instalados. Cada fila de la matriz contiene información acerca de un solo convertidor, como se muestra en la siguiente tabla.

Columna	Contenido
1	El nombre largo del convertidor.
2	La ruta de acceso de la DLL del convertidor o del recurso de código.
3	La cadena de búsqueda de la extensión de archivo en Windows o el tipo de archivo de cuatro caracteres en Macintosh.


Ejemplo de la propiedad FileConverters

Este ejemplo muestra un mensaje si está instalado el convertidor de archivos de Multiplan.

installedCvts = Application.FileConverters

foundMultiplan = False

If Not IsNull(installedCvts) Then

For matrizFila = 1 To UBound(installedCvts, 1)

If installedCvts(matrizFila, 1) Like "*Multiplan*" Then

foundMultiplan = True

Exit For

End If

Next matrizFila

End If

If foundMultiplan = True Then

MsgBox "El convertidor de Multiplan está instalado"

Else

MsgBox "El convertidor de Multiplan no está instalado"

End If


Propiedad Height

Devuelve o establece el alto de un objeto, en puntos. Long de Lectura/Escritura, excepto lo que se indica en la siguiente tabla.

Comentarios

El significado de la propiedad Height depende del objeto especificado.

Tipo de objeto	Alto
Application	El alto de la ventana principal de la aplicación. En Macintosh siempre es igual al alto total, en puntos, de la pantalla. Si en Macintosh se establece un valor diferente, no tendrá ningún efecto. En Windows, si la ventana está minimizada, esta propiedad es de sólo lectura y se refiere al alto del icono. Si la ventana está maximizada, no se puede establecer la propiedad. Use la propiedad WindowState para saber el estado de la ventana.
Axis, LegendEntry, LegendKey	El alto del objeto. Es de sólo lectura.
Range	El alto del rango. Es de sólo lectura.
Window	El alto de la ventana principal de la aplicación. Use la propiedad UsableHeight para determinar el tamaño máximo de la ventana. No podrá establecer la propiedad si la ventana está maximizada o minimizada. Use la propiedad WindowState para saber el estado de la ventana.
ChartArea, ChartObject, Legend, OLEObject, PlotArea, Shape, ShapeRange	El alto del objeto.


Ejemplo de la propiedad Height

Este ejemplo establece el alto del gráfico incrustado.

Worksheets("Hoja1").ChartObjects(1).Height = 288


Propiedad International

Devuelve información acerca de la configuración actual de país e internacional. Variant de sólo lectura.

Sintaxis

expresión.International(Index)

Elementos

expresión   Requerida. Una expresión que devuelve un objeto Application.

Index   Long requerido. La configuración que se devuelve. Puede ser una de las siguientes constantes XlApplicationInternational:

Index	Tipo	Significado
xlCountryCode	Long	Versión de país de Microsoft Excel.
xlCountrySetting	Long	Configuración actual de país en el Panel de control de Windows o bien el número de país según lo determina el software de sistema de Macintosh.
xlDecimalSeparator	String	Separador decimal.
xlThousandsSeparator	String	Separador de cero o de millares.
xlListSeparator	String	Separador de lista.
xlUpperCaseRowLetter	String	Letra de fila en mayúsculas (para las referencias de estilo F1C1).
xlUpperCaseColumnLetter	String	Letra de columna en mayúsculas.
xlLowerCaseRowLetter	String	Letra de fila en minúsculas.
xlLowerCaseColumnLetter	String	Letra de columna en minúsculas.
xlLeftBracket	String	Carácter empleado en lugar del corchete izquierdo ([) en las referencias relativas de estilo F1C1.
xlRightBracket	String	Carácter empleado en lugar del corchete derecho ([) en las referencias de estilo F1C1.
xlLeftBrace	String	Carácter que se emplea en lugar de la llave izquierda ({) en los literales de matriz.
xlRightBrace	String	Carácter que se emplea en lugar de la llave derecha ({) en los literales de matriz.
xlColumnSeparator	String	Carácter que se emplea para separar las columnas en los literales de matriz.
xlRowSeparator	String	Carácter que se emplea para separar las filas en los literales de matriz.
xlAlternateArraySeparator	String	Separador de elementos de matriz alternativo que se empleará si el separador actual es el mismo que el separador decimal.
xlDateSeparator	String	Separador de fecha (/ en la versión de EE.UU.).
xlTimeSeparator	String	Separador de hora (: en la versión de EE.UU.).
xlYearCode	String	Símbolo de año en los formatos numéricos (a en la versión en castellano).
xlMonthCode	String	Símbolo de mes (m en la versión en castellano).
xlDayCode	String	Símbolo de día (d en la versión en castellano).
xlHourCode	String	Símbolo de hora (h en la versión en castellano).
xlMinuteCode	String	Símbolo de minuto (m en la versión en castellano).
xlSecondCode	String	Símbolo de segundo (s en la versión en castellano).
xlCurrencyCode	String	Símbolo de moneda (Pts en la versión en castellano).
xlGeneralFormatName	String	Nombre del formato numérico General.
xlCurrencyDigits	Long	Número de decimales para el formato de moneda.
xlCurrencyNegative	Long	Formato de moneda para los valores negativos: 0 = ($ x) o (x$) 1 = -$ x o -x $ 2 = $-x o x-$ 3 = $ x- o x $- Tenga en cuenta que la posición del símbolo de moneda está determinada por xlCurrencyBefore.
xlNoncurrencyDigits	Long	Número de decimales para los formatos que no son de moneda.
xlMonthNameChars	Long	Siempre devuelve tres, por compatibilidad con versiones anteriores. En Microsoft Excel 97, los nombres de mes cortos se obtienen de Microsoft Windows y pueden tener cualquier longitud.
xlWeekdayNameChars	Long	Siempre devuelve tres, por compatibilidad con versiones anteriores. En Microsoft Excel 97, los nombres de día de semana cortos se obtienen de Microsoft Windows y pueden tener cualquier longitud.
xlDateOrder	Long	Orden los elementos de la fecha: 0 = mes-día-año 1 = día-mes-año 2 = año-mes-día
xl24HourClock	Boolean	True si la hora tiene formato de 24 horas, False si tiene formato de 12 horas.
xlNonEnglishFunctions	Boolean	True si las funciones no se muestran en inglés.
xlMetric	Boolean	True si se usa el sistema métrico, False si se usa el sistema de medidas inglés.
xlCurrencySpaceBefore	Boolean	True si se agrega un espacio antes del símbolo de moneda.
xlCurrencyBefore	Boolean	True si el símbolo de moneda precede a los valores monetarios, False si los sigue.
xlCurrencyMinusSign	Boolean	True si se emplea un signo menos para los números negativos, False si se emplean paréntesis.
xlCurrencyTrailingZeros	Boolean	True si se muestran los ceros a la derecha en los valores monetarios cero.
xlCurrencyLeadingZeros	Boolean	True si se muestran los ceros a la izquierda en los valores monetarios cero.
xlMonthLeadingZero	Boolean	True si se muestra un cero a la izquierda de los meses (cuando éstos se muestran como números).
xlDayLeadingZero	Boolean	True si se muestra un cero a la izquierda de los días.
xl4DigitYears	Boolean	True si los años tienen cuatro dígitos, False si tienen dos.
xlMDY	Boolean	True si el orden de las fechas que tienen formato largo es mes-día-año, False si el orden es día-mes-año.
xlTimeLeadingZero	Boolean	True si se muestra un cero a la izquierda de las horas.


Ejemplo de la propiedad International

Este ejemplo muestra el separador decimal internacional.

MsgBox "El separador decimal es " & _

Application.International(xlDecimalSeparator)


Propiedad Left

Devuelve o establece la posición del objeto especificado, en puntos. Long de Lectura/Escritura, excepto lo que se indica en la siguiente tabla.

Comentarios

El significado de la propiedad Left depende del objeto especificado.

Objeto	Significado
Application	Distancia desde el borde izquierdo de la pantalla hasta el borde izquierdo de la ventana principal de Microsoft Excel.
Axis, LegendEntry, LegendKey	La distancia desde el borde izquierdo del objeto al borde izquierdo del área de gráfico. Es de sólo lectura.
Range	La distancia desde el borde izquierdo de la columna A al borde izquierdo del rango. Si el rango no es continuo, se usará la primera área. Si el rango tiene más de una columna de ancho, se usará la columna del extremo izquierdo del rango. Es de sólo lectura.
Window	La distancia desde el borde izquierdo del área de cliente al borde izquierdo de la ventana.
AxisTitle, ChartArea, ChartTitle, DataLabel, Legend, OLEObject, PlotArea, Shape, ShapeRange	La distancia desde el borde izquierdo del objeto al borde izquierdo de la columna A (en una hoja de cálculo) o al borde izquierdo del área del gráfico (en un gráfico).
Si la ventana está maximizada, Application.Left devolverá un número negativo que varía según el ancho del borde la ventana. Si define Application.Left como 0 (cero), la ventana será un poquito más pequeña de lo que sería si la ventana de la aplicación estuviera maximizada. En otras palabras, si Application.Left es 0 (cero), el borde izquierdo de la ventana principal de Microsoft Excel apenas podrá verse en la pantalla.

En Macintosh, Application.Left siempre es 0 (cero). Si en Macintosh se establece un valor diferente, no tendrá ningún efecto.

En Windows, si la ventana de Microsoft Excel está minimizada, Application.Left controlará la posición del icono de la ventana.


Ejemplo de la propiedad Left

Este ejemplo alinea el borde izquierdo del gráfico incrustado con el borde izquierdo de la columna B.

With Worksheets("Hoja1")

.ChartObjects(1).Left = .Columns("B").Left

End With


Método PrintQuality

Devuelve o establece la calidad de impresión.

Sintaxis

expresión.PrintQuality(Index)

expresión   Requerida. Una expresión que devuelve un objeto PageSetup.

Index   Variant opcional. La calidad de impresión horizontal (1) o vertical (2). Es posible que algunas impresoras no acepten la calidad de impresión vertical. Si no se especifica este argumento, el método PrintQuality devolverá una matriz de dos elementos, que contiene la calidad de impresión horizontal y vertical (o podrá definirse como dicha matriz).


Ejemplo del método PrintQuality

Este ejemplo establece la calidad de impresión en una impresora con píxeles que no tienen forma cuadrada. La matriz especifica calidad de impresión horizontal y vertical. El ejemplo puede producir un error, según el controlador de impresora que se use.

Worksheets("Hoja1").PageSetup.PrintQuality = Array(240, 140)

Este ejemplo muestra el valor actual de la calidad de impresión horizontal.

MsgBox "La calidad de impresión horizontal es " & _

Worksheets("Hoja1").PageSetup.PrintQuality(1)


Método Recipients

Devuelve o establece los destinatarios de la lista de distribución.

Sintaxis

expresión.Recipients(Index)

expresión   Requerida. Una expresión que devuelve un objeto RoutingSlip.

Index   Variant opcional. El destinatario. Si no se especifica este argumento, el método devolverá una matriz que contiene todos los destinatarios (o podrá definirse como dicha matriz)

Comentarios

El orden de la lista de destinatarios define el orden de entrega si la opción de entrega de distribución es xlOneAfterAnother.

Si una lista de distribución está en curso, sólo se devolverán o establecerán aquellos destinatarios que todavía no hayan recibido y distribuido el documento.


Ejemplo del método Recipients

Este ejemplo envía el libro abierto a tres destinatarios, de manera consecutiva.

With ThisWorkbook

.HasRoutingSlip = True

With .RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Martín Del Valle", "Pedro García", "Felipe Díaz")

.Subject = "Éste es el libro"

.Message = "Éste es el libro. ¿Qué te parece?"

.ReturnWhenDone = True

End With

.Route

End With


Propiedad RegisteredFunctions

Devuelve información acerca de las funciones de las bibliotecas de recursos dinámicos (DLL) o los recursos de código registrados mediante las funciones de macro REGISTER o REGISTER.ID. Variant de sólo lectura.

Sintaxis

expresión.RegisteredFunctions(Index1, Index2)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Index1   Variant opcional. El nombre de la DLL o del recurso de código.

Index2   Variant opcional. El nombre de la función.

Comentarios

Si no especifica los argumentos del índice, la propiedad devolverá una matriz con una lista de todas las funciones registradas. Cada fila de la matriz contiene información acerca de una sola función, como se muestra en la siguiente tabla.

Columna	Contenido
1	El nombre de la DLL o del recurso de código.
2	El nombre del procedimiento de la DLL o el recurso de código.
3	Cadenas que especifican los tipos de datos de los valores devueltos y el número de los argumentos y sus tipos de datos.
Si no hay ninguna función registrada, la propiedad devolverá Null.


Ejemplo de la propiedad RegisteredFunctions

Este ejemplo crea una lista de funciones registradas, situando una función registrada en cada fila de la Hoja1. La columna A contiene la ruta completa y el nombre de archivo de la DLL o el recurso de código, la columna B contiene el nombre de la función y la columna C el código de tipo de datos del argumento.

laMatriz = Application.RegisteredFunctions

If IsNull(laMatriz) Then

MsgBox "No hay funciones registradas"

Else

For i = LBound(laMatriz) To UBound(laMatriz)

For j = 1 To 3

Worksheets("Hoja1").Cells(i, j).Formula = laMatriz(i, j)

Next j

Next i

End If


Método ReplacementList

Devuelve la matriz de reemplazos de Autocorrección.

Sintaxis

expresión.ReplacementList(Index)

expresión   Requerida. Una expresión que devuelve un objeto AutoCorrect.

Index   Variant opcional. La fila de la matriz de reemplazos de Autocorrección que se devuelve. Se devuelve como una matriz de una sola dimensión con dos elementos. El primero de ellos es el texto de la columna 1 y el segundo es el texto de la columna 2. Si Index está fuera de rango, el método fallará.

Si no se especifica Index, el método devolverá una matriz de dos dimensiones. Cada fila de la matriz contiene un solo reemplazo, como se muestra en la siguiente tabla.

Columna	Contenido
1	El texto que se reemplaza.
2	El texto de reemplazo.
Comentarios

Use el método AddReplacement para agregar un elemento a la lista de reemplazos.


Ejemplo del método ReplacementList

Este ejemplo busca en la lista de reemplazos “Temperatura” y muestra el elemento de reemplazo, si existe.

repl = Application.AutoCorrect.ReplacementList

For x = 1 To UBound(repl)

If repl(x, 1) = "Temperatura" Then MsgBox repl(x, 2)

Next


Propiedad Subject

Devuelve o establece el tema del formulario o la lista de distribución. String de Lectura/Escritura.

Comentarios

El tema del objeto RoutingSlip se usa como tema de los mensajes de correo empleados para distribuir el libro.

En Macintosh, PowerTalk necesita que se especifique un tema para poder enviar el formulario.


Ejemplo de la propiedad Subject

Este ejemplo establece el tema de una lista de distribución del libro abierto. Para ejecutar el ejemplo, necesita tener instalado Microsoft Exchange para Windows o Microsoft Mail para Macintosh.

With ThisWorkbook

.HasRoutingSlip = True

With .RoutingSlip

.Delivery = xlOneAfterAnother

.Recipients = Array("Martín Del Valle", "Pedro García", "Felipe Díaz")

.Subject = "Éste es el libro"

.Message = "Éste es el libro. ¿Qué te parece?"

.ReturnWhenDone = True

End With

.Route

End With

Este ejemplo establece el tema de un formulario en el sistema de correo PowerTalk (sólo Macintosh). Para poder ejecutar este ejemplo, deberá tener instalado el sistema de correo PowerTalk.

With Workbooks(1)

.HasMailer = True

With .Mailer

.Subject = "Éste es el libro"

.ToRecipients = Array("Juan")

.CCRecipients = Array("Andrés", "Felipe")

.BCCRecipients = Array("Catalina")

.Enclosures = Array("ArchPrue")

End With

.SendMailer

End With


Propiedad Top

Devuelve o establece la posición del objeto especificado, en puntos. Long de Lectura/Escritura, excepto lo que se indica en la siguiente tabla.

Comentarios

El significado de la propiedad Top depende del objeto especificado.

Objeto	Significado
Application	Distancia desde el borde superior de la pantalla hasta el borde superior de la ventana principal de Microsoft Excel. En Windows, si la ventana de la aplicación está minimizada, esta propiedad controla la posición del icono de la ventana (en cualquier parte de la pantalla). En Macintosh, su valor siempre es 0 (cero); si asigna otro valor no tendrá efecto.
Range	La distancia desde el borde superior de la fila 1 hasta el borde superior del rango. Si el rango no es continuo, se usará la primera área. Si el rango tiene más de una fila de alto, se usará la fila superior (con el menor número) del rango. Es de sólo lectura.
Window	La distancia desde el borde superior de la ventana hasta el borde superior del área utilizable (debajo de los menús, cualquier barra de herramientas que esté fijada a la parte superior y la barra de fórmulas). No podrá establecer esta propiedad para una ventana maximizada. Use la propiedad WindowState para devolver o establecer el estado de la ventana.
Axis, AxisTitle, ChartArea, ChartObject, ChartTitle, DataLabel, Legend, LegendEntry, LegendKey, OLEObject, PlotArea	La distancia desde el borde superior del objeto al borde superior de la fila 1 (en una hoja de cálculo) o a la parte superior del área del gráfico (en un gráfico). Es de sólo lectura para Axis, LegendEntry y LegendKey.


Ejemplo de la propiedad Top

Este ejemplo alinea la parte superior del gráfico incrustado con la parte superior de la fila dos.

With Worksheets("Hoja1")

.ChartObjects(1).Top = .Rows(2).Top

End With

Este ejemplo amplía la ventana activa hasta el tamaño máximo disponible (suponiendo que no esté maximizada).

With ActiveWindow

.WindowState = xlNormal

.Top = 1

.Left = 1

.Height = Application.UsableHeight

.Width = Application.UsableWidth

End With


Propiedad Width

Devuelve o establece el ancho de un objeto, en puntos. Long de Lectura/Escritura, excepto lo que se indica en la siguiente tabla.

Comentarios

El significado de la propiedad Width depende del objeto especificado.

Objeto	Descripción
Application	La distancia desde el borde izquierdo de la ventana de la aplicación hasta el borde derecho de la ventana.
Axis, LegendEntry, LegendKey	El ancho del objeto. Es de sólo lectura.
Range	El ancho del rango.
Window	El ancho de la ventana. Use la propiedad UsableWidth para determinar el tamaño máximo de la ventana. No podrá establecer la propiedad si la ventana está maximizada o minimizada. Use la propiedad WindowState para saber el estado de la ventana.
ChartArea, ChartObject, Legend, OLEObject, PlotArea, Shape, ShapeRange, Window	El ancho del objeto.
En Macintosh Application.Width siempre es igual al ancho total, en puntos, de la pantalla. Si se establece en otro valor, no tendrá ningún efecto.

En Windows, si la ventana está minimizada, Application.Width es de sólo lectura y devuelve al ancho del icono de la ventana.


Ejemplo de la propiedad Width

Este ejemplo establece el ancho del gráfico incrustado.

Worksheets("Hoja1").ChartObjects(1).Width = 360

Este ejemplo amplía la ventana activa hasta el tamaño máximo disponible (suponiendo que no esté maximizada).

With ActiveWindow

.WindowState = xlNormal

.Top = 1

.Left = 1

.Height = Application.UsableHeight

.Width = Application.UsableWidth

End With


Propiedad Worksheets

Objeto Application: Devuelve un conjunto Sheets que representa todas las hojas de cálculo del libro activo. Es de sólo lectura.

Objeto Workbook: Devuelve un conjunto Sheets que representa todas las hojas de cálculo del libro especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

Si esta propiedad se usa sin un calificador de objeto, devolverá todas las hojas de cálculo del libro activo.

Esta propiedad no devuelve hojas de macro; use una de las propiedades Excel4MacroSheets o Excel4IntlMacroSheets para que se devuelvan dichas hojas.


Ejemplo de la propiedad Worksheets

Este ejemplo muestra el valor de la celda A1 de la Hoja1 del libro activo.

MsgBox Worksheets("Hoja1").Range("A1").Value

Este ejemplo muestra el nombre de cada una de las hojas de cálculo del libro activo.

For Each hc In Worksheets

MsgBox hc.Name

Next hc

Este ejemplo agrega una nueva hoja al libro activo y, a continuación, establece el nombre de la hoja.

Set nuevaHoja = Worksheets.Add

nuevaHoja.Name = "Presupuesto"


Método Quit

Sale de Microsoft Excel. No ejecuta ninguna macro Auto_cerrar antes de salir.

Sintaxis

expresión.Quit

expresión   Requerida. Una expresión que devuelve un objeto Application.

Comentarios

Cuando use este método, si hay algún libro abierto, Microsoft Excel mostrará un cuadro de diálogo para preguntarle si desea guardar los cambios. Esto puede evitarse guardando todos los libros antes de usar el método o bien estableciendo la propiedad DisplayAlerts como False. Si la propiedad tiene el valor False, Microsoft Excel no mostrará el cuadro de diálogo antes de salir de los libros no guardados; saldrá sin guardarlos.

Si establece la propiedad Saved de un libro como True sin guardarlo antes, Microsoft Excel saldrá sin preguntar si desea guardar los cambios.


Ejemplo del método Quit

Este ejemplo guarda todos los libros abiertos y, a continuación, sale de Microsoft Excel.

For Each l In Application.Workbooks

l.Save

Next l

Application.Quit


Método Subtotals

Devuelve o establece los subtotales que se muestran con el campo especificado. Válido sólo para campos que no son de datos.

Sintaxis

expresión.Subtotals(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Index   Variant opcional. Un índice de subtotal, como se muestra en la siguiente tabla. Si este argumento se omite, el método Subtotals devolverá una matriz con un valor Boolean por cada subtotal.

Index	Significado
1	Automático
2	Suma
3	Contar
4	Promedio
5	Máx
6	Mín
7	Producto
8	Contar números
9	Desvest
10	Desvestp
11	Var
12	Varp
Si un índice es True, el campo mostrará el subtotal correspondiente. Si el índice 1 (Automático) es True, todos los demás valores se establecerán como False.


Ejemplo del método Subtotals

Este ejemplo configura el campo que contiene la celda activa para que muestre subtotales de Suma.

Worksheets("Hoja1").Activate

ActiveCell.PivotField.Subtotals(2) = True


Método Protect

Protege un gráfico o una hoja de cálculo (sintaxis 1) o bien un libro (sintaxis 2) para que no sea posible modificarlo.

Sintaxis 1

expresión.Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly)

Sintaxis 2

expresión.Protect(Password, Structure, Windows)

expresión   Requerida. Una expresión que devuelve un objeto Chart o Worksheet (sintaxis 1) o bien un objeto Workbook (sintaxis 2).

Password   Variant opcional. Una cadena que especifica la contraseña (en la que se distingue entre mayúsculas y minúsculas) de la hoja o el libro. Si este argumento se omite, podrá desproteger la hoja o el libro sin emplear una contraseña. De lo contrario, necesitará especificar la contraseña para desproteger la hoja de cálculo o el libro. Si olvida la contraseña, no podrá desproteger la hoja de cálculo ni el libro. Es conveniente guardar en un lugar seguro una lista de las contraseñas y nombres de los documentos correspondientes.

DrawingObjects   Variant opcional. True para que las formas estén protegidas. El valor predeterminado es False.

Contents   Variant opcional. True para que los contenidos estén protegidos. Para un gráfico, protege el gráfico completo. Para una hoja de cálculo, protege las celdas individuales. El valor predeterminado es True.

Scenarios   Variant opcional. True para que los escenarios estén protegidos. Este argumento sólo es válido para hojas de cálculo. El valor predeterminado es True.

Structure   Variant opcional. True para proteger la estructura del libro (la posición relativa de las hojas de cálculo). El valor predeterminado es False.

UserInterfaceOnly   Variant opcional. True para proteger la interfaz del usuario, pero no las macros. Si este argumento se omite, la protección se aplicará tanto a las macros como a la interfaz del usuario.

Windows   Variant opcional. True para proteger las ventanas de los libros. Si este argumento se omite, las ventanas no estarán protegidas.

Comentarios

Si aplica a una hoja de cálculo el método Protect con el valor True para el argumento UserInterfaceOnly y después guarda el libro, cuando vuelva a abrirlo estará completamente protegida toda la hoja (no sólo la interfaz). Para desproteger la hoja, pero volviendo a habilitar la protección de la interfaz del usuario cuando se abra el libro, necesitará aplicar de nuevo el método Protect con UserInterfaceOnly definida como True.


Ejemplo del método Protect

Este ejemplo protege el libro activo.

ActiveWorkbook.Protect Password := "drowssap"


Propiedad ProtectContents

True si el contenido de la hoja está protegido. Para un gráfico, protege el gráfico completo. Para una hoja de cálculo, protege celdas individuales. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectContents

Este ejemplo muestra un cuadro de mensaje si el contenido de la Hoja1 está protegido.

If Worksheets("Hoja1").ProtectContents = True Then

MsgBox "El contenido de la Hoja1 está protegido."

End If


Propiedad ProtectDrawingObjects

True si las formas están protegidas. Boolean de sólo lectura.


Ejemplo de la propiedad ProtectDrawingObjects

Este ejemplo muestra un cuadro de mensaje si las formas de la Hoja1 están protegidas.

If Worksheets("Hoja1").ProtectDrawingObjects = True Then

MsgBox "Las formas de la Hoja1 están protegidas."

End If


Propiedad Text

Devuelve o establece el texto del objeto especificado. String de sólo lectura para el objeto Range, String de Lectura/Escritura para todos los demás objetos.

Para obtener más información acerca de cómo usar la función de hoja de cálculo Text en Visual Basic, vea Uso de funciones de hoja de cálculo en Visual Basic.


Ejemplo de la propiedad Text

Este ejemplo establece el texto del título del Gráfico1.

With Charts("Gráfico1")

.HasTitle = True

.ChartTitle.Text = "Ventas del primer trimestre"

End With

Este ejemplo establece el texto del título del eje de categorías en el Gráfico1.

With Charts("Gráfico1").Axes(xlCategory)

.HasTitle = True

.AxisTitle.Text = "Mes"

End With

Este ejemplo ilustra la diferencia entre las propiedades Text y Value de las celdas que contienen números con formato.

Set c = Worksheets("Hoja1").Range("B14")

c.Value = 1198,3

c.NumberFormat = "#.##0 $_);(#.##0 $_)"

MsgBox c.Value

MsgBox c.Text


Método Activate

Activa el objeto, como se muestra en la siguiente tabla.

Objeto	Descripción
Chart, ChartObject	Convierte este gráfico en el gráfico activo.
Worksheet	Convierte esta hoja en la hoja  activa. Equivale a hacer clic en la etiqueta de la hoja.
OLEObject	Activa el objeto.
Pane	Activa la sección. Si la sección no está en la ventana activa, también se activará la ventana a la que pertenezca la sección. No es posible activar una sección inmovilizada.
Range	Activa una sola celda, que debe estar en la selección actual. Para seleccionar un rango de celdas, use el método Select.
Window	Sitúa la ventana en el primer plano del orden z. No ejecuta ninguna macro Auto_activar o Auto_desactivar que esté adjunta al libro (use el método RunAutoMacros para ejecutar macros de este tipo).
Workbook	Activa la primera ventana asociada al libro. No ejecuta ninguna macro Auto_activar o Auto_desactivar que esté adjunta al libro (use el método RunAutoMacros para ejecutar macros de este tipo).
Sintaxis

expresión.Activate

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.


Ejemplo del método Activate

Este ejemplo activa la Hoja1.

Worksheets("Hoja1").Activate

Este ejemplo selecciona las celdas A1:C3 de la Hoja1 y convierte a la celda B2 en la celda activa.

Worksheets("Hoja1").Activate

Range("A1:C3").Select

Range("B2").Activate

Este ejemplo activa el libro Libro4.xls. Si Libro4.xls tiene varias ventanas, el ejemplo activará la primera ventana, Libro4.xls:1.

Workbooks("LIBRO4.XLS").Activate


Propiedad Index

Devuelve el número de índice del objeto contenido en el conjunto de objetos similares. Long de sólo lectura.

Para obtener más información acerca de cómo usar la función de hoja de cálculo Index en Visual Basic, vea Uso de funciones de hoja de cálculo en Visual Basic.


Ejemplo de la propiedad Index

Este ejemplo muestra el número de la etiqueta correspondiente al nombre de la hoja que escriba. Por ejemplo, si el Gráfico1 es la tercera etiqueta del libro activo, el ejemplo mostrará “3” en un cuadro de mensaje.

sheetname = InputBox("Escriba un nombre de hoja, por ejemplo, Hoja12")

MsgBox "Esta hoja es el número de etiqueta " & Sheets(sheetname).Index


Propiedad Cells

Objeto Application: Devuelve un objeto Range que representa todas las celdas de la hoja de cálculo activa. Si el documento activo no es una hoja de cálculo, esta propiedad fallará. Es de sólo lectura.

Objeto Range: Devuelve un objeto Range que representa las celdas del rango especificado (es decir, no hace nada). Es de sólo lectura.

Objeto Worksheet: Devuelve un objeto Range que representa las celdas de la hoja de cálculo (no sólo las celdas que se usan actualmente). Es de sólo lectura.

Comentarios

Puesto que la propiedad Item es la propiedad predeterminada del objeto Range, puede especificar el índice de fila y columna inmediatamente después de la palabra clave Cells. Para obtener más información, vea la propiedad Item y los ejemplos de dicho tema.

Si usa esta propiedad sin un calificador de objeto, se devolverá un objeto Range que representa todas las celdas del libro activo.


Ejemplo de la propiedad Cells

Este ejemplo establece en 14 puntos el tamaño de fuente de la celda C5 de la Hoja1.

Worksheets("Hoja1").Cells(5, 3).Font.Size = 14

Este ejemplo borra la fórmula de la celda uno de la Hoja1.

Worksheets("Hoja1").Cells(1).ClearContents

Este ejemplo establece en Arial de 8 puntos la fuente y el tamaño de fuente de todas las celdas de la Hoja1.

With Worksheets("Hoja1").Cells.Font

.Name = "Arial"

.Size = 8

End With

Este ejemplo ejecuta un bucle en las celdas A1:J4 de la Hoja1. Si una de las celdas contiene un valor menor que 0,001, el ejemplo reemplazará dicho valor por cero (0).

For índiceFila = 1 to 4

For índiceColumna = 1 to 10

With Worksheets("Hoja1").Cells(índiceFila, índiceColumna )

If .Value < .001 Then .Value = 0

End With

Next índiceColumna

Next índiceFila

Este ejemplo establece el estilo de fuente de las celdas A1:C5 de la Hoja1 como cursiva.

Worksheets("Hoja1").Activate

Range(Cells(1, 1), Cells(5, 3)).Font.Italic = True

Este ejemplo examina una columna de datos llamada “miRango”. Si una celda contiene el mismo valor que la celda inmediatamente superior, el ejemplo mostrará la dirección de la celda que contiene los datos duplicados.

Set r = Range("miRango")

For n = 1 To r.Rows.Count

If r.Cells(n, 1) = r.Cells(n + 1, 1) Then

MsgBox "Datos duplicados en " & r.Cells(n + 1, 1).Address

End If

Next n


Devolver un objeto de un conjunto

La propiedad Item devuelve un objeto de un conjunto. El ejemplo siguiente establece la variable primerLibro como un objeto Workbook que representa el libro uno.

Set primerLibro = Workbooks.Item(1)

La propiedad Item es la propiedad predeterminada de la mayoría de los conjuntos, por lo que puede escribir la misma instrucción de una manera más precisa omitiendo la palabra clave Item.

Set primerLibro = Workbooks(1)

Para obtener más información acerca de un conjunto específico, consulte el tema de la Ayuda correspondiente a dicho conjunto o bien la propiedad Item del conjunto.

Objetos con nombre

Aunque normalmente puede especificar un valor entero con la propiedad Item, puede ser más conveniente que se devuelva un objeto por su nombre. Para poder usar un nombre con la propiedad Item, debe asignar un nombre al objeto. Normalmente, esto se realiza estableciendo la propiedad Name del objeto. El siguiente ejemplo crea una hoja de cálculo con nombre en el libro activo y después hace referencia a la hoja por su nombre.

ActiveWorkbook.Worksheets.Add.Name = "una hoja nueva"

With Worksheets("una hoja nueva")

.Range("a5:a10").Formula = "=aleatorio()"

End With

Valores de índice predefinidos

Algunos conjuntos tienen valores de índice predefinidos, que pueden emplearse para devolver objetos únicos. Cada valor de índice predefinido está representado por una constante. Por ejemplo, especifique una constante XlBordersIndex con la propiedad Item del conjunto Borders para que se devuelva un solo borde.

El ejemplo siguiente establece el borde inferior de las celdas A1:G1 de la Hoja1 como una línea doble.

Worksheets("Hoja1").Range("a1:g1"). _

    Borders.Item(xlEdgeBottom).LineStyle = xlDouble


Propiedades y métodos predeterminados

Numerosos objetos tienen una propiedad o un método predeterminado. Visual Basic aplica la propiedad o el método predeterminado a un objeto dado para resolver una expresión que de lo contrario no sería válida. Puede escribir instrucciones que usen propiedades o métodos predeterminados con más precisión omitiendo las palabras clave predeterminadas. Por ejemplo, la propiedad Item es la propiedad predeterminada de la mayoría de los conjuntos de Microsoft Excel, por lo que las dos instrucciones siguientes son idénticas:

ActiveWorkbook.Worksheets.Item(1).Cells.Item(1, 1).Value = 5

ActiveWorkbook.Worksheets(1).Cells(1, 1).Value = 5

Nota   Los métodos y propiedades predeterminados se indican mediante un asterisco seguido de sus nombres en el Examinador de objetos.


Método Add (conjunto FormatConditions)

Agrega un nuevo formato condicional. Devuelve un objeto FormatCondition que representa el nuevo formato condicional.

Sintaxis

expresión.Add(Type, Operator, Formula1, Formula2)

expresión   Requerida. Una expresión que devuelve un objeto FormatConditions.

Type   Long requerido. Especifica si el formato condicional está basado en el valor de una celda o en una expresión. Puede ser una de las siguientes constantes XlFormatConditionType: xlCellValue o xlExpression.

Operator   Variant opcional. El operador de formato condicional. Puede ser una de las siguientes constantes XlFormatConditionOperator: xlBetween, xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween o xlNotEqual. Si Type tiene el valor xlExpression, se pasará por alto el argumento Operator.

Formula1   Variant opcional. El valor o la expresión correspondiente al formato condicional. Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula.

Formula2   Variant opcional. El valor o la expresión correspondiente a la segunda parte del formato condicional cuando Operator es xlBetween o xlNotBetween (en los demás casos este argumento se pasa por alto). Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula.

Comentarios

No es posible definir más de tres formatos condicionales para un rango. Use el método Modify para modificar un formato condicional ya existente o bien el método Delete para eliminar un formato ya existente antes de agregar un formato nuevo.


Ejemplo del método Add (conjunto FormatConditions)

Este ejemplo agrega un formato condicional a las celdas E1:E10.

With Worksheets(1).Range("e1:e10").FormatConditions _

        .Add(xlCellValue, xlGreater, "=$a$1")

    With .Borders

        .LineStyle = xlContinuous

        .Weight = xlThin

        .ColorIndex = 6

    End With

    With .Font

        .Bold = True

        .ColorIndex = 3

    End With

End With


Método Modify (objeto FormatCondition)

Modifica un formato condicional ya existente.

Sintaxis

expresión.Modify(Type, Operator, Formula1, Formula2)

expresión   Requerida. Una expresión que devuelve un objeto FormatCondition.

Type   Long requerido. Especifica si el formato condicional está basado en el valor de una celda o en una expresión. Puede ser una de las siguientes constantes XlFormatConditionType: xlCellValue o xlExpression.

Operator   Variant opcional. El operador de formato condicional. Puede ser una de las siguientes constantes XlFormatConditionOperator: xlBetween, xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween o xlNotEqual. Si Type tiene el valor xlExpression, se pasará por alto el argumento Operator.

Formula1   Variant opcional. El valor o la expresión correspondiente al formato condicional. Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula.

Formula2   Variant opcional. EL valor o la expresión correspondiente a la segunda parte del formato condicional cuando Operator es xlBetween o xlNotBetween. Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula.


Ejemplo del método Modify (objeto FormatCondition)

Este ejemplo modifica un formato condicional ya existente para las celdas E1:E10.

Worksheets(1).Range("e1:e10").FormatConditions(1) _

    .Modify xlCellValue, xlLess, "=$a$1"


Propiedad FormatConditions

Devuelve un conjunto FormatConditions que representa todos los formatos condicionales del rango especificado. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad FormatConditions

Este ejemplo modifica un formato condicional ya existente para las celdas E1:E10.

Worksheets(1).Range("e1:e10").FormatConditions(1) _

    .Modify xlCellValue, xlLess, "=$a$1"


Propiedad Formula1

Devuelve el valor o la expresión correspondiente al formato condicional o a la validación de datos. Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula. String de sólo lectura.


Ejemplo de la propiedad Formula1

Este ejemplo cambia la fórmula de formato condicional uno de las celdas E1:E10 si en ella se especifica “menor que 5”.

With Worksheets(1).Range("e1:e10").FormatConditions(1)

If .Operator = xlLess And .Formula1 = "5" Then

.Modify xlCellValue, xlLess, "10"

End If

End With


Propiedad Formula2

Devuelve el valor o la expresión correspondiente a la segunda parte de un formato condicional o validación de datos. Se usa únicamente cuando la propiedad Operator del formato condicional devalidación de datos es xlBetween o xlNotBetween. Puede ser un valor constante, un valor de cadena, una referencia de celda o una fórmula. String de sólo lectura.


Ejemplo de la propiedad Formula2

Este ejemplo cambia la fórmula de formato condicional uno de las celdas E1:E10 si en ella se especifica “entre 5 y 10”.

With Worksheets(1).Range("e1:e10").FormatConditions(1)

If .Operator = xlBetween And .Formula1 = "5" And .Formula2 = "10" Then

.Modify xlCellValue, xlLess, "10"

End If

End With


Propiedad Operator

Devuelve el operador del formato condicional o validación de datos. Puede ser una de las siguientes constantes XlFormatConditionOperator: xlBetween, xlEqual, xlGreater, xlGreaterEqual, xlLess, xlLessEqual, xlNotBetween o xlNotEqual. Long de sólo lectura.


Ejemplo de la propiedad Operator

Este ejemplo cambia la fórmula de formato condicional uno de las celdas E1:E10 si en ella se especifica “menor que 5”.

With Worksheets(1).Range("e1:e10").FormatConditions(1)

If .Operator = xlLess And .Formula1 = "5" Then

.Modify xlCellValue, xlBetween, "5", "15"

End If

End With


Método GetChartElement

Devuelve información acerca del elemento de gráfico situado en las coordenadas X e Y especificadas. Este método tiene la particularidad de que sólo se especifican los valores de los dos primeros argumentos. Microsoft Excel rellena el resto de los argumentos y el código debe examinar sus valores al finalizar el método.

Sintaxis

expresión.GetChartElement(X, Y, ElementID, Arg1, Arg2)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

X   Long requerido. La coordenada X del elemento de gráfico.

Y   Long requerido. La coordenada Y del elemento de gráfico.

ElementID   Long requerido. Cuando el método finalice, el argumento contendrá el valor XLChartItem del elemento de gráfico en las coordenadas especificadas. Para obtener más información, vea la sección “Comentarios”.

Arg1   Long requerido. Cuando el método finalice, el argumento contendrá información relativa al elemento de gráfico. Para obtener más información, vea la sección “Comentarios”.

Arg2   Long requerido. Cuando el método finalice, el argumento contendrá información relativa al elemento de gráfico. Para obtener más información, vea la sección “Comentarios”.

Comentarios

El valor de ElementID después de que el método finalice determina si Arg1 y Arg2 contienen información, como se muestra en la siguiente tabla.

ElementID	Arg1	Arg2
xlChartArea	Ninguno	Ninguno
xlChartTitle	Ninguno	Ninguno
xlPlotArea	Ninguno	Ninguno
xlLegend	Ninguno	Ninguno
xlFloor	Ninguno	Ninguno
xlWalls	Ninguno	Ninguno
xlCorners	Ninguno	Ninguno
xlDataTable	Ninguno	Ninguno
xlSeries	SeriesIndex	PointIndex
xlDataLabel	SeriesIndex	PointIndex
xlTrendline	SeriesIndex	TrendLineIndex
xlErrorBars	SeriesIndex	Ninguno
xlXErrorBars	SeriesIndex	Ninguno
xlYErrorBars	SeriesIndex	Ninguno
xlLegendEntry	SeriesIndex	Ninguno
xlLegendKey	SeriesIndex	Ninguno
xlAxis	AxisIndex	AxisType
xlMajorGridlines	AxisIndex	AxisType
xlMinorGridlines	AxisIndex	AxisType
xlAxisTitle	AxisIndex	AxisType
xlUpBars	GroupIndex	Ninguno
xlDownBars	GroupIndex	Ninguno
xlSeriesLines	GroupIndex	Ninguno
xlHiLoLines	GroupIndex	Ninguno
xlDropLines	GroupIndex	Ninguno
xlRadarAxisLabels	GroupIndex	Ninguno
xlShape	ShapeIndex	Ninguno
xlNothing	Ninguno	Ninguno
En la siguiente tabla se explica el significado de Arg1 y Arg2 después de que finalice el método.

Argumento	Descripción
SeriesIndex	Especifica el desplazamiento en el conjunto Series para una serie dada.
PointIndex	Especifica el desplazamiento en el conjunto Points para un punto dado de una serie. El valor – 1 indica que están seleccionados todos los puntos de datos.
TrendlineIndex	Especifica el desplazamiento en el conjunto Trendlines para una línea de tendencia dada de una serie.
AxisIndex	Especifica si el eje es primario (0) o secundario (1).
AxisType	Especifica el tipo de eje: Categorías (0), Valores (1) o Series (2).
GroupIndex	Especifica el desplazamiento en el conjunto ChartGroups para un grupo de gráficos dado.
ShapeIndex	Especifica el desplazamiento en el conjunto Shapes para una forma dada.


Ejemplo del método GetChartElement

Este ejemplo advierte al usuario de que está moviendo el mouse (ratón) sobre la leyenda del gráfico.

Private Sub Chart_MouseMove(ByVal Butón As Long, _

        ByVal Mayús As Long, ByVal X As Long, ByVal Y As Long)

    Dim Numid As Long

    Dim a As Long

    Dim b As Long

    ActiveChart.GetChartElement X, Y, Numid, a, b

    If Numid = xlLegendEntry Then _

        MsgBox "ATENCIÓN: No toque la leyenda"

End Sub


Propiedad HasBorderHorizontal

True si la tabla de datos del gráfico tiene bordes horizontales en las celdas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasBorderHorizontal

Este ejemplo hace que la tabla de datos del gráfico incrustado se muestre con un borde de contorno y sin bordes en las celdas.

With Worksheets(1).ChartObjects(1).Chart

    .HasDataTable = True

    With .DataTable

        .HasBorderHorizontal = False

        .HasBorderVertical = False

        .HasBorderOutline = True

    End With

End With


Propiedad HasBorderOutline

True si la tabla de datos del gráfico tiene bordes de contorno. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasBorderOutline

Este ejemplo hace que la tabla de datos del gráfico incrustado se muestre con un borde de contorno y sin bordes en las celdas.

With Worksheets(1).ChartObjects(1).Chart

    .HasDataTable = True

    With .DataTable

        .HasBorderHorizontal = False

        .HasBorderVertical = False

        .HasBorderOutline = True

    End With

End With


Propiedad HasBorderVertical

True si la tabla de datos del gráfico tiene bordes verticales en las celdas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasBorderVertical

Este ejemplo hace que la tabla de datos del gráfico incrustado se muestre con un borde de contorno y sin bordes en las celdas.

With Worksheets(1).ChartObjects(1).Chart

    .HasDataTable = True

    With .DataTable

        .HasBorderHorizontal = False

        .HasBorderVertical = False

        .HasBorderOutline = True

    End With

End With


Propiedad HasDataTable

True si el gráfico tiene una tabla de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasDataTable

Este ejemplo hace que la tabla de datos del gráfico incrustado se muestre con un borde de contorno y sin bordes en las celdas.

With Worksheets(1).ChartObjects(1).Chart

    .HasDataTable = True

    With .DataTable

        .HasBorderHorizontal = False

        .HasBorderVertical = False

        .HasBorderOutline = True

    End With

End With


Propiedad HasLeaderLines

True si la serie tiene líneas guía. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HasLeaderLines

Este ejemplo agrega rótulos de datos y líneas guía azules a la serie uno del gráfico circular.

With Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)

.HasDataLabels = True

.DataLabels.Position = xlLabelPositionBestFit

.HasLeaderLines = True

.LeaderLines.Border.ColorIndex = 5

End With


Propiedad LeaderLines

Devuelve un objeto LeaderLines que representa las líneas guía de la serie. Es de sólo lectura.


Ejemplo de la propiedad LeaderLines

Este ejemplo agrega rótulos de datos y líneas guía azules a la serie uno del gráfico circular.

With Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)

.HasDataLabels = True

.DataLabels.Position = xlLabelPositionBestFit

.HasLeaderLines = True

.LeaderLines.Border.ColorIndex = 5

End With


Método Location

Desplaza el gráfico a otro lugar.

Sintaxis

expresión.Location(Where, Name)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Where   Long requerido. El lugar al que se desplaza el gráfico. Puede ser una de las siguientes constantes XlChartLocation: xlLocationAsNewSheet, xlLocationAsObject o xlLocationAutomatic.

Name   Variant opcional; requerido si Where es xlLocationAsObject. El nombre de la hoja donde el gráfico será incrustado si Where es xlLocationAsObject o el nombre de la hoja nueva si Where es xlLocationAsNewSheet.


Ejemplo del método Location

Este ejemplo desplaza el gráfico incrustado a otra hoja llamada “Ventas mensuales”.

Worksheets(1).ChartObjects(1).Chart _

.Location xlLocationAsNewSheet, "Ventas mensuales"


Propiedad MajorUnitScale

Devuelve o establece el valor de la escala de las unidades principales del eje de categorías cuando la propiedad CategoryType tiene el valor xlTimeScale. Puede ser una de las siguientes constantes XlTimeUnit: xlDays, xlMonths o xlYears. Long de Lectura/Escritura.


Ejemplo de la propiedad MajorUnitScale

Este ejemplo configura el eje de categorías para que use una escala de tiempo y establece las unidades principales y secundarias.

With Charts(1).Axes(xlCategory)

    .CategoryType = xlTimeScale

    .MajorUnit = 5

    .MajorUnitScale = xlDays

    .MinorUnit = 1

    .MinorUnitScale = xlDays

End With


Propiedad MarkerSize

Devuelve o establece el tamaño de los marcadores de datos, en puntos. Long de Lectura/Escritura.


Ejemplo de la propiedad MarkerSize

Este ejemplo establece el tamaño de todos los marcadores de datos de la serie uno.

Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1).MarkerSize = 10


Propiedad MinorUnitScale

Devuelve o establece el valor de la escala de las unidades secundarias del eje de categorías cuando la propiedad CategoryType tiene el valor xlTimeScale. Puede ser una de las siguientes constantes XlTimeUnit: xlDays, xlMonths o xlYears. Long de Lectura/Escritura.


Ejemplo de la propiedad MinorUnitScale

Este ejemplo configura el eje de categorías para que use una escala de tiempo y establece las unidades principales y secundarias.

With Charts(1).Axes(xlCategory)

    .CategoryType = xlTimeScale

    .MajorUnit = 5

    .MajorUnitScale = xlDays

    .MinorUnit = 1

    .MinorUnitScale = xlDays

End With


Método NewSeries

Crea una nueva serie. Devuelve un objeto Series que representa la nueva serie.

Sintaxis

expresión.NewSeries()

expresión   Requerida. Una expresión que devuelve un objeto SeriesCollection.


Ejemplo del método NewSeries

Este ejemplo agrega una nueva serie al gráfico 1.

Set ns = Charts(1).SeriesCollection.NewSeries


Propiedad PersonalViewListSettings

True si se incluyen valores de filtro y ordenación en la vista personal del usuario del libro compartido. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PersonalViewListSettings

Este ejemplo elimina los parámetros de impresión y los valores de filtro y ordenación en la vista personal del usuario del libro dos.

With Workbooks(2)

.PersonalViewListSettings = False

.PersonalViewPrintSettings = False

End With


Propiedad PersonalViewPrintSettings

True si se incluyen parámetros de impresión en la vista personal del usuario del libro compartido. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PersonalViewPrintSettings

Este ejemplo elimina los parámetros de impresión y los valores de filtro y ordenación en la vista personal del usuario del libro dos.

With Workbooks(2)

.PersonalViewListSettings = False

.PersonalViewPrintSettings = False

End With


Propiedad PrintComments

Devuelve o establece cómo se imprimen los comentarios junto con la hoja. Puede ser una de las siguientes constantes XlPrintLocation: xlPrintInPlace, xlPrintNoComments o xlPrintSheetEnd. Long de Lectura/Escritura.


Ejemplo de la propiedad PrintComments

Este ejemplo hace que los comentarios se impriman como notas al final al imprimir la hoja uno.

Worksheets(1).PageSetup.PrintComments = xlPrintSheetEnd


Método RemoveUser

Desconecta al usuario especificado del libro compartido.

Sintaxis

expresión.RemoveUser(Index)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Index   Long requerido. El índice de usuarios.


Ejemplo del método RemoveUser

Este ejemplo desconecta al usuario dos del libro compartido.

Workbooks(2).RemoveUser 2


Método ResetAllPageBreaks

Restablece todos los saltos de página en la hoja especificada.

Sintaxis

expresión.ResetAllPageBreaks()

expresión   Requerida. Una expresión que devuelve un objeto Worksheet.


Ejemplo del método ResetAllPageBreaks

Este ejemplo restablece todos los saltos de página de la hoja uno.

Worksheets(1).ResetAllPageBreaks


Método SaveWorkspace

Guarda el área de trabajo actual.

Sintaxis

expresión.SaveWorkspace(Filename)

expresión   Requerida. Una expresión que devuelve un objeto Application.

FileName   Variant opcional. El nombre del archivo que se guarda.


Ejemplo del método SaveWorkspace

Este ejemplo guarda el área de trabajo actual como “área de trabajo guardada.xlw”.

Application.SaveWorkspace "área de trabajo guardada"


Propiedad ScrollArea

Devuelve o establece el rango en que está permitido el desplazamiento, en forma de referencia de rango de estilo A1. No pueden seleccionarse las celdas que estén fuera del área de desplazamiento. String de Lectura/Escritura.

Comentarios

Si define esta propiedad como la cadena vacía (""), habilitará la selección de celdas en toda la hoja.


Ejemplo de la propiedad ScrollArea

Este ejemplo establece el área de desplazamiento de la hoja uno.

Worksheets(1).ScrollArea = "a1:f10"


Propiedad ShowNegativeBubbles

True si se muestran las burbujas negativas del grupo de gráficos. Válido únicamente para gráficos de burbujas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowNegativeBubbles

Este ejemplo hace visibles las burbujas negativas del grupo de gráficos uno.

Worksheets(1).ChartObjects(1).Chart _

.ChartGroups(1).ShowNegativeBubbles = True


Propiedad UserControl

True si el usuario creó o inició la aplicación. False si la aplicación se creó o inició mediante programación, usando una de las funciones CreateObject o GetObject. Boolean de Lectura/Escritura.

Comentarios

Si la propiedad UserControl es False para un objeto, éste se liberará cuando se libere la última referencia de programación al objeto. Si la propiedad es False, Microsoft Excel se finalizará cuando se libere el último objeto en la sesión.


Ejemplo de la propiedad UserControl

Este ejemplo muestra el estado de la propiedad UserControl.

If Application.UserControl Then

MsgBox "Este libro ha sido creado por el usuario"

Else

MsgBox "Este libro ha sido creado mediante programación"

End If


Propiedad HPageBreaks

Devuelve un conjunto HPageBreaks que representa los saltos de página horizontales de la hoja. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad HPageBreaks

Este ejemplo muestra el número de saltos de página horizontales de pantalla completa y del área de impresión.

For Each pb in Worksheets(1).HPageBreaks

If pb.Extent = xlPageBreakFull Then

cFull = cFull + 1

Else

cPartial = cPartial + 1

End If

Next

MsgBox cFull & " saltos de página de pantalla completa, " & cPartial & _

" saltos de página en área de impresión"


Propiedad Extent

Devuelve el tipo del salto de página especificado: pantalla completa o solamente dentro de un área de impresión. Puede ser una de las siguientes constantes XlPageBreakExtent: xlPageBreakFull o xlPageBreakPartial. Long de sólo lectura.


Ejemplo de la propiedad Extent

Este ejemplo muestra el número total de saltos de página horizontales de pantalla completa y del área de impresión.

For Each pb in Worksheets(1).HPageBreaks

If pb.Extent = xlPageBreakFull Then

cFull = cFull + 1

Else

cPartial = cPartial + 1

End If

Next

MsgBox cFull & " saltos de página de pantalla completa, " & cPartial & _

" saltos de página en área de impresión"


Propiedad Location

Devuelve o establece la celda (un objeto Range) que define la posición del salto de página. Los saltos de página horizontales están alineados con el borde superior de la celda y los verticales con el borde izquierdo de la celda. Range de Lectura/Escritura.


Ejemplo de la propiedad Location

Este ejemplo desplaza la posición del salto de página horizontal.

Worksheets(1).HPageBreaks(1).Location = Worksheets(1).Range("e5")


Propiedad VPageBreaks

Devuelve un conjunto VPageBreaks que representa los saltos de página verticales de la hoja. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad VPageBreaks

Este ejemplo muestra el número total de saltos de página verticales de pantalla completa y del área de impresión.

For Each pb in Worksheets(1).VPageBreaks

If pb.Extent = xlPageBreakFull Then

cFull = cFull + 1

Else

cPartial = cPartial + 1

End If

Next

MsgBox cFull & " saltos de página de pantalla completa, " & cPartial & _

" saltos de página en área de impresión"


Método MergeWorkbook

Combina los cambios de un libro en un libro abierto.

Sintaxis

expresión.MergeWorkbook(Filename)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Filename   String requerida. El nombre de archivo del libro que contiene los cambios que se combinarán en el libro abierto.


Ejemplo del método MergeWorkbook

Este ejemplo combina los cambios de Libro1.xls en el libro activo.

ActiveWorkbook.MergeWorkbook "Libro1.xls"


Propiedad IndentLevel

Devuelve o establece el nivel de sangría del rango o el estilo. Puede ser un entero de 0 a 15. Variant de Lectura/Escritura.

Comentarios

Utilizar esta propiedad para establecer el nivel de sangrado en un número inferior a 0 (cero) o mayor que 15 causará un error.


Ejemplo de la propiedad IndentLevel

Este ejemplo aumenta a 15 el nivel de sangría de la celda A10.

With Range("a10")

.IndentLevel = 15

End With


Método InsertIndent

Agrega una sangría al rango especificado.

Sintaxis

expresión.InsertIndent(InsertAmount)

expresión   Requerido. Una expresión que devuelve un objeto Range.

InsertAmount   Long requerido. La cantidad que se agrega a la sangría actual.

Comentarios

Utilizar esta propiedad para establecer el nivel de sangrado en un número inferior a 0 (cero) o mayor que 15 causará un error.

Use la propiedad IndentLevel para obtener el nivel de sangría de un rango.


Ejemplo del método InsertIndent

Este ejemplo reduce el nivel de sangría de la celda A10.

With Range("a10")

.InsertIndent -1

End With


Propiedad MergeArea

Devuelve un objeto Range que representa el rango combinado que contiene la celda especificada. Si la celda especificada no está en un rango combinado, la propiedad devolverá la celda especificada. Variant de sólo lectura.


Ejemplo de la propiedad MergeArea

Este ejemplo establece el valor del rango combinado que contiene la celda A3.

Set ma = Range("a3").MergeArea

If ma.Address = "$A$3" Then

MsgBox "no combinado"

Else

ma.Cells(1, 1).Value = "42"

End If


Propiedad MergeCells

True si el rango o el estilo contienen celdas combinadas. Variant de Lectura/Escritura.

Comentarios

Si selecciona un rango que contiene celdas combinadas, la selección resultante puede no ser la que se pretende. Use la propiedad Address para comprobar la dirección del rango seleccionado.


Ejemplo de la propiedad MergeCells

Este ejemplo establece el valor del rango combinado que contiene la celda A3.

Set ma = Range("a3").MergeArea

If Range("a3").MergeCells Then

ma.Cells(1, 1).Value = "42"

End If


Método UnMerge

Separa un área combinada en celdas individuales.

Sintaxis

expresión.UnMerge

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método UnMerge

Este ejemplo separa el rango combinado que contiene la celda A3.

With Range("a3")

If .MergeCells Then

.MergeArea.UnMerge

Else

MsgBox "sin fusionar"

End If

End With


Propiedad AddIndent

Esta propiedad no se usa en Microsoft Excel en inglés americano.


Método Merge

Sintaxis 1: combina los escenarios de otra hoja en un conjunto Scenarios.

Sintaxis 2: combina los estilos de otro libro en el conjunto Styles.

Sintaxis 3: crea una celda combinada a partir del objeto Range especificado.

Sintaxis 1

expresión.Merge(Source)

Sintaxis 2

expresión.Merge(Workbook)

Sintaxis 3

expresión.Merge(Across)

expresión   Requerida. Una expresión que devuelve un objeto Scenarios (sintaxis 1), un objeto Styles (sintaxis 2) o un objeto Range (sintaxis 3).

Source   Variant requerida. El nombre de la hoja que contiene los escenarios que se combinarán o bien un objeto Worksheet que representa dicha hoja.

Workbook   Variant requerida. Un objeto Workbook que representa el libro que contiene los estilos que se combinarán.

Across   Variant opcional. True para que se combinen las celdas de cada fila del rango especificado como celdas combinadas distintas. El valor predeterminado es False.

Comentarios

El valor de un rango combinado es el valor especificado para la celda en la esquina superior izquierda del rango.


Ejemplo del método Merge

Este ejemplo combina los estilos del libro Plantill.xls en el libro activo.

ActiveWorkbook.Styles.Merge Workbook:=Workbooks("PLANTILL.XLS")


Propiedad Borders

Devuelve un conjunto Borders que representa los cuatro bordes de un estilo o un rango de celdas (incluido un rango definido como parte de un formato condicional). Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo elemento de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Borders

Este ejemplo establece en rojo el color del borde inferior de la celda B2 de la Hoja1.

With Worksheets("Hoja1").Range("B2").Borders(xlBottom)

.LineStyle = xlBorderLineStyleContinuous

.Weight = xlThin

.ColorIndex = 3

End With


Propiedad Rotation

Objeto Chart: Devuelve o establece la rotación de la vista del gráfico 3D (la rotación del área de trazado alrededor del eje Z, en grados). El valor de esta propiedad debe estar comprendido entre 0 y 360, excepto para los gráficos de barras 3D, donde el valor debe ser de 0 a 44. El valor predeterminado es 20. Aplicable únicamente a gráficos 3D. Variant de Lectura/Escritura.

Objeto Shape o ShapeRange: devuelve o establece la rotación de la forma, en grados. Single de Lectura/Escritura.


Ejemplo de la propiedad Rotation

Este ejemplo establece en 30 grados la rotación del Gráfico1. El ejemplo debe ejecutarse en un gráfico 3D.

Charts("Gráfico1").Rotation = 30


Propiedad SizeRepresents

Devuelve o establece qué representa el tamaño de una burbuja en un gráfico de burbujas. Puede ser cualquiera de las constantes XlSizeRepresents: xlSizeIsArea o xlSizeIsWidth. Long de Lectura/Escritura.


Ejemplo de la propiedad SizeRepresents

Este ejemplo establece qué representa el tamaño de una burbuja en el grupo de gráficos uno.

Charts(1).ChartGroups(1).SizeRepresents = xlSizeIsWidth


Propiedad ApplyPictToEnd

True si una imagen se aplica al final del punto o a todos los puntos de la serie. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ApplyPictToEnd

Este ejemplo aplica imágenes al extremo de todos los puntos de la serie uno. La serie ya debe tener imágenes aplicadas (al establecer esta propiedad se cambia la orientación de las imágenes).

Charts(1).SeriesCollection(1).ApplyPictToEnd = True


Propiedad ApplyPictToFront

True si una imagen se aplica a la parte delantera del punto o a todos los puntos de la serie. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ApplyPictToFront

Este ejemplo aplica imágenes a la parte delantera de todos los puntos de la serie uno. La serie ya debe tener imágenes aplicadas (al establecer esta propiedad se cambia la orientación de las imágenes).

Charts(1).SeriesCollection(1).ApplyPictToFront = True


Propiedad ApplyPictToSides

True si una imagen se aplica a los lados del punto o a todos los puntos de la serie. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ApplyPictToSides

Este ejemplo aplica imágenes a los lados de todos los puntos de la serie uno. La serie ya debe tener imágenes aplicadas (al establecer esta propiedad se cambia la orientación de las imágenes).

Charts(1).SeriesCollection(1).ApplyPictToSides = True


Propiedad Assistant

Devuelve un objeto Assistant de Microsoft Excel.

Comentarios

El uso de esta propiedad sin un calificador de objeto equivale a usar Application.Assistant.


Ejemplo de la propiedad Assistant

Este ejemplo hace visible el Ayudante de Office.

Assistant.Visible = True


Propiedad AutoUpdateFrequency

Devuelve o establece el número de minutos que transcurren entre actualizaciones automáticas del libro compartido. Si esta propiedad se establece como cero, las actualizaciones se llevarán a cabo únicamente cuando se guarde el libro. Long de Lectura/Escritura.


Ejemplo de la propiedad AutoUpdateFrequency

Este ejemplo hace que el libro compartido se actualice de forma automática cada tres minutos.

ActiveWorkbook.AutoUpdateFrequency = 3


Propiedad AutoUpdateSaveChanges

True si los cambios actuales del libro compartido se envían a otros usuarios siempre que el libro se actualiza automáticamente. False si los cambios no se envían (el libro seguirá sincronizado con los cambios que efectúen otros usuarios). El valor predeterminado es True. Boolean de Lectura/Escritura.

Comentarios

Para que la propiedad AutoUpdateFrequency tenga efecto, debe tener un valor comprendido entre 5 y 1440.


Ejemplo de la propiedad AutoUpdateSaveChanges

Este ejemplo hace que los cambios del libro compartido se envíen a otros usuarios siempre que el libro se actualice automáticamente.

ActiveWorkbook.AutoUpdateSaveChanges = True


Propiedad CommandBars

Devuelve un objeto CommandBars que representa las barras de comandos de Microsoft Excel. Es de sólo lectura.

Comentarios

Utilizado con el objeto Application, esta propiedad devuelve el grupo de barras de comandos incorporadas y personalizadas disponibles en la aplicación.

When a workbook is embedded in another application and activated by the user by double-clicking the workbook, using this property with a Workbook object returns the set of Microsoft Excel command bars available within the other application. At all other times, using this property with a Workbook object returns Nothing.

There is no programmatic way to return the set of command bars attached to a workbook.


Ejemplo de la propiedad CommandBars

Este ejemplo elimina todas las barras de comandos personalizadas que no estén visibles.

For Each bar In Application.CommandBars

    If Not bar.BuiltIn And Not bar.Visible Then bar.Delete

Next


Propiedad ConflictResolution

Devuelve o establece el modo en que se resuelven los conflictos siempre que se actualiza un libro compartido. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlSaveConflictResolution:

Constante	Descripción
xlLocalSessionChanges	Los cambios del usuario local se aceptan siempre.
xlOtherSessionChanges	Los cambios del usuario local se rechazan siempre.
xlUserResolution	Un cuadro de diálogo solicita al usuario que resuelva el conflicto.


Ejemplo de la propiedad ConflictResolution

Este ejemplo hace que los cambios del usuario local se acepten siempre que exista un conflicto en el libro compartido.

ActiveWorkbook.ConflictResolution = xlLocalSessionChanges


Propiedad DataTable

Devuelve un objeto DataTable que representa la tabla de datos del gráfico. Es de sólo lectura.


Ejemplo de la propiedad DataTable

Este ejemplo agrega una tabla de datos con un borde de contorno al gráfico incrustado.

With Worksheets(1).ChartObjects(1).Chart

.HasDataTable = True

.DataTable.HasBorderOutline = True

End With


Propiedad EnableEvents

True si los eventos están habilitados para el objeto especificado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableEvents

Este ejemplo desactiva los eventos antes de que se guarde un archivo, a fin de que no ocurra el BeforeSave.

Application.EnableEvents = False

ActiveWorkbook.Save

Application.EnableEvents = True


Propiedad EnableResize

True si es posible cambiar el tamaño de la ventana. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableResize

Este ejemplo configura la ventana activa de forma que no pueda cambiarse su tamaño.

ActiveWindow.EnableResize = False


Propiedad EnableSelection

Devuelve o establece qué celdas pueden seleccionarse en la hoja de cálculo. Puede ser una de las siguientes constantes XlEnableSelection: xlNoRestrictions, xlNoSelection o xlUnlockedCells. Long de Lectura/Escritura.

Comentarios

Esta propiedad sólo tiene efecto si la hoja de cálculo está protegida: xlNoSelection impide la selección de cualquier celda de la hoja, xlUnlockedCells sólo permite seleccionar aquellas celdas cuya propiedad Locked tenga el valor False y xlNoRestrictions permite seleccionar cualquier celda.


Ejemplo de la propiedad EnableSelection

Este ejemplo configura la hoja de cálculo de forma que no pueda seleccionarse ninguna celda.

With Worksheets(1)

.EnableSelection = xlNoSelection

.Protect Contents:=True, UserInterfaceOnly:=True

End With


Propiedad MergeLabels

True si los rótulos de elemento de fila exterior, elemento de columna, subtotal y total general de una tabla dinámica usan celdas combinadas. Boolean de Lectura/Escritura.


Ejemplo de la propiedad MergeLabels

Este ejemplo hace que la tabla dinámica use rótulos de elemento de fila exterior, elemento de columna, subtotal y total general de celda combinada.

Worksheets(1).PivotTables(1).MergeLabels = True


Método AutoShow

Muestra el número de elementos superiores o inferiores de un campo de filas, páginas o columnas de una tabla dinámica.

Sintaxis

expresión.AutoShow(Type, Range, Count, Field)

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Type   Long requerido. Use xlAutomatic para que se muestren en la tabla dinámica los elementos coincidentes con los criterios especificados. Use xlManual para desactivar esta función.

Range   Long requerido. La ubicación en la que comienzan a mostrarse los elementos. Puede ser una de las siguientes constantes: xlTop o xlBottom.

Count   Long requerido. El número de elementos que se mostrarán.

Field   String requerida. El nombre del campo de base de datos.


Ejemplo del método AutoShow

Este ejemplo sólo muestra las dos organizaciones más importantes, basándose en la suma de las ventas:

ActiveSheet.PivotTables("Dinámica1").PivotFields("Organización") _

.AutoShow  xlAutomatic, xlTop, 2, "Suma de ventas"


Propiedad ServerBased

True si la fuente de datos de la tabla dinámica es externa y solamente se recuperan los elementos que coinciden con la selección del campo de páginas. Boolean de Lectura/Escritura.

Si esta propiedad tiene el valor True, sólo se recuperarán los registros de la base de datos que coincidan con el elemento del campo de páginas seleccionado. A partir de ese momento, siempre que el usuario cambie la selección del campo de páginas, el nuevo elemento seleccionado en el campo se enviará a la consulta en forma de parámetro y se actualizará la memoria caché.

Este propiedad no podrá establecerse si se cumple alguna de estas condiciones:

•	El campo está agrupado.

•	La fuente de datos no es externa.

•	La caché está compartida por dos o más tablas dinámicas.

•	El campo tiene un tipo de datos que no puede estar basado en el servidor (un campo memo o un objeto OLE).


Ejemplo de la propiedad ServerBased

Este ejemplo muestra una lista de todos los campos de páginas basados en servidor.

For Each fld in ActiveSheet.PivotTables(1).PageFields

If fld.ServerBased = True Then

r = r + 1

Worksheets(2).Cells(r, 1).Value = fld.Name

End If

Next


Método PivotFormulas

Devuelve un objeto PivotFormulas que representa el conjunto de fórmulas dinámicas de la tabla dinámica. Es de sólo lectura.

Sintaxis

expresión.PivotFormulas()

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.


Ejemplo del método PivotFormulas

Este ejemplo crea una lista de las fórmulas dinámicas de la tabla dinámica uno.

For Each fd in ActiveSheet.PivotTables(1).PivotFormulas

r = r + 1

Cells(r, 1).Value = pf.Formula

Next


Método AutoSort

Establece las reglas de ordenación automática de campos en tablas dinámicas.

Sintaxis

expresión.AutoSort(Order, Field)

expresión   Requerida. Una expresión que devuelve un objeto PivotField.

Order   Long requerido. El orden de clasificación. Puede ser cualquiera de las siguientes constantes XlSortOrder: xlAscending o xlDescending. También puede ser xlManual para desactivar la ordenación automática.

Field   String requerida. El nombre del campo del criterio de orden.


Ejemplo del método AutoSort

Este ejemplo ordena el campo Organización en orden descendente, basándose en la suma de ventas.

ActiveSheet.PivotTables(1).PivotField("Organización") _

.AutoSort xlDescending, "Suma de ventas"


Propiedad Selection

Objeto Application: devuelve el objeto seleccionado en la ventana activa.

Objeto Window: devuelve el objeto seleccionado en la ventana especificada.

Comentarios

El tipo de objeto que se devuelve depende de la selección actual (por ejemplo, si está seleccionada una celda, la propiedad devolverá un objeto Range). Si no hay nada seleccionado, la propiedad Selection devolverá Nothing.

El uso de esta propiedad sin un calificador de objeto equivale a usar Application.Selection.


Ejemplo de la propiedad Selection

Este ejemplo borra la selección de la Hoja1 (suponiendo que la selección sea un rango de celdas).

Worksheets("Hoja1").Activate

Selection.Clear

Este ejemplo muestra el tipo de objeto de Visual Basic de la selección.

Worksheets("Hoja1").Activate

MsgBox "El tipo de objeto de la selección es " & TypeName(Selection)


Propiedad PageBreak

Devuelve o establece la ubicación de un salto de página. Puede ser una de las siguientes constantes XlPageBreak: xlPageBreakAutomatic, xlPageBreakManual o xlPageBreakNone. Long de Lectura/Escritura.

Comentarios

Esta propiedad puede devolver la ubicación de un salto de página manual o automático, pero sólo puede asignar la ubicación de los saltos de página manuales (sólo puede establecerse como xlPageBreakManual o xlPageBreakNone).

Para eliminar todos los saltos de página manuales de una hoja de cálculo, defina Cells.PageBreak como xlPageBreakNone.


Ejemplo de la propiedad PageBreak

Este ejemplo establece un salto de página manual encima de la fila 25 de la Hoja1.

Worksheets("Hoja1").Rows(25).PageBreak = xlPageBreakManual

Este ejemplo establece un salto de página manual a la izquierda de la columna J de la Hoja1.

Worksheets("Hoja1").Columns("J").PageBreak = xlPageBreakManual

Este ejemplo elimina los dos saltos de página establecidos en los ejemplos anteriores.

Worksheets("Hoja1").Rows(25).PageBreak = xlPageBreakNone

Worksheets("Hoja1").Columns("J").PageBreak = xlNone


Método RecordMacro

Graba códigos si está activada la grabadora de macros.

Sintaxis

expresión.RecordMacro(BasicCode, XlmCode)

expresión   Requerida. Una expresión que devuelve un objeto Application.

BasicCode   Variant opcional. Una cadena que especifica el código de Visual Basic que se grabará si la grabadora de macros está grabando en un módulo de Visual Basic. La cadena se grabará en una sola línea. Si la cadena contiene un retorno de carro (carácter ASCII 10 o Chr$(10) en código), se grabará en varias líneas.

XlmCode   Variant opcional. Este argumento no se tiene en cuenta.

Comentarios

El método RecordMacro no puede grabar en el módulo activo (el módulo en el que reside el método RecordMacro).

Si se omite BasicCode y la aplicación está grabando en Visual Basic, Microsoft Excel grabará un enunciado Application.Run adecuado.

Para impedir la grabación (por ejemplo, si el usuario cancela el cuadro de diálogo ), use dos cadenas vacías cuando llame esta función.


Ejemplo del método RecordMacro

Este ejemplo graba código de Visual Basic.

Application.RecordMacro BasicCode:="Application.Run ""MiSub"" "


Método CheckSpelling

Sintaxis 1: Comprueba la ortografía de un objeto. Esta forma no devuelve un valor, pero Microsoft Excel mostrará el cuadro de diálogo Ortografía.

Sintaxis 2: Comprueba la ortografía de un sola palabra. Devuelve True si la palabra está en alguno de los diccionarios, False en caso contrario.

Sintaxis 1

expresión.CheckSpelling(CustomDictionary, IgnoreUppercase, AlwaysSuggest, IgnoreInitialAlefHamza, IgnoreFinalYaa, SpellScript)

Sintaxis 2

expresión.CheckSpelling(Word, CustomDictionary, IgnoreUppercase)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a. Use el objeto Application para comprobar una sola palabra (Sintaxis 2).

CustomDictionary   Variant opcional. Una cadena que indica el nombre de archivo del diccionario personalizado que se examinará si la palabra no se encuentra en el diccionario principal. Si este argumento se omite, se usará el diccionario especificado en ese momento.

IgnoreUppercase   Variant opcional. True para que Microsoft Excel pase por alto las palabras que estén escritas con todas las letras en mayúsculas. False para que Microsoft Excel compruebe las palabras que estén escritas con todas las letras en mayúsculas. Si este argumento se omite, se usará la configuración actual.

AlwaysSuggest   Variant opcional. True para que Microsoft Excel muestre una lista de sugerencias alternativas cuando encuentre un fallo de ortografía. False para que Microsoft Excel espere a que el usuario introduzca la ortografía correcta. Si este argumento se omite, se usará la configuración actual.

Word   String requerida (sólo se emplea con el objeto Application). La palabra que se desea verificar.

IgnoreInitialAlefHamza   Variant opcional. No se usa en la versión inglesa de Microsoft Excel para EE.UU.

IgnoreFinalYaa   Variant opcional. No se usa en la versión inglesa de Microsoft Excel para EE.UU.

SpellScript   Variant opcional. No se usa en la versión inglesa de Microsoft Excel para EE.UU.

Comentarios

Para comprobar los encabezados, pies de página y objetos de una hoja de cálculo, use este método en un objeto Worksheet.

Para comprobar únicamente celdas y notas, use este método con el objeto que devuelva el método Cells.


Ejemplo del método CheckSpelling

Este ejemplo verifica la ortografía de la Hoja1.

Worksheets("Hoja1").CheckSpelling


Método Ungroup (objeto Range)

Promueve un rango en un esquema (es decir, reduce su nivel de esquema). El rango especificado debe ser una fila o una columna o bien un rango de filas o columnas. Si el rango se encuentra en una tabla dinámica, el método desagrupará los elementos contenidos en el rango.

Sintaxis

expresión.Ungroup

expresión   Requerida. Una expresión que devuelve un objeto Range.

Comentarios

Si la celda activa está en un encabezado de campo de un campo maestro, se desagruparán todos los grupos de dicho campo y se eliminará el campo de la tabla dinámica. Cuando se desagrupa el último grupo de un campo maestro, se elimina todo el campo de la tabla dinámica.


Ejemplo del método Ungroup (objeto Range)

Este ejemplo desagrupa el campo llamado "FECHA_PEDIDO."

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

Set rangoGrupo = tablaDinámica.PivotFields("FECHA_PEDIDO").DataRange

rangoGrupo.Cells(1).Ungroup


Propiedad Position

Devuelve o establece la posición del objeto especificado tal como se muestra en la siguiente tabla. Long de Lectura/Escritura.

Objeto	Posición
DataLabel, DataLabels	Posición del rótulo de datos. Puede ser una de las siguientes constantes XlDataLabelPosition: xlLabelPositionAbove, xlLabelPositionBelow, xlLabelPositionBestFit, xlLabelPositionCenter, xlLabelPositionCustom, xlLabelPositionInsideBase, xlLabelPositionInsideEnd, xlLabelPositionLeft, xlLabelPositionMixed, xlLabelPositionOutsideEnd o xlLabelPositionRight.
Legend	Posición de la leyenda en el gráfico. Puede ser una de las siguientes constantes XlLegendPosition: xlLegendPositionBottom, xlLegendPositionCorner, xlLegendPositionLeft, xlLegendPositionRight o xlLegendPositionTop.
PivotField	Posición del campo (primera, segunda, tercera y así sucesivamente) entre todos los campos con su orientación (Filas, Columnas, Páginas, Datos).
PivotItem	Posición del elemento en su campo, si el elemento se muestra actualmente.


Ejemplo de la propiedad Position

En este ejemplo se desplaza la leyenda del gráfico al botón del gráfico.

Charts(1).Legend.Position = xlLegendPositionBottom

Este ejemplo muestra el número de posición del elemento de tabla dinámica que contiene la celda activa.

Worksheets("Hoja1").Activate

MsgBox "El elemento activo está en el número de posición " & _

ActiveCell.PivotItem.Position


Propiedad Orientation

Devuelve o establece la orientación del objeto tal como se muestra en la siguiente tabla. Long de Lectura/Escritura.

Objeto	Orientación
ChartObject, ChartObjects	Posición del gráfico incrustado. Puede ser una de las siguientes constantes XlPlacement: xlFreeFloating, xlMove o xlMoveAndSize.
PageSetup	Modo de impresión vertical u horizontal: Puede ser cualquiera de las siguientes constantes XlPageOrientation: xlLandscape o xlPortrait.
PivotField	La ubicación del campo en la tabla dinámica. Puede ser una de las siguientes constantes XlPivotFieldOrientation: xlColumnField, xlDataField, xlHidden, xlPageField o xlRowField.
AxisTitle, ChartTitle, DataLabel, Range, Style, TextFrame	La orientación del texto. Puede ser un valor entero comprendido entre  – 90 y 90 grados o bien una de las siguientes constantes XlOrientation: xlDownward, xlHorizontal, xlUpward o xlVertical.
TickLabels	La orientación del texto. Puede ser un valor entero comprendido entre  – 90 y 90 grados o bien una de las siguientes constantes XlTickLabelOrientation: xlTickLabelOrientationAutomatic, xlTickLabelOrientationDownward, xlTickLabelOrientationHorizontal, xlTickLabelOrientationUpward o xlTickLabelOrientationVertical.


Ejemplo de la propiedad Orientation

Este ejemplo muestra la orientación del campo llamado "FECHA_PEDIDO".

Set tablaDinámica = Worksheets("Hoja1").Range("A3").PivotTable

Set campoDinámico = tablaDinámica.PivotFields("FECHA_PEDIDO")

Select Case campoDinámico.Orientation

Case xlHidden

MsgBox "Campo oculto"

Case xlRowField

MsgBox "Campo de filas"

Case xlColumnField

MsgBox "Campo de columnas"

Case xlPageField

MsgBox "Campo de páginas"

Case xlDataField

MsgBox "Campo de datos"

End Select

Este ejemplo establece que la Hoja1 se imprima en orientación horizontal.

Worksheets("Hoja1").PageSetup.Orientation = xlLandscape


Propiedad BuiltinDocumentProperties

Devuelve un conjunto DocumentProperties que representa todas las propiedades de documento incorporadas en el libro especificado. Es de sólo lectura.

Comentarios

Esta propiedad devuelve el conjunto completo de propiedades de documento incorporadas. Use el método Item para devolver un solo miembro del conjunto (un objeto DocumentProperty) especificando el nombre de la propiedad o el índice del conjunto (en forma de número).

Puede hacer referencia a las propiedades de documento por el valor de índice o por nombre. En la siguiente lista se muestran los nombres de todas las propiedades de documento incorporadas disponibles:

Título Asunto Autor Palabras clave Comentario Plantilla Último autor Número de revisión Nombre de aplicación Fecha de impresión	Fecha de creación Fecha de modificación Tiempo de edición Páginas Palabras Caracteres Seguridad Categoría Formato Director	Organización Bytes Líneas Párrafos Diapositivas Notas Diapositivas ocultas Secuencias multimedia Base de hipervínculo Caracteres (con espacios)
Las aplicaciones contenedor deben definir valores para todas las propiedades de documento incorporadas. Si Microsoft Excel no define un valor para alguna de las propiedades de documento incorporadas, la lectura de la propiedad Value para la propiedad de dicho documento causará un error.

Dado que Item es el método predeterminado para el conjunto DocumentProperties, los enunciados siguientes son idénticos:

BuiltinDocumentProperties.Item(1)

BuiltinDocumentProperties(1)

Use la propiedad CustomDocumentProperties para devolver el conjunto de las propiedades de documento personalizadas.


Ejemplo de la propiedad BuiltinDocumentProperties

En este ejemplo se muestran los nombres de las propiedades de documento incorporadas en forma de lista en la hoja de cálculo uno.

rw = 1

Worksheets(1).Activate

For Each p In ActiveWorkbook.BuiltinDocumentProperties

    Cells(rw, 1).Value = p.Name

    rw = rw + 1

Next


Propiedad CustomDocumentProperties

Devuelve un conjunto DocumentProperties que representa todas las propiedades de documento personalizadas del libro especificado. Es de sólo lectura.

Comentarios

Esta propiedad devuelve el conjunto completo de propiedades de documento personalizadas. Use el método Item para devolver un solo miembro del conjunto (un objeto DocumentProperty) especificando el nombre de la propiedad o el índice del conjunto (en forma de número).

Dado que Item es el método predeterminado para el conjunto DocumentProperties, los enunciados siguientes son idénticos:

CustomDocumentProperties.Item("Completo")

CustomDocumentProperties("Completo")

Use la propiedad BuiltinDocumentProperties para devolver el conjunto de propiedades de documento incorporadas.


Ejemplo de la propiedad CustomDocumentProperties

En este ejemplo se muestran los nombres y los valores de las propiedades de documento personalizadas en forma de lista en la hoja de cálculo uno.

rw = 1

Worksheets(1).Activate

For Each p In ActiveWorkbook.CustomDocumentProperties

    Cells(rw, 1).Value = p.Name

    Cells(rw, 2).Value = p.Value

    rw = rw + 1

Next


Método Post

Envía el libro especificado a una carpeta pública. Este método sólo está disponible en un cliente de Microsoft Exchange que esté conectado con un servidor de Microsoft Exchange.

Sintaxis

expresión.Post(DestName)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

DestName   Variant opcional. Este argumento no se tiene en cuenta. El método Post pide al usuario que especifique el destino del libro.


Ejemplo del método Post

Este ejemplo envía el libro activo.

ActiveWorkbook.Post


Método SaveAs

Guarda los cambios de la hoja (sintaxis 1) o del libro (sintaxis 2) en un archivo diferente.

Sintaxis 1

expresión.SaveAs(Filename, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AddToMru, TextCodePage, TextVisualLayout)

Sintaxis 2

expresión.SaveAs(Filename, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodePage, TextVisualLayout)

expresión   Requerida. Una expresión que devuelve un objeto Chart o Worksheet (sintaxis 1) o un objeto Workbook (sintaxis 2).

FileName   Variant opcional. Una cadena que indica el nombre del archivo que se va a guardar. Puede especificar la ruta completa del archivo. Si sólo especifica el nombre, el archivo se guardará en la carpeta actual.

FileFormat   Variant opcional. El formato con el que se guardará el archivo. Véase la propiedad FileFormat para obtener una lista de los tipos válidos.

Password   Variant opcional. Una cadena de un máximo de 15 caracteres que indica la contraseña que se va a asignar al archivo (se distingue entre mayúsculas y minúsculas).

WriteResPassword   Variant opcional. Una cadena que indica la contraseña contra escritura del archivo. Si se utiliza la contraseña al guardar el archivo y no se especifica al abrirlo, el archivo se abrirá como de sólo lectura.

ReadOnlyRecommended   Variant opcional. Si es True indica que, al abrir el archivo, se mostrará un mensaje que recomienda abrir el archivo en modo de sólo lectura.

CreateBackup   Variant opcional. True para crear una copia de seguridad.

AccessMode   Variant opcional. El modo de acceso del libro. Puede ser una de las siguientes constantes XlSaveAsAccessMode: xlShared (archivo compartido), xlExclusive (modo exclusivo) o xlNoChange (no modificar el modo de acceso). Si se omite este argumento, el tipo de  acceso no cambiará. Este argumento no se tiene en cuenta si guarda un archivo compartido sin cambiar el nombre del archivo. Para cambiar el modo de acceso utilice el método ExclusiveAccess.

ConflictResolution   Variant opcional. Especifica cómo se resuelven los conflictos, si el libro es de tipo compartido. Puede ser una de las siguientes constantes XlSaveConflictResolution: xlUserResolution (muestra el cuadro de diálogo de resolución de conflictos), xlLocalSessionChanges (acepta los cambios del usuario local) o xlOtherSessionChanges (acepta los cambios que no pertenezcan al usuario local). Si no se especifica este argumento, se mostrará el cuadro de diálogo de resolución de conflictos.

AddToMru   Variant opcional. True para agregar el libro a la lista de archivos usados recientemente. El valor predeterminado es False.

TextCodePage   Variant opcional. No se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.

TextVisualLayout   Variant opcional. No se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Ejemplo del método SaveAs

Este ejemplo crea un nuevo libro, solicita un nombre de archivo al usuario y guarda el libro.

Set nuevoLibro = Workbooks.Add

Do

nombreArchivo = Application.GetSaveAsFilename

Loop Until nombreArchivo <> False

nuevoLibro.SaveAs Filename:=nombreArchivo


Método Open

Abre un libro.

Sintaxis

expresión.Open(FileName, UpdateLinks, ReadOnly, Format, Password, WriteResPassword, IgnoreReadOnlyRecommended, Origin, Delimiter, Editable, Notify, Converter, AddToMRU)

expresión   Requerida. Una expresión que devuelve un objeto Workbooks o RecentFile.

FileName   String requerida. El nombre de archivo del libro que se va a abrir.

UpdateLinks   Variant opcional. Especifica cómo se actualizan los vínculos del archivo. Si se omite este argumento, se preguntará al usuario. De lo contrario, el argumento tendrá uno de los siguientes valores:

Valor	Significado
0	No actualiza vínculos.
1	Actualiza vínculos externos, pero no vínculos remotos.
2	Actualiza vínculos remotos, pero no vínculos externos.
3	Actualiza vínculos remotos y vínculos externos.
Si se abre un archivo en formato WKS, WK1 o WK3 y UpdateLinks tiene el valor 2, Excel generará gráficos a partir de los gráficos adjuntos al archivo. Si el argumento es 0, no se creará ningún gráfico.

ReadOnly   Variant opcional. True para abrir el libro en modo de sólo lectura.

Format   Variant opcional. Al abrir un archivo de texto, este argumento especifica qué carácter se utiliza como separador, como se muestra en la siguiente tabla. Si se omite este argumento, se utilizará el separador actual.

Valor	Separador
1	Tabulación
2	Coma
3	Espacio
4	Punto y coma
5	Ninguno
6	Separador personalizado (véase el argumento Delimiter)
Password   Variant opcional. Una cadena que contiene la contraseña para abrir un libro protegido. Si no se especifica y el libro requiere contraseña, se le pedirá al usuario.

WriteResPassword   Variant opcional. Una cadena que contiene la contraseña para escribir en un libro protegido contra escritura. Si no se especifica y el libro requiere contraseña, se le pedirá al usuario.

IgnoreReadOnlyRecommended   Variant opcional. True si no desea que se muestre el mensaje que recomienda abrir el libro en modo de sólo lectura (si el libro se ha guardado con la opción Recomendado sólo lectura).

Origin   Variant opcional. Si el archivo es de texto, este argumento indica donde se originó. De esta manera podrán utilizarse la página de códigos y la combinación de retorno de carro y avance de línea correctas. Puede ser una de las siguientes constantes XlPlatform: xlMacintosh, xlWindows o xlMSDOS. Si se omite este argumento, se utilizará el sistema operativo actual.

Delimiter   Variant opcional. Si el archivo es de texto y el argumento Format es 6, este argumento es una cadena que especifica el carácter que se utilizará como separador. Por ejemplo: puede utilizar Chr(9) para utilizar tabulaciones, ",” para utilizar comas, “;” para utilizar punto y coma o puede utilizar otro carácter. Sólo se utiliza el primer carácter de la cadena.

Editable   Variant opcional. Si el archivo es una macro automática de Excel 4.0 y el valor del argumento es True, se abrirá como ventana visible. Si el argumento es False o se omite, la macro automática estará oculta y no se podrá hacer visible. Esta opción no afecta a las macros automáticas creadas con Excel 5.0 o versiones posteriores. Si el archivo no es una macro automática, True impide que se ejecute ninguna macro Auto_abrir.

Notify   Variant opcional. Si el archivo no se puede abrir en modo de Lectura/Escritura, al especificar True se agrega el archivo a la lista de notificación de archivos. El archivo se abrirá en modo de sólo lectura, se interrogará la lista de notificación de archivos y se notificará al usuario cuando el archivo quede disponible. Si este argumento es False o se omite, no se solicita notificación y fallarán todos los intentos de abrir un archivo no disponible.

Converter   Variant opcional. Especifica el índice del primer convertidor de archivos que se utilizará al abrir el archivo. El convertidor especificado se utilizará en primer lugar. Si este no reconoce el archivo, se intentarán todos los demás convertidores. El índice del convertidor es el número de fila del convertidor devuelto por la propiedad FileConverters.

AddToMru   Variant opcional. True para agregar el libro a la lista de archivos usados recientemente. El valor predeterminado es False.

Comentarios

Si el libro que se está abriendo contiene macros Auto_abrir, éstas no se ejecutarán al abrir el archivo desde Visual Basic. Para ejecutar las macros Auto_abrir debe utilizar el método RunAutoMacros.


Ejemplo del método Open

Este ejemplo abre el libro Análisis.xls y, a continuación, ejecuta la macro Auto_abrir.

Workbooks.Open "ANÁLISIS.XLS"

ActiveWorkbook.RunAutoMacros xlAutoOpen


Método MacroOptions

Corresponde a las opciones del cuadro de diálogo Opciones de la macro.

Sintaxis

expresión.MacroOptions(Macro, Description, HasMenu, MenuText, HasShortcutKey, ShortcutKey, Category, StatusBar, HelpContextID, HelpFile)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Macro   Variant opcional. El nombre de la macro.

Description   Variant opcional. La descripción de la macro.

HasMenu   Variant opcional. Este argumento no se tiene en cuenta.

MenuText   Variant opcional. Este argumento no se tiene en cuenta.

HasShortcutKey   Variant opcional. True para asignar a la macro una tecla de método abreviado (también debe especificarse el argumento ShortcutKey). Si es False, no se asignará ninguna tecla de método abreviado a la macro. Si la macro ya tiene tecla de método abreviado, al establecer el valor del argumento en False se eliminará. El valor predeterminado es False.

ShortcutKey   Variant opcional. Requerido si HasShortcutKey es True, de lo contrario se omite. La tecla de método abreviado.

Category   Variant opcional. Un entero que especifica la categoría de la función de macro (por ejemplo financiera, de fecha y hora o personalizada).

StatusBar   Variant opcional. El texto en la barra de estado para la macro.

HelpContextId   Variant opcional. Un entero que especifica el número de Id. de contexto del tema de la Ayuda asignado a la macro.

HelpFile   Variant opcional. El nombre del archivo de Ayuda que contiene el tema definido por HelpContextId.


Ejemplo del método MacroOptions

Este ejemplo agrega una tecla de método abreviado para la macro MiMacro.

Application.MacroOptions Macro:="MiMacro", _

HasShortcutKey:=True, ShortcutKey:="Z"


Método NoteText

Devuelve o establece la nota asociada con la celda que se encuentra en la esquina superior izquierda del rango. String de Lectura/Escritura.

Las notas de celda han sido reemplazadas por comentarios de rango. Para más información, véase el objeto Comment.

Sintaxis

expresión.NoteText(Text, Start, Length)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Text   Variant opcional. Contiene el texto que se va a agregar a la nota (hasta 255 caracteres). El texto se inserta comenzando en la posición Start y reemplaza el número de caracteres de la nota existente especificado por Length. Si se omite este argumento, el método devuelve, empezando en la posición Start, el número de caracteres de la nota especificado por Length.

Start   Variant opcional. Especifica la posición inicial del texto que se desea establecer o devolver. Si se omite este argumento, el método comenzará por el primer carácter. Especifique un número mayor que el número de caracteres en la nota existente para agregar texto a la nota.

Length   Variant opcional. El número de caracteres que se establecen o devuelven. Si se omite este argumento, Excel establecerá o devolverá caracteres comenzando por la posición de comienzo y hasta el final de la nota (hasta un máximo de 255 caracteres). Si hay más de 255 caracteres desde Start hasta el final de la nota, este método sólo devuelve 255.

Comentarios

Para agregar una nota de más de 255 caracteres, utilice este método para especificar los primeros 255 caracteres y repita el proceso para adjuntar los caracteres restantes en grupos de 255 caracteres.


Ejemplo del método NoteText

Este ejemplo establece el texto de nota de la celda A1 de Hoja1.

Worksheets("Hoja1").Range("A1").NoteText "¡Atención!"


Propiedad PictureType

Devuelve o establece el modo en que se muestran imágenes en un gráfico de columnas o de barras, o en los planos laterales y caras de un gráfico 3D. Variant de Lectura/Escritura.

Puede ser una de las siguientes constantes XlPictureType:

Valor	Significado
xlStretch	Estira la imagen hasta alcanzar el valor necesario.
xlStack	Apila o acumula las imágenes hasta alcanzar el valor necesario.
xlScale	Apila o acumula las imágenes, pero utilice la propiedad PictureUnit para determinar la unidad que representa cada imagen.
xlTile	Organiza las imágenes en forma de mosaico.


Ejemplo de la propiedad PictureType

Este ejemplo hace que la serie uno del Gráfico1 estire las imágenes. El ejemplo debe ejecutarse en un gráfico de columnas 2D con marcadores de datos de imagen.

Charts("Gráfico1").SeriesCollection(1).PictureType = xlStretch


Propiedad PictureUnit

Devuelve o establece la unidad de cada imagen del gráfico si la propiedad PictureType tiene el valor xlScale (de lo contrario, esta propiedad se omite). Long de Lectura/Escritura.


Ejemplo de la propiedad PictureUnit

Este ejemplo establece que la serie uno del Gráfico1 apile imágenes y utilice cada imagen para representar cinco unidades. El ejemplo debe ejecutarse en un gráfico de columnas 2D con marcadores de datos de imagen.

With Charts("Gráfico1").SeriesCollection(1)

.PictureType = xlScale

.PictureUnit = 5

End With


Método Paste

Objeto	Descripción
Chart	Pega los datos del gráfico del Portapapeles en el gráfico indicado.
Point o Series	Pega una imagen del Portapapeles en forma de marcador de la serie o el punto seleccionado. Este método puede ejecutarse en gráficos de columnas, barras, líneas o radiales y asigna el valor xlPicture a la propiedad MarkerStyle.
SeriesCollection	Pega los datos del Portapapeles en el conjunto de series especificado.
Worksheet	Pega el contenido del Portapapeles en la hoja.
Walls or Floor	Pega una imagen del Portapapeles en los planos laterales o inferiores.


Método Group (objeto Range)

Si el objeto Range está en un esquema, el método Group (sintaxis 1) disminuye el nivel del rango (en otras palabras: incrementa su nivel de esquema). El rango debe ser una fila o columna completa, o un rango de filas o de columnas.

Si el objeto Range es un rango discontinuo de una tabla dinámica, el método Group (sintaxis 1) agrupa el rango.

Si el objeto Range representa una única celda del rango de datos de la tabla dinámica, el método Group (sintaxis 2) realiza un agrupamiento numérico o basado en la fecha en dicho campo de la tabla.

Sintaxis 1

expresión.Group

Sintaxis 2

expresión.Group(Start, End, By, Periods)

expresión   Requerida. Una expresión que devuelve un objeto Range. Para la sintaxis 2, el objeto Range deberá ser una sola celda del rango de datos del campo de tabla dinámica. Si se aplica este método a más de una celda, fallará sin mostrar ningún mensaje de error. Para obtener información acerca de cómo utilizar el método Group de esta manera, véase el segundo ejemplo.

Start   Variant opcional. Opcional. El primer valor a agrupar. Si se omite o es True, se utiliza el primer valor del campo.

End   Variant opcional. El último valor a agrupar. Si se omite o es True, se utiliza el último valor del campo.

By   Variant opcional. Si el campo es numérico, especifica el tamaño de cada grupo.

Si el campo es una fecha, el cuarto elemento de la matriz Periods es True y todos los demás elementos son False, este argumento especifica el número de días de cada grupo. De lo contrario, se hará caso omiso del argumento.

Si se omite este argumento, se elegirá un tamaño de grupo predeterminado.

Periods   Variant opcional. Una matriz de valores booleanos que especifica el período del grupo, como se muestra en la tabla siguiente:

Elemento de la matriz	Periodo
1	Segundos
2	Minutos
3	Horas
4	Días
5	Meses
6	Trimestres
7	Años
Si un elemento de la matriz tiene el valor True, se crea el grupo correspondiente. Si el elemento es False, no se crea el grupo. Si el campo no es de fecha, el argumento no se tiene en cuenta.


Ejemplo del método Group (objeto Range)

Este ejemplo agrupa el campo "FECHA_PEDIDO" según periodos de 10 días.

Set tabDinamica = Worksheets("Hoja1").Range("A3").PivotTable

Set rangoGrupo = tabDinamica.PivotFields("FECHA_PEDIDO").DataRange

rangoGrupo.Cells(1).Group by:=10, periods:=Array(False, False, False, True, False, False, False)


Propiedad Pattern

Objeto Interior: Devuelve o establece el diseño del interior. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes XlPattern:

xlPatternAutomatic xlPatternChecker xlPatternCrissCross xlPatternDown xlPatternGray16 xlPatternGray25 xlPatternGray50 xlPatternGray25 xlPatternGray8 xlPatternGrid	xlPatternHorizontal xlPatternLightDown xlPatternLightHorizontal xlPatternLightUp xlPatternLightVertical xlPatternNone xlPatternSemiGray75 xlPatternSolid xlPatternUp xlPatternVertical
Objeto FillFormat: Devuelve o establece el diseño de relleno. Long de sólo lectura.

Puede ser una de las siguientes constantes MsoPatternType:

msoPattern10Percent msoPattern20Percent msoPattern25Percent msoPattern30Percent msoPattern40Percent msoPattern50Percent msoPattern5Percent msoPattern60Percent msoPattern70Percent msoPattern75Percent msoPattern80Percent msoPattern90Percent msoPatternDarkDownwardDiagonal msoPatternDarkHorizontal msoPatternDarkUpwardDiagonal msoPatternDarkVertical msoPatternDashedDownwardDiagonal msoPatternDashedHorizontal msoPatternDashedUpwardDiagonal msoPatternDashedVertical msoPatternDiagonalBrick msoPatternDivits msoPatternDottedGrid msoPatternHorizontalBrick msoPatternLargeCheckerBoard	msoPatternLargeConfetti msoPatternLargeGrid msoPatternLightDiamonds msoPatternLightDownwardDiagonal msoPatternLightHorizontal msoPatternLightUpwardDiagonal msoPatternLightVertical msoPatternMixed msoPatternNarrowHorizontal msoPatternNarrowVertical msoPatternOutlinedDiamonds msoPatternPlaid msoPatternShingles msoPatternSmallCheckerBoard msoPatternSmallConfetti msoPatternSmallGrid msoPatternSolidDiamonds msoPatternSpheres msoPatternTrellis msoPatternWaves msoPatternWavyLines msoPatternWaves msoPatternWideDownwardDiagonal msoPatternWideUpwardDiagonal


Ejemplo de la propiedad Pattern

Este ejemplo agrega un diseño entrecruzado al interior de la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Interior.Pattern = xlPatternCrissCross


Propiedad Value

El significado de la propiedad Value depende del objeto al que se aplique, como se muestra en la siguiente tabla:

Objeto	Valor
Application	Siempre devuelve "Microsoft Excel". Es de sólo lectura.
Borders	Sinónimo de Borders.LineStyle.
Name	Una cadena que contiene la fórmula a la que se refiere el nombre. La cadena utiliza la notación de referencia A1 en el lenguaje de la macro y comienza con un signo igual. Es de sólo lectura.
Parameter	El valor del parámetro. Para obtener más información, véase el objeto Parameter.
PivotField	El nombre del campo especificado, en la tabla dinámica.
PivotItem	El nombre del campo especificado, en el campo de la tabla dinámica.
PivotTable	El nombre de la tabla dinámica.
Range	El valor de la celda especificada. Si la celda está vacía, Value devuelve el valor Empty (utilice IsEmpty para comprobar ese caso). Si el objeto Range contiene más de una celda, devuelve una matriz de valores (utilice la función IsArray para comprobar ese caso).
Style	El nombre del estilo especificado.
Validation	True si se cumplen todos los criterios de validación (es decir, si el rango contiene datos válidos).


Ejemplo de la propiedad Value

Este ejemplo establece el valor de la celda A1 de la Hoja1 como 3.14159.

Worksheets("Hoja1").Range("A1").Value = 3.14159

Este ejemplo ejecuta un bucle sobre las celdas A1:D10 de la Hoja1. Si una de las celdas tiene un valor menor que 0.001, el código sustituirá el valor por 0 (cero).

For Each c in Worksheets("Hoja1").Range("A1:D10")

If c.Value < .001 Then

c.Value = 0

End If

Next c


Método Show

Objeto CustomView (sintaxis 1): Muestra la vista personalizada.

Objeto Range (sintaxis 1): Desplaza el contenido de la ventana activa para hacer visible el rango. El rango debe ser una celda individual del documento activo.

Objeto Scenario (sintaxis 1): Muestra el escenario, insertando los valores de éste en la hoja de cálculo. Las celdas afectadas son las celdas del escenario que cambian.

Objeto Dialog (sintaxis 2): Muestra el cuadro de diálogo integrado y espera a que el usuario introduzca los datos.

Sintaxis 1

expresión.Show

Sintaxis 2

objeto.Show(arg1, arg2, ..., arg30)

expresión   Requerida. Con sintaxis 1, una expresión que devuelve un objeto de la lista Se aplica a.

arg1, arg2, ..., arg30   Variant opcional. Para cuadros de diálogo integrados, los argumentos iniciales para el comando. Para obtener más información, véase la sección “Comentarios”.

Comentarios

En cuadros de diálogo integrados, este método devuelve True si el usuario hizo clic en "Aceptar", y False si el usuario hizo clic en "Cancelar".

Puede utilizar un solo cuadro de diálogo para cambiar varias propiedades simultáneamente. Por ejemplo, el cuadro de diálogo Formato de Celdas puede cambiar todas las propiedades del objeto Font.

Para algunos cuadros de diálogo integrados (Abrir, por ejemplo), podrá establecer valores iniciales utilizando arg1, arg2, ..., arg30. Para encontrar los argumentos a establecer, busque la constante de cuadro de diálogo correspondiente en Listas de argumentos de cuadros de diálogo integrados. Por ejemplo, puede buscar la constante xlDialogOpen para encontrar los argumentos del cuadro de diálogo Abrir. Para más información acerca de los cuadros de diálogo integrados, véase el conjunto Dialogs.


Ejemplo del método Show

Este ejemplo muestra el cuadro de diálogo Abrir.

Application.Dialogs(xlDialogOpen).Show


Propiedad LineStyle

Devuelve o establece el estilo de línea para el borde. Puede ser una de las siguientes constantes XlLineStyle: xlContinuous, xlDash, xlDashDot, xlDashDotDot, xlDot, xlDouble, xlSlantDashDot o xlLineStyleNone. Variant de Lectura/Escritura.


Ejemplo de la propiedad LineStyle

Este ejemplo pone un borde alrededor del área de gráfico y trazado de Gráfico1.

With Charts("Gráfico1")

.ChartArea.Border.LineStyle = xlDashDot

With .PlotArea.Border

.LineStyle = xlDashDotDot

.Weight = xlThick

End With

End With


Propiedad Shadow

True si la fuente es una fuente de sombra o si el objeto tiene sombra. Boolean de Lectura/Escritura.

Comentarios

Para el objeto Font, esta propiedad no tiene efecto en Microsoft Windows, pero su valor se mantiene (puede establecerse y devolverse).


Ejemplo de la propiedad Shadow

Este ejemplo agrega una sombra al título del Gráfico1.

Charts("Gráfico1").ChartTitle.Shadow = True


Propiedad Range (Objeto Application, Range o Worksheet)

Devuelve un objeto Range que representa una celda o un rango de celdas.

Sintaxis 1

expresión.Range(Cell1)

Sintaxis 2

expresión.Range(Cell1, Cell2)

expresión   Opcional para Application, requerido para Worksheet y Range. Una expresión que devuelve un objeto de la lista Se aplica a.

Cell1   Sintaxis 1. El nombre del rango. Debe ser una referencia con estilo A1 en el lenguaje de la macro.

Sintaxis 2: Variant requerido. Puede incluir un operador de rango (dos puntos), de intersección (espacio) o de unión (coma). Admite signos de dólar, pero no se tendrán en cuenta. Puede utilizar un nombre definido localmente en cualquier parte del rango. Si se utiliza un nombre, se supone que está en el lenguaje de la macro.

Variant opcionales Cell1, Cell2   La celda de la esquina superior izquierda e inferior derecha del rango. Puede ser un objeto Range que contenga una sola celda, una columna o fila entera o una cadena que hace referencia a una sola celda en el lenguaje de la macro.

Comentarios

Si no hace referencia a ningún objeto, esta propiedad es una abreviatura de ActiveSheet.Range. Devuelve un rango de la hoja activa. Si la hoja activa no es una hoja de cálculo, la propiedad falla.

Cuando se aplica a un objeto Range, la propiedad está relacionada con dicho objeto. Por ejemplo, si la celda C3 está seleccionada, Selection.Range("B1") devolverá la celda D3 porque está relacionada con el objeto Range devuelto por la propiedad Selection. Por otro lado, el código ActiveSheet.Range("B1") siempre devuelve la celda B1.


Ejemplo de la propiedad Range (Objeto Application, Range o Worksheet)

Este ejemplo establece el valor de la celda A1 de la Hoja1 como 3.14159.

Worksheets("Hoja1").Range("A1").Value = 3.14159

Este ejemplo crea una fórmula en la celda A1 de la Hoja1.

Worksheets("Hoja1").Range("A1").Formula = "=10*ALEATORIO()"

Este ejemplo ejecuta un bucle sobre las celdas A1:D10 de la Hoja1. Si una de las celdas tiene un valor menor que 0.001, el código sustituirá el valor por 0 (cero).

For Each c in Worksheets("Hoja1").Range("A1:D10")

If c.Value < .001 Then

c.Value = 0

End If

Next c

Este ejemplo ejecuta un bucle en el rango llamado "RangoPrueba" y muestra el número de celdas vacías del rango.

numVacias = 0

For Each c In Range("RangoPrueba")

If c.Value = "" Then

numVacias = numVacias + 1

End If

Next c

MsgBox "Hay " & numVacias & " celdas vacías en este rango"

Este ejemplo establece en cursiva el estilo de fuente de las celdas A1:C5 de la Hoja1. El ejemplo utiliza la sintaxis 2 de la propiedad Range.

Worksheets("Hoja1").Range(Cells(1, 1), Cells(5, 3)).Font.Italic = True


Propiedad RecentFiles

Devuelve un conjunto RecentFiles que representa la lista de archivos recientemente usados.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, véase Devolver un objeto de un conjunto.


Ejemplo de la propiedad RecentFiles

Este ejemplo establece en 6 el número máximo de archivos en la lista de archivos recientemente usados.

Application.RecentFiles.Maximum = 6


Propiedad Maximum

Devuelve o establece el número máximo de archivos de la lista de archivos recientemente usados. Puede ser un valor comprendido entre 0 y 9. Long de Lectura/Escritura.


Ejemplo de la propiedad Maximum

Este ejemplo establece en 6 el número máximo de archivos en la lista de archivos recientemente usados.

Application.RecentFiles.Maximum = 6


Propiedad CustomViews

Devuelve un conjunto CustomViews que representa todas las vistas personalizadas del libro.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, véase Returning an Object from a Collection..


Ejemplo de la propiedad CustomViews

Este ejemplo crea una nueva vista personalizada denominada “Resumen” en el libro activo.

ActiveWorkbook.CustomViews.Add "Resumen", True, True


Propiedad View

Devuelve o establece la vista que se muestra en la ventana. Puede ser una de las siguientes constantes XlWindowView: xlNormalView o xlPageBreakPreview. Long de Lectura/Escritura.


Ejemplo de la propiedad View

Este ejemplo cambia la vista de la ventana activa al modo vista previa de salto de página.

ActiveWindow.View = xlPageBreakPreview


Propiedad PrintSettings

True si la vista personalizada incluye la configuración de la impresora. Boolean de sólo lectura.


Ejemplo de la propiedad PrintSettings

Este ejemplo crea una lista de vistas personalizadas (incluyendo sus configuraciones de impresión y de filas y columnas) en el libro activo.

With Worksheets(1)

.Cells(1,1).Value = "Nombre"

.Cells(1,2).Value = "Configuración de impresión"

.Cells(1,3).Value = "Config. de filas y columnas"

fila = 0

For Each v In ActiveWorkbook.CustomViews

fila = fila + 1

.Cells(fila, 1).Value = v.Name

.Cells(fila, 2).Value = v.PrintSettings

.Cells(fila, 3).Value = v.RowColSettings

Next

End With


Método DragOff

Arrastra un salto de página y lo deja fuera del área de impresión.

Sintaxis

expresión.DragOff(Direction, RegionIndex)

expresión   Requerida. Una expresión que devuelve un objeto HPageBreak o VPageBreak.

Direction   Long requerido. La dirección en la que se arrastra el salto de página. Puede ser una de las siguientes constantes XlDirection: xlDown, xlToLeft, xlToRight o xlUp.

RegionIndex   Long requerido. El índice de la región del área de impresión para el salto de página. La región en la que se encuentra el puntero de mouse (ratón) cuando se presiona el botón del mouse, si el usuario arrastra el salto de línea. Si el área de impresión es contiguo, sólo hay una región de impresión. Si el área de impresión no es contiguo, hay más de una región de impresión.

Comentarios

Este método se utiliza, principalmente, para la grabadora de macros. Puede utilizar el método Delete para eliminar un salto de línea desde Visual Basic.


Ejemplo del método DragOff

Este ejemplo elimina el primer salto de página vertical de la hoja activa arrastrándolo fuera de la región de impresión uno, pasando por el borde derecho de la misma.

ActiveSheet.VPageBreaks(1).DragOff xlToRight, 1


Método Add (objeto CustomViews)

Crea una nueva vista personalizada. Devuelve un objeto CustomView que representa la nueva vista.

Sintaxis

expresión.Add(ViewName, PrintSettings, RowColSettings)

expresión   Requerida. Una expresión que devuelve un objeto CustomViews.

ViewName   String requerida. El nombre de la vista nueva.

PrintSettings   Variant opcional. True para incluir la configuración de impresión en la vista personalizada.

RowColSettings   Variant opcional. True para que la vista personalizada incluya la configuración de filas y columnas ocultas (incluyendo la información de filtros).


Ejemplo del método Add (objeto CustomViews)

Este ejemplo crea una nueva vista personalizada denominada “Resumen” en el libro activo.

ActiveWorkbook.CustomViews.Add "Resumen", True, True


Propiedad RowColSettings

True para que la vista personalizada incluya la configuración de filas y columnas ocultas (incluyendo la información de filtros). Boolean de sólo lectura.


Ejemplo de la propiedad RowColSettings

Este ejemplo crea una lista de vistas personalizadas (incluyendo sus configuraciones de impresión y de filas y columnas) en el libro activo.

With Worksheets(1)

.Cells(1,1).Value = "Nombre"

.Cells(1,2).Value = "Configuración de impresión"

.Cells(1,3).Value = "Config. de filas y columnas"

fila = 0

For Each v In ActiveWorkbook.CustomViews

fila = fila + 1

.Cells(fila, 1).Value = v.Name

.Cells(fila, 2).Value = v.PrintSettings

.Cells(fila, 3).Value = v.RowColSettings

Next

End With


Método AddToFavorites

Agrega un acceso rápido al libro o un hipervínculo a la carpeta Favoritos.

Sintaxis

expresión.AddToFavorites

expresión   Requerida. Una expresión que devuelve un objeto Workbook o Hyperlink.


Ejemplo del método AddToFavorites

Agrega un acceso rápido al libro activo o un hipervínculo a la carpeta Favoritos.

ActiveWorkbook.AddToFavorites


Método Follow

Muestra un documento de la memoria caché, si ya ha sido transferido a la máquina local. De lo contrario, este método resuelve el hipervínculo, transfiere el documento destino a la máquina local y muestra el documento en la aplicación apropiada.

Sintaxis

expresión.Follow(NewWindow, AddHistory, ExtraInfo, Method, HeaderInfo)

expresión   Requerida. Una expresión que devuelve un objeto Hyperlink.

NewWindow   Variant opcional. True para mostrar la aplicación de destino en una nueva ventana. El valor predeterminado es False.

AddHistory   Variant opcional. No se utiliza.Reservado para uso posterior.

ExtraInfo   Variant opcional. Una cadena (String) o matriz de bytes que especifica información adicional con la que HTTP puede resolver el hipervínculo. Por ejemplo, puede utilizar ExtraInfo para especificar las coordenadas de un mapa de imagen, el contenido de un formulario o un nombre de archivo FAT.

Method   Variant opcional. Especifica de qué modo se adjunta ExtraInfo. Puede ser una de las siguientes constantes MsoExtraInfoMethod:

Constante	Descripción
msoMethodGet	ExtraInfo es una cadena (String) que se agrega a la dirección.
msoMethodPost	ExtraInfo se envía como String o matriz de bytes.
HeaderInfo   Variant opcional. Una cadena (String) que especifica información de cabecera para la solicitud HTTP. El valor predeterminado es una cadena vacía.


Ejemplo del método Follow

Este ejemplo carga el documento adjunto al hipervínculo, que se encuentra en la forma uno de la hoja uno.

Worksheets(1).Shapes(1).Hyperlink.Follow NewWindow:=True


Método FollowHyperlink

Muestra un documento de la caché, si ya ha sido transferido a la máquina local. De lo contrario, este método resuelve el hipervínculo, transfiere el documento destino a la máquina local y muestra el documento en la aplicación apropiada.

Sintaxis

expresión.FollowHyperlink(Address, SubAddress, NewWindow, AddHistory, ExtraInfo, Method, HeaderInfo)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Address   String requerida. La dirección del documento destino.

SubAddress   Variant opcional. La dirección dentro del documento destino. El valor predeterminado es la cadena vacía.

NewWindow   Variant opcional. True para mostrar la aplicación de destino en una nueva ventana. El valor predeterminado es False.

AddHistory   Variant opcional. No se utiliza. Reservado para uso posterior.

ExtraInfo   Variant opcional. Una cadena (String) o matriz de bytes que especifica información adicional con la que HTTP puede resolver el hipervínculo. Por ejemplo, puede utilizar ExtraInfo para especificar las coordenadas de un mapa de imagen, el contenido de un formulario o un nombre de archivo FAT.

Method   Variant opcional. Especifica de qué modo se adjunta ExtraInfo. Puede ser una de las siguientes constantes MsoExtraInfoMethod:

Constante	Descripción
msoMethodGet	ExtraInfo es una cadena (String) que se agrega a la dirección.
msoMethodPost	ExtraInfo se envía como String o matriz de bytes.
msoMethodPostFile	ExtraInfo especifica un nombre de archivo FAT. El contenido del archivo es enviado.
HeaderInfo   Variant opcional. Una cadena (String) que especifica información de cabecera para la solicitud HTTP. El valor predeterminado es una cadena vacía.


Ejemplo del método FollowHyperlink

Este ejemplo transfiere a la máquina local el documento que hay en www.ejemplo.com, lo muestra en una ventana nueva y lo agrega a la carpeta Historial.

ActiveWorkbook.FollowHyperlink Address:="http://www.ejemplo.com", _

NewWindow:=True


Propiedad Hyperlink

Devuelve un objeto Hyperlink que representa el hipervínculo de la forma.


Ejemplo de la propiedad Hyperlink

Este ejemplo carga el documento adjunto al hipervínculo de la primera forma.

Worksheets(1).Shapes(1).Hyperlink.Follow NewWindow:=True


Propiedad Hyperlinks

Devuelve un conjunto Hyperlinks que representa los hipervínculos del rango u hoja de cálculo.

Para obtener más información acerca de cómo devolver un objeto de un conjunto, véase Devolver un objeto de un conjunto..


Ejemplo de la propiedad Hyperlinks

Este ejemplo comprueba si alguno de los hipervínculos de la Hoja1 contiene la palabra “Microsoft”.

For Each h in Worksheets(1).Hyperlinks

If Instr(h.Name, "Microsoft") <> 0 Then h.Follow

Next


Método Reload

Vuelve a cargar un libro que se encuentra en la memoria caché. Para ello resuelve el hipervínculo que hace referencia al libro y lo transfiere a la máquina local.

Sintaxis

expresión.Reload

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


Ejemplo del método Reload

Este ejemplo vuelve a cargar el libro activo.

ActiveWorkbook.Reload


Propiedad SubAddress

Devuelve o establece la ubicación dentro del documento a la que hace referencia el hipervínculo. String de Lectura/Escritura.


Ejemplo de la propiedad SubAddress

Este ejemplo agrega la ubicación de un rango al hipervínculo de la forma uno.

Worksheets(1).Shapes(1).Hyperlink.SubAddress = "A1:B10"


Método AddComment

Agrega un comentario al rango.

Sintaxis

expresión.AddComment(Text)

expresión   Requerida. Una expresión que devuelve un objeto Range.

Text   Variant opcional. El texto del comentario.


Ejemplo del método AddComment

Este ejemplo agrega un comentario a la celda E5 de la hoja de cálculo uno.

Worksheets(1).Range("E5").AddComment "Ventas actuales"


Propiedad AutoLoad

True si el objeto OLE se carga automáticamente cuando se abre el libro que contiene el objeto. Boolean de Lectura/Escritura.

Comentarios

Los controles ActiveX no tienen en cuenta esta propiedad. Los controles ActiveX siempre se cargan cuando se abre un libro.

Para la mayoría de los tipos de objeto OLE, esta propiedad no debe establecerse como True. La opción predeterminada para la propiedad AutoLoad es False para objetos OLE nuevos. Esto ahorra tiempo y memoria cuando Excel carga libros. La ventaja de cargar objetos OLE automáticamente es que, para objetos que representan datos volátiles, los vínculos con los datos de origen pueden restablecerse inmediatamente y los objetos pueden volver a mostrarse, si es necesario.


Ejemplo de la propiedad AutoLoad

Este ejemplo establece la propiedad AutoLoad del primer objeto OLE de la hoja activa.

ActiveSheet.OLEObjects(1).AutoLoad = False


Propiedad CorrectCapsLock

True si Excel corrige automáticamente el uso accidental de la tecla BLOQ MAYÚS. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CorrectCapsLock

Este ejemplo permite que Excel corrija automáticamente el uso accidental de la tecla BLOQ MAYÚS.

Application.AutoCorrect.CorrectCapsLock = True


Propiedad CorrectSentenceCap

True si Excel corrige automáticamente el uso incorrecto de minúsculas al comienzo de una frase. Boolean de Lectura/Escritura.


Ejemplo de la propiedad CorrectSentenceCap

Este ejemplo permite que Excel corrija el uso incorrecto de minúsculas.

Application.AutoCorrect.CorrectSentenceCap = True


Propiedad DefaultSaveFormat

Devuelve o establece el formato predeterminado con el que se guardan los archivos. Véase la propiedad FileFormat para obtener una lista de constantes válidas. Long de Lectura/Escritura.


Ejemplo de la propiedad DefaultSaveFormat

Este ejemplo establece el formato predeterminado con el que se guardan los archivos.

Application.DefaultSaveFormat = xlExcel4Workbook


Propiedad DisplayCommentIndicator

Devuelve o establece el modo en el que se muestran comentarios e indicadores. Puede ser una de las siguientes constantes XlCommentDisplayMode: xlNoIndicator, xlCommentIndicatorOnly o xlCommentAndIndicator. Long de Lectura/Escritura.


Ejemplo de la propiedad DisplayCommentIndicator

Este ejemplo oculta las sugerencias de celda, pero mantiene los indicadores de comentario.

Application.DisplayCommentIndicator = xlCommentIndicatorOnly


Propiedad EnableCalculation

True para recalcular automáticamente la hoja de cálculo cuando sea necesario. False para que ninguna hoja se recalcule de manera automática. Boolean de Lectura/Escritura.

Comentarios

Al cambiar la propiedad de False a True, la hoja se recalcula.


Ejemplo de la propiedad EnableCalculation

Este ejemplo hace que la hoja uno no se recalcule automáticamente.

Worksheets(1).EnableCalculation = False


Propiedad EnableSound

True para habilitar el sonido en Microsoft Office. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableSound

Este ejemplo inhabilita el sonido.

Application.EnableSound = False


Método Export

Exporta el gráfico con un formato de imagen.

Sintaxis

expresión.Export(FileName, FilterName, Interactive)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

FileName   String requerida. El nombre del archivo exportado.

FilterName   Variant opcional. El nombre, independiente del lenguaje, del filtro de imagen, tal como aparece en el Registro.

Interactive   Variant opcional. True para mostrar el cuadro de diálogo que contiene las opciones específicas del filtro. Si este argumento es False, Excel utilizará los valores predeterminados del filtro. El valor predeterminado es False.


Ejemplo del método Export

Este ejemplo exporta el gráfico uno como archivo GIF.

Charts(1).Export _

FileName:="ventas_actuales.gif", FilterName:="GIF"


Propiedad FileFind

Devuelve un objeto FileFind, que se puede utilizar en búsquedas de archivo. Esta propiedad sólo está disponible en Macintosh.


Propiedad FileSearch

Devuelve un objeto FileSearch, que se puede utilizar en búsquedas de archivo. Esta propiedad sólo está disponible en Microsoft Windows.


Ejemplo de la propiedad FileSearch

Este ejemplo crea un objeto FoundFiles, que representa todos los libros disponibles en la carpeta Mis documentos.

With Application.FileSearch

.LookIn = "c:\Mis documentos"

.FileType = msoFileTypeExcelWorkbooks

.Execute

End With


Propiedad PageRangeCells

Devuelve un objeto Range que representa las celdas de la tabla dinámica que contienen campos de página y listas desplegables de elementos.


Ejemplo de la propiedad PageRangeCells

Este ejemplo selecciona las celdas de la tabla dinámica que contienen campos de página y listas desplegables de elementos.

Worksheets(1).PivotTables(1).PageRangeCells.Select


Método GetData

Sintaxis

expresión.GetData(Name)

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.

Name   String requerida. Describe una celda única de la tabla dinámica, utilizando una sintaxis similar a la del método PivotSelect o por referencias a tabla dinámica en las fórmulas de elementos calculados.


Ejemplo del método GetData

Este ejemplo muestra la suma de ingresos por ventas de manzanas en el mes de Enero (Campo de datos = Ingresos, Producto = Manzanas, Mes = Enero).

Msgbox ActiveSheet.PivotTables(1) _

.GetData("'Suma de Ingresos' Manzanas Enero")


Propiedad PivotTableSelection

True si las tablas dinámicas utilizan selección estructurada. Boolean de Lectura/Escritura.


Ejemplo de la propiedad PivotTableSelection

Este ejemplo activa el modo de selección estructurada y, a continuación, establece la tabla dinámica uno para que sólo se permita la selección de datos.

Application.PivotTableSelection = True

Worksheets(1).PivotTables(1).SelectionMode = xlDataOnly


Método ListFormulas

Crea una lista con los elementos calculados y los campos de una tabla dinámica, en una hoja de cálculo distinta.

Sintaxis

expresión.ListFormulas

expresión   Requerida. Una expresión que devuelve un objeto PivotTable.


Ejemplo del método ListFormulas

Este ejemplo crea una lista de elementos calculados y de campos para la tabla dinámica uno.

Worksheets(1).PivotTables(1).ListFormulas


Propiedad Has3DShading

True si el grupo de gráficos tiene sombreado 3D. Boolean de Lectura/Escritura.


Ejemplo de la propiedad Has3DShading

Este ejemplo agrega sombreado 3D al grupo de gráficos uno del gráfico uno.

Charts(1).ChartGroups(1).Has3DShading = True


Propiedad HasAxis

Devuelve o establece información acerca de los ejes existentes en el gráfico. Variant de Lectura/Escritura.

Sintaxis

expresión.HasAxis(Index1, Index2)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Index1   Variant opcional. El tipo de eje. Puede ser una de las siguientes constantes XlAxisType: xlCategory, xlValue o xlSeriesAxis. Los ejes de series se aplican sólo a gráficos 3D.

Index2   Variant opcional. El grupo de ejes. Puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. Los gráficos 3D sólo tienen un grupo de ejes.

Comentarios

Excel puede crear o eliminar ejes si se cambia el tipo de gráfico o si se cambia la propiedad AxisGroup.


Ejemplo de la propiedad HasAxis

Este ejemplo activa el eje de valores principal del Gráfico1.

Charts("Gráfico1").HasAxis(xlValue, xlPrimary) = True


Propiedad ErrorTitle

Devuelve o establece el título del cuadro de error asociado a la validación de datos. String de Lectura/Escritura.


Ejemplo de la propiedad ErrorTitle

Este ejemplo agrega validación de datos a la celda E5.

With Range("e5").Validation

.Add xlValidateWholeNumber, xlValidAlertInformation, xlBetween, "5", "10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Escriba un entero de cinco a diez"

.ErrorMessage = "Debe escribir un número de cinco a diez"

End With


Propiedad InputTitle

Devuelve o establece el título del cuadro de entrada asociado a la validación de datos. String de Lectura/Escritura.


Ejemplo de la propiedad InputTitle

Este ejemplo activa la validación de datos para la celda E5.

With Range("e5").Validation

.Add xlValidateWholeNumber, xlValidAlertInformation, xlBetween, "5", "10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Escriba un entero de cinco a diez"

.ErrorMessage = "Debe escribir un número de cinco a diez"

End With


Propiedad IsAddin

True si el libro se está ejecutando como macro automática. Boolean de Lectura/Escritura.

Comentarios

Si establece en True esta propiedad, el libro tendrá las siguientes características:

•	Aunque se haya modificado el libro, no se preguntará al usuario si desea guardarlo.

•	La ventana del libro no será visible.

•	Las macros del libro no serán visibles en el cuadro de diálogo Macro (que se muestra seleccionando Macros en el menú Herramientas/Macro).

•	A pesar de no ser visibles, las macros se pueden ejecutar desde el cuadro de diálogo Macro. Además, los nombres de las macros no requieren ir precedidos por el nombre del libro.

•	Mantener presionada la tecla MAYÚS al abrir un libro no tiene ningún efecto.


Ejemplo de la propiedad IsAddin

Este ejemplo ejecuta una parte del código, si el libro es una macro automática.

If ThisWorkbook.IsAddin Then

' este código se ejecuta si el libro es una macro automática

End If


Método Next

Devuelve un objeto Comment que representa el siguiente comentario.

Sintaxis

expresión.Next

expresión   Requerida. Una expresión que devuelve un objeto Comment.

Comentarios

Este método sólo afecta a una hoja. Si se aplica este método al último comentario de una hoja, devuelve Null y no el primer comentario de la siguiente hoja.


Ejemplo del método Next

Este ejemplo oculta el siguiente comentario.

Range("a1").Comment.Next.Visible = False


Método Previous

Devuelve un objeto Comment que representa el anterior comentario.

Sintaxis

expresión.Previous

expresión   Requerida. Una expresión que devuelve un objeto Comment.

Comentarios

Este método sólo afecta a una hoja. Si se aplica este método al primer comentario de una hoja, devuelve Null y no el último comentario de la hoja anterior.


Ejemplo del método Previous

Este ejemplo oculta el anterior comentario.

Range("a1").Comment.Previous.Visible = False


Propiedad HighlightChangesOnScreen

True si los cambios realizados al libro compartido se resaltan en la pantalla. Boolean de Lectura/Escritura.


Ejemplo de la propiedad HighlightChangesOnScreen

Este ejemplo resalta los cambios del libro compartido.

ThisWorkbook.HighlightChangesOnScreen


Propiedad ListChangesOnNewSheet

True si los cambios realizados al libro compartido se muestran en una hoja de cálculo distinta. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ListChangesOnNewSheet

Este ejemplo muestra los cambios del libro compartido en una hoja de cálculo distinta.

With ActiveWorkbook

.HighlightChangesOptions When:=xlSinceMyLastSave, Who:="Todos"

.ListChangesOnNewSheet = True

End With


Método HighlightChangesOptions

Controla cómo se muestran los cambios en un libro compartido.

Sintaxis

expresión.HighlightChangesOptions(When, Who, Where)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

When   Variant opcional. Los cambios que se muestran. Puede ser una de las siguientes constantes XlHighlightChangesTime: xlSinceMyLastSave, xlAllChanges o xlNotYetReviewed.

Who   Variant opcional. El usuario o usuarios cuyos cambios se muestran. Puede ser “Todos”, “Todos excepto yo” o el nombre de uno de los usuarios del libro compartido.

Where   Variant opcional. Una referencia a un rango, en estilo A1, que especifica el área cuyos cambios se tendrán en cuenta.


Ejemplo del método HighlightChangesOptions

Este ejemplo muestra los cambios del libro compartido en una hoja de cálculo distinta.

With ActiveWorkbook

.HighlightChangesOptions When:=xlSinceMyLastSave, Who:="Todos"

.ListChangesOnNewSheet = True

End With


Método RefreshAll

Actualiza los rangos de datos externos y las tablas dinámicas del libro.

Sintaxis

expresión.RefreshAll

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Comentarios

No existe ningún orden de actualización definido.


Ejemplo del método RefreshAll

Este ejemplo actualiza los rangos de datos externos y las tablas dinámicas del libro.

ThisWorkbook.RefreshAll


Propiedad ReadingOrder

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Propiedad ControlCharacters

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Propiedad CursorMovement

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Propiedad DefaultSheetDirection

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Propiedad IMEMode

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Propiedad UILanguage

Esta propiedad no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Método Add (conjunto OLEObjects)

Agrega un objeto OLE nuevo a una hoja. Devuelve un objeto OLEObject.

Sintaxis

expresión.Add(ClassType, FileName, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel, Left, Top, Width, Height)

expresión   Requerida. Una expresión que devuelve un conjunto OLEObjects.

ClassType   Variant opcional. (Debe especificar ClassType o FileName). Una cadena que contiene el identificador programático del objeto que se va a crear. Si se especifica ClassType, no se tienen en cuenta FileName ni Link. Para obtener más información acerca de los identificadores programáticos, véase Identificadores programáticos OLE.

FileName   Variant opcional. (Debe especificar ClassType o FileName). Una cadena que especifica el archivo a partir del cual se va a crear el objeto OLE.

Link   Variant opcional. True para vincular el nuevo objeto OLE, creado a partir del archivo FileName, a dicho archivo. Si el objeto no se vincula, se creará como copia del archivo. El valor predeterminado es False.

DisplayAsIcon   Variant opcional. True para mostrar el nuevo objeto OLE como icono o como su imagen normal. Si este argumento es True, se pueden utilizar IconFileName e IconIndex para especificar un icono.

IconFileName   Variant opcional. Una cadena que especifica qué archivo contiene el icono que se va a mostrar. Este argumento se utiliza únicamente si DisplayAsIcon es True. Si este argumento no se especifica o el archivo no contiene iconos, se mostrará el icono predeterminado de la clase OLE.

IconIndex   Variant opcional. El índice del icono en el archivo de iconos. Se utiliza sólo si DisplayAsIcon es True e IconFileName hace referencia a un archivo válido que contiene iconos. Si en el archivo especificado por IconFileName no existe ningún icono con el índice IconIndex, se utilizará el primer icono del archivo.

IconLabel   Variant opcional. Una cadena que especifica el rótulo que se mostrará debajo del icono. Este argumento se utiliza únicamente si DisplayAsIcon es True. Si este argumento no se especifica o es una cadena vacía (“”), no se mostrará ningún rótulo.

Left, Top   Variant opcional. Especifica, en puntos(1/72 pulgadas), las coordenadas iniciales del nuevo objeto en relación con la esquina superior izquierda de la celda A1 de la hoja de cálculo, o con la esquina superior izquierda de un gráfico.

Width, Height   Variant opcional. El tamaño inicial, en puntos, del nuevo objeto.


Ejemplo del método Add

Este ejemplo crea un nuevo objeto OLE de Microsoft Word en la Hoja1.

ActiveWorkbook.Worksheets("Hoja1").OLEObjects.Add _

ClassType:="Word.Document"

Este ejemplo agrega un botón de comando a la hoja uno.

Worksheets(1).OLEObjects.Add ClassType:="Forms.CommandButton.1", _

Link:=False, DisplayAsIcon:=False, Left:=40, Top:=40, _

Width:=150, Height:=10


Propiedad ProgId

Devuelve los identificadores programáticos del objeto. String de sólo lectura.

Para obtener más información acerca de los identificadores programáticos, véase Identificadores programáticos OLE.


Ejemplo de la propiedad ProgId

Este ejemplo crea una lista con los identificadores programáticos de los objetos OLE que hay en la hoja uno.

fila = 0

For Each o in Worksheets(1).OLEObjects

With Worksheets(2)

fila = fila + 1

.cells(fila, 1).Value = o.ProgId

End With

Next


Método SetLinkOnData

Establece el nombre de un procedimiento que se ejecutará cada vez que se actualice un vínculo DDE.

Sintaxis

expresión.SetLinkOnData(Name, Procedure)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

Name   String requerida. El nombre del vínculo DDE/OLE, tal como lo devuelve el método LinkSources.

Procedure   String requerida. El nombre del procedimiento a ejecutar cuando se actualiza el vínculo. Puede ser tanto una macro de Microsoft Excel 4.0, como un procedimiento de Visual Basic. Utilice una cadena de caracteres vacía ("") para este argumento, si no desea que se ejecute ningún procedimiento cuando el vínculo se actualice.


Ejemplo del método SetLinkOnData

Este ejemplo establece el nombre del procedimiento que se ejecuta cada vez que se actualiza el vínculo DDE.

ActiveWorkbook.SetLinkOnData "WinWord|'C:\ARCHMSJ.DOC'!DDE_LINK1", _

"mi_Macro_Actualizar_Vinculo"


Método SetSourceData

Establece el rango que contiene los datos de origen del gráfico.

Sintaxis

expresión.SetSourceData(Source, PlotBy)

expresión   Requerida. Una expresión que devuelve un objeto Chart.

Source   Range requerido. El rango que contiene los datos de origen.

PlotBy   Variant opcional. Especifica el modo en el que se trazarán los datos. Puede ser cualquiera de las siguientes constantes XlRowCol: xlColumns o xlRows.


Ejemplo del método SetSourceData

Este ejemplo establece el rango que contiene los datos de origen del gráfico uno.

Charts(1).SetSourceData Source:=Sheets(1).Range("a1:a10"), _

PlotBy:=xlColumns


Propiedad TemplateRemoveExtData

True para eliminar la referencias a datos externos cuando el libro se guarde como plantilla. Boolean de Lectura/Escritura.


Ejemplo de la propiedad TemplateRemoveExtData

Este ejemplo guarda el libro como plantilla sin datos externos.

With ThisWorkbook

.TemplateRemoveExtData = True

.SaveAs "actual", xlTemplate

.TemplateRemoveExtData = False

End With


Método Text

Establece el texto del comentario.

Sintaxis

expresión.Text(Text, Start, Overwrite)

expresión   Requerida. Una expresión que devuelve un objeto Comment.

Text   Variant opcional. El texto a agregar.

Start   Variant opcional. El índice de carácter dónde se va a agregar el texto. Si este argumento se omite, se eliminará todo el texto existente del comentario.

Overwrite   Variant opcional. True para sobrescribir el texto existente. El valor predeterminado es False (el texto se insertará).


Ejemplo del método Text

Este ejemplo agrega un comentario a la celda E5 de la hoja uno.

With Worksheets(1).Range("e5").AddComment

.Visible = False

.Text "revisado con fecha " & Date

End With


Método Select

Selecciona el objeto.

Sintaxis

expresión.Select(Replace)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Replace   Variant opcional (sólo se utiliza con hojas). True para reemplazar la selección actual con el objeto especificado. Si es False, la selección actual se extiende para incluir cualquier objeto que haya sido seleccionado previamente y al objeto especificado.

Comentarios

Para seleccionar una celda o un rango de celdas, utilice el método Select. Para activar sólo una celda, utilice el método Activate.


Ejemplo del método Select

Este ejemplo selecciona las celdas A1:B3 de la Hoja1.

Worksheets("Hoja1").Activate

Range("A1:B3").Select


Método ResetColors

Restablece los colores predeterminados de la paleta.

Sintaxis

expresión.ResetColors

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


Ejemplo del método ResetColors

Este ejemplo restablece los colores predeterminados de la paleta del libro activo.

ActiveWorkbook.ResetColors


Propiedad BackColor

Objeto ChartFillFormat: Devuelve un objeto ChartColorFormat que representa el color de fondo del relleno especificado. Es de sólo lectura.

Todos los demás objetos: Devuelve un objeto ColorFormat que representa el color de fondo del relleno especificado. Es de sólo lectura.


Ejemplo de la propiedad BackColor

Este ejemplo establece el color de primer plano, de fondo y el degradado del relleno de área del gráfico uno.

With Charts(1).ChartArea.Fill

.Visible = True

.ForeColor.SchemeColor = 15

.BackColor.SchemeColor = 17

.TwoColorGradient msoGradientHorizontal, 1

End With


Propiedad ForeColor

Objeto ChartFillFormat: Devuelve un objeto ChartColorFormat que representa el color de fondo del relleno especificado. Es de sólo lectura.

Todos los demás objetos: Devuelve un objeto ColorFormat que representa el color de fondo del relleno especificado. Es de sólo lectura.


Ejemplo de la propiedad ForeColor

Este ejemplo establece el color de primer plano, de fondo y el degradado del relleno de área del gráfico uno.

With Charts(1).ChartArea.Fill

.Visible = True

.ForeColor.SchemeColor = 15

.BackColor.SchemeColor = 17

.TwoColorGradient msoGradientHorizontal, 1

End With


Propiedad GradientColorType

Devuelve el tipo de color degradado del relleno especificado. Puede ser una de las siguientes constantes MsoGradientColorType: msoGradientColorMixed, msoGradientOneColor, msoGradientPresetColors o msoGradientTwoColors. Long de sólo lectura.


Ejemplo de la propiedad GradientColorType

Este ejemplo cambia el formato de relleno del gráfico dos, para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient And _

        c1f.GradientColorType = msoGradientOneColor Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .OneColorGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.GradientDegree

    End With

End If


Propiedad GradientDegree

Dado un relleno sombreado de un solo color, devuelve la intensidad del degradado como un valor de punto flotante. El rango va desde 0.0 (oscuro) a 1.0 (claro). Single de sólo lectura.

Esta propiedad es de sólo lectura. Utilice el método OneColorGradient para establecer la intensidad de degradado del relleno.


Ejemplo de la propiedad GradientDegree

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient And _

        c1f.GradientColorType = msoGradientOneColor Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .OneColorGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.GradientDegree

    End With

End If


Propiedad GradientStyle

Devuelve el tipo de degradado del relleno especificado. Puede ser una de las siguientes constantes MsoGradientStyle: msoGradientDiagonalDown, msoGradientDiagonalUp, msoGradientFromCenter, msoGradientFromCorner, msoGradientFromTitle, msoGradientHorizontal, msoGradientMixed o msoGradientVertical. Long de sólo lectura.

Esta propiedad es de sólo lectura. Utilice los métodos OneColorGradient o TwoColorGradient para establecer el estilo de degradado del relleno.


Ejemplo de la propiedad GradientStyle

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient And _

        c1f.GradientColorType = msoGradientOneColor Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .OneColorGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.GradientDegree

    End With

End If


Propiedad GradientVariant

Devuelve la variante de sombreado del relleno especificado, como un valor entero de 1 a 4. Los valores de esta propiedad corresponden a las variantes que aparecen en la ficha Degradado del cuadro de diálogo Efectos de relleno (numeradas de izquierda a derecha y de arriba hacia abajo). Long de sólo lectura.

Esta propiedad es de sólo lectura. Utilice los métodos OneColorGradient o TwoColorGradient para establecer la variante de degradado del relleno.


Ejemplo de la propiedad GradientVariant

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient And _

        c1f.GradientColorType = msoGradientOneColor Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .OneColorGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.GradientDegree

    End With

End If


Método OneColorGradient

Convierte el relleno especificado en un degradado de un solo color.

Sintaxis

expresión.OneColorGradient(GradientStyle, Variant, Degree)

expresión   Requerida. Una expresión que devuelve un objeto FillFormat.

GradientStyle   Long requerido. El estilo del degradado. Puede ser una de las siguientes constantes MsoGradientStyle: msoGradientDiagonalDown, msoGradientDiagonalUp, msoGradientFromCenter, msoGradientFromCorner, msoGradientHorizontal o msoGradientVertical.

Variant   Long requerido. La variante de degradado. Puede ser un valor de 1 a 4, que corresponden a cada una de las cuatro variantes de la ficha Degradado en el cuadro de diálogo Efectos de relleno. Si GradientStyle es msoGradientFromCenter, el argumento Variant sólo podrá ser 1 o 2.

Degree   Single requerido. La intensidad del degradado. Puede ser un valor entre 0.0 (oscuro) y 1.0 (claro).


Ejemplo del método OneColorGradient

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient And _

        c1f.GradientColorType = msoGradientOneColor Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .OneColorGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.GradientDegree

    End With

End If


Método Patterned

Convierte el relleno especificado en una trama.

Sintaxis

expresión.Patterned(Pattern)

expresión   Requerida. Una expresión que devuelve un objeto FillFormat.

Pattern   Long requerido. El tipo de trama. Puede ser una de las siguientes constantes MsoPatternType:

msoPattern10Percent msoPattern20Percent msoPattern25Percent msoPattern30Percent msoPattern40Percent msoPattern50Percent msoPattern5Percent msoPattern60Percent msoPattern70Percent msoPattern75Percent msoPattern80Percent msoPattern90Percent msoPatternDarkDownwardDiagonal msoPatternDarkHorizontal msoPatternDarkUpwardDiagonal msoPatternDarkVertical msoPatternDashedDownwardDiagonal msoPatternDashedHorizontal msoPatternDashedUpwardDiagonal msoPatternDashedVertical msoPatternDiagonalBrick msoPatternDivits msoPatternDottedGrid msoPatternHorizontalBrick msoPatternLargeCheckerBoard	msoPatternLargeConfetti msoPatternLargeGrid msoPatternLightDiamonds msoPatternLightDownwardDiagonal msoPatternLightHorizontal msoPatternLightUpwardDiagonal msoPatternLightVertical msoPatternMixed msoPatternNarrowHorizontal msoPatternNarrowVertical msoPatternOutlinedDiamonds msoPatternPlaid msoPatternShingles msoPatternSmallCheckerBoard msoPatternSmallConfetti msoPatternSmallGrid msoPatternSolidDiamonds msoPatternSpheres msoPatternTrellis msoPatternWaves msoPatternWavyLines msoPatternWaves msoPatternWideDownwardDiagonal msoPatternWideUpwardDiagonal


Ejemplo del método Patterned

Este ejemplo establece la trama de relleno para el gráfico uno.

With Charts(1).ChartArea.Fill

.Patterned msoPatternDiagonalBrick

.Visible = True

End With


Método PresetGradient

Convierte el relleno especificado en un degradado predeterminado.

Sintaxis

expresión.PresetGradient(GradientStyle, Variant, PresetGradientType)

expresión   Requerida. Una expresión que devuelve un objeto FillFormat.

GradientStyle   Long requerido. El estilo del degradado. Puede ser una de las siguientes constantes MsoGradientStyle: msoGradientDiagonalDown, msoGradientDiagonalUp, msoGradientFromCenter, msoGradientFromCorner, msoGradientHorizontal o msoGradientVertical.

Variant   Long requerido. La variante de degradado. Puede ser un valor de 1 a 4, que corresponden a cada una de las cuatro variantes de la ficha Degradado en el cuadro de diálogo Efectos de relleno. Si GradientStyle es msoGradientFromCenter, el argumento Variant sólo podrá ser 1 o 2.

PresetGradientType   Long requerido. El tipo de degradado. Puede ser una de las siguientes constantes MsoPresetGradientType:

msoGradientBrass msoGradientCalmWater msoGradientChrome msoGradientChromeII msoGradientDaybreak msoGradientDesert msoGradientEarlySunset msoGradientFire msoGradientFog msoGradientGold msoGradientGoldII msoGradientHorizon msoGradientLateSunset	msoGradientMahogany msoGradientMoss msoGradientNightfall msoGradientOcean msoGradientParchment msoGradientPeacock msoGradientRainbow msoGradientRainbowII msoGradientSapphire msoGradientSilver msoGradientWheat msoPresetGradientMixed


Ejemplo del método PresetGradient

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .PresetGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.PresetGradientType

    End With

End If


Propiedad PresetGradientType

Devuelve el tipo de degradado predeterminado para el relleno especificado. Long de sólo lectura.

Puede ser una de las siguientes constantes MsoPresetGradientType:

msoGradientBrass msoGradientCalmWater msoGradientChrome msoGradientChromeII msoGradientDaybreak msoGradientDesert msoGradientEarlySunset msoGradientFire msoGradientFog msoGradientGold msoGradientGoldII msoGradientHorizon msoGradientLateSunset	msoGradientMahogany msoGradientMoss msoGradientNightfall msoGradientOcean msoGradientParchment msoGradientPeacock msoGradientRainbow msoGradientRainbowII msoGradientSapphire msoGradientSilver msoGradientWheat msoPresetGradientMixed
Utilice el método PresetGradient para establecer el tipo de degradado preestablecido para el relleno.


Ejemplo de la propiedad PresetGradientType

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillGradient Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        .PresetGradient c1f.GradientStyle, _

            c1f.GradientVariant, c1f.PresetGradientType

    End With

End If


Método PresetTextured

Convierte el relleno especificado en una textura preestablecida.

Sintaxis

expresión.PresetTextured(PresetTexture)

expresión   Una expresión que devuelve un objeto FillFormat.

PresetTexture   Long requerido. La textura preestablecida. Puede ser una de las siguientes constantes MsoPresetTexture: msoPresetTextureMixed, msoTextureBrownMarble, msoTextureCloth, msoTextureCork, msoTextureGranite, msoTextureGreenMarble, msoTextureMediumWood, msoTextureOak, msoTexturePaper, msoTextureSand, msoTextureWalnut, msoTextureWhiteMarble o msoTextureWovenMat.


Ejemplo del método PresetTextured

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillTextured Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        If c1f.TextureType = msoTexturePreset Then

            .PresetTextured c1f.PresetTexture

        Else

            .UserTextured c1f.TextureName

        End If

    End With

End If


Propiedad PresetTexture

Devuelve la textura preestablecida del relleno especificado. Long de sólo lectura.

Puede ser una de las siguientes constantes MsoPresetTexture:

msoPresetTextureMixed msoTextureBlueTissuePaper msoTextureBouquet msoTextureBrownMarble msoTextureCanvas msoTextureCork msoTextureDenim msoTextureFishFossil msoTextureGranite msoTextureGreenMarble msoTextureMediumWood msoTextureNewsprint msoTextureOak	msoTexturePaperBag msoTexturePapyrus msoTextureParchment msoTexturePinkTissuePaper msoTexturePurpleMesh msoTextureRecycledPaper msoTextureSand msoTextureStationery msoTextureWalnut msoTextureWaterDroplets msoTextureWhiteMarble msoTextureWovenMat
Utilice el método PresetTextured para establecer el tipo de textura preestablecida para el relleno.


Ejemplo de la propiedad PresetTexture

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillTextured Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        If c1f.TextureType = msoTexturePreset Then

            .PresetTextured c1f.PresetTexture

        Else

            .UserTextured c1f.TextureName

        End If

    End With

End If


Propiedad RGB

Objeto ChartColorFormat: Devuelve el valor rojo, verde y azul del color especificado. Long de sólo lectura.

Objeto ColorFormat: Devuelve o establece el valor rojo, verde y azul del color especificado. Long de Lectura/Escritura.


Ejemplo de la propiedad RGB

Este ejemplo cambia el color del interior del rango A1:A10 para que sea igual que el color de relleno del área del gráfico del gráfico uno.

Worksheets(1).Range("A1:A10").Interior.Color =

Charts(1).ChartArea.Fill.ForeColor.RGB


Propiedad SchemeColor

Devuelve o establece el color de un objeto Color como un índice que hace referencia a la combinación de colores actual. Long de Lectura/Escritura.


Ejemplo de la propiedad SchemeColor

Este ejemplo establece el color de primer plano, de fondo y el degradado del relleno de área del gráfico uno.

With Charts(1).ChartArea.Fill

.Visible = True

.ForeColor.SchemeColor = 15

.BackColor.SchemeColor = 17

.TwoColorGradient msoGradientHorizontal, 1

End With


Propiedad TextureName

Devuelve el nombre de archivo de la textura personalizada para el relleno especificado. String de sólo lectura.

Utilice los métodos UserPicture o UserTextured para establecer el archivo de textura para el relleno.


Ejemplo de la propiedad TextureName

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillTextured Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        If c1f.TextureType = msoTexturePreset Then

            .PresetTextured c1f.PresetTexture

        Else

            .UserTextured c1f.TextureName

        End If

    End With

End If


Propiedad TextureType

Devuelve el tipo de textura del relleno especificado. Puede ser una de las siguientes constantes MsoTextureType: msoTexturePreset, msoTextureTypeMixed o msoTextureUserDefined. Long de sólo lectura.

Utilice el método UserTextured para establecer el tipo de textura para el relleno.


Ejemplo de la propiedad TextureType

Este ejemplo cambia el formato de relleno del gráfico dos para que tenga el mismo estilo que el gráfico uno.

Set c1f = Charts(1).ChartArea.Fill

If c1f.Type = msoFillTextured Then

    With Charts(2).ChartArea.Fill

        .Visible = True

        If c1f.TextureType = msoTexturePreset Then

            .PresetTextured c1f.PresetTexture

        Else

            .UserTextured c1f.TextureName

        End If

    End With

End If


Propiedad Transparency

Devuelve o establece el grado de transparencia del relleno especificado, como valor entre 0.0 (opaco) y 1.0 (transparente). Double de Lectura/Escritura.

Comentarios

El valor de esta propiedad afecta sólo al aspecto de los rellenos y líneas de color opaco; no tiene efecto en el aspecto de las líneas de entramado o rellenos entramados, degradados, de textura o de imagen.


Ejemplo de la propiedad Transparency

Este ejemplo establece en rojo semitransparente la sombra de la tercera forma de la hoja de cálculo uno. Si la forma no tenía una sombra, en el ejemplo siguiente se agrega una.

With Worksheets(1).Shapes(3).Shadow

    .Visible = True

    .ForeColor.RGB = RGB(255, 0, 0)

    .Transparency = 0.5

End With


Método TwoColorGradient

Convierte el relleno especificado en un degradado de dos colores.

Sintaxis

expresión.TwoColorGradient(Style, Variant)

expresión   Requerida. Una expresión que devuelve un objeto FillFormat.

Style   Long requerido. El estilo del degradado. Puede ser una de las siguientes constantes MsoGradientStyle: msoGradientDiagonalDown, msoGradientDiagonalUp, msoGradientFromCenter, msoGradientFromCorner, msoGradientHorizontal o msoGradientVertical.

Variant   Long requerido. La variante de degradado. Puede ser un valor de 1 a 4, que corresponde a cada una de las cuatro variantes de la ficha Degradado en el cuadro de diálogo Efectos de relleno. Si Style es msoGradientFromCenter, el argumento Variant sólo podrá ser 1 o 2.


Ejemplo del método TwoColorGradient

Este ejemplo establece el color de primer plano, de fondo y el degradado del relleno de área del gráfico uno.

With Charts(1).ChartArea.Fill

.Visible = True

.ForeColor.SchemeColor = 15

.BackColor.SchemeColor = 17

.TwoColorGradient msoGradientHorizontal, 1

End With


Método UserPicture

Rellena la forma especificada con una imagen.

Sintaxis

expresión.UserPicture(PictureFile, PictureFormat, PictureStackUnit, PicturePlacement)

expresión   Una expresión que devuelve un objeto FillFormat.

PictureFile   String requerida. El nombre del archivo de imagen.

PictureFormat   Long requerido. El formato de la imagen. Puede ser una de las siguientes constantes XlChartPictureType: xlStack, xlStackScale o xlStretch.

PictureStackUnit   Long requerido. Las unidades de almacenamiento o de escala utilizadas en la imagen (dependen del argumento PictureFormat).

PicturePlacement   Long requerido. La ubicación de la imagen. Puede ser una de las siguientes constantes XlChartPicturePlacement: xlAllFaces, xlEnd, xlEndSides, xlFront, xlFrontEnd, xlFrontSides o xlSides.


Ejemplo del método UserPicture

Este ejemplo establece el formato de relleno para el gráfico dos.

Charts(2).ChartArea.Fill.UserPicture "ladrillo.bmp"


Método UserTextured

Rellena la forma especificada con pequeñas repeticiones de una imagen. Para rellenar la forma con una única copia de la imagen, utilice el método UserPicture.

Sintaxis

expresión.UserTextured(TextureFile)

expresión   Requerida. Una expresión que devuelve un objeto FillFormat.

TextureFile   String requerida. El nombre del archivo de imagen.


Ejemplo del método UserTextured

Este ejemplo establece el formato de relleno para el gráfico dos.

Charts(2).ChartArea.Fill.UserTextured "ladrillo.bmp"


Método ApplyCustomType

Aplica un tipo de gráfico estándar o personalizado a un gráfico o serie.

Sintaxis

expresión.ApplyCustomType(ChartType, TypeName)

expresión   Requerida. Una expresión que devuelve un objeto Chart o Series.

ChartType   Long requerido. Un tipo de gráfico estándar (véase la propiedad ChartType para obtener una lista con las constantes disponibles). Para objetos Chart, este argumento también puede ser una de las siguientes constantes XlChartGallery: xlBuiltIn, xlUserDefined o xlAnyGallery.

TypeName   Variant opcional (sólo se usa con objetos Chart). El nombre del tipo de gráfico personalizado, si ChartType especifica una galería personalizada de gráficos.


Ejemplo del método ApplyCustomType

Este ejemplo aplica el tipo de gráfico “Línea con marcadores de datos” al gráfico uno.

Charts(1).ApplyCustomType xlLineMarkers


Propiedad AutoShowCount

Devuelve el número de elementos superiores o inferiores que se muestran automáticamente en el campo de la tabla dinámica. Long de sólo lectura.


Ejemplo de la propiedad AutoShowCount

Este ejemplo muestra un cuadro de mensaje que contiene los valores Automostrar del campo Vendedor.

With Worksheets(1).PivotTables(1).PivotFields("vendedor")

    If .AutoShowType = xlAutomatic Then

        r = .AutoShowRange

        If r = xlTop Then

            rn = "superiores"

        Else

            rn = "inferiores"

        End If

        MsgBox "La tabla dinámica muestra los " & _

            .AutoShowCount & " elementos " & rn & _

            " del campo " & .Name & " dependiendo de " & .AutoShowField

    Else

        MsgBox "La tabla dinámica no usa Automostrar para este campo"

    End If

End With


Propiedad AutoShowField

Devuelve el nombre del campo de datos que se utiliza para determinar qué elementos superiores o inferiores se muestran, de manera automática, en el campo de la tabla dinámica. String de sólo lectura.


Ejemplo de la propiedad AutoShowField

Este ejemplo muestra un cuadro de mensaje que contiene los valores de Automostrar del campo Vendedor.

With Worksheets(1).PivotTables(1).PivotFields("vendedor")

    If .AutoShowType = xlAutomatic Then

        r = .AutoShowRange

        If r = xlTop Then

            rn = "superiores"

        Else

            rn = "inferiores"

        End If

        MsgBox "La tabla dinámica muestra los " & _

            .AutoShowCount & " elementos " & rn & _

            " del campo " & .Name & " dependiendo de " & .AutoShowField

    Else

        MsgBox "La tabla dinámica no usa Automostrar para este campo"

    End If

End With


Propiedad AutoShowRange

Devuelve xlTop si los elementos superiores se muestran automáticamente en el campo de la tabla dinámica y devuelve xlBottom si se muestran los elementos inferiores. Long de sólo lectura.


Ejemplo de la propiedad AutoShowRange

Este ejemplo muestra un cuadro de mensaje que contiene los valores Automostrar del campo Vendedor.

With Worksheets(1).PivotTables(1).PivotFields("vendedor")

    If .AutoShowType = xlAutomatic Then

        r = .AutoShowRange

        If r = xlTop Then

            rn = "superiores"

        Else

            rn = "inferiores"

        End If

        MsgBox "La tabla dinámica muestra los " & _

            .AutoShowCount & " elementos " & rn & _

            " del campo " & .Name & " dependiendo de " & .AutoShowField

    Else

        MsgBox "La tabla dinámica no usa Automostrar para este campo"

    End If

End With


Propiedad AutoShowType

Devuelve xlAutomatic si Automostrar está habilitado para el campo de la tabla dinámica y devuelve xlManual si no lo está. Long de sólo lectura.


Ejemplo de la propiedad AutoShowType

Este ejemplo muestra un cuadro de mensaje que contiene los valores Automostrar del campo Vendedor.

With Worksheets(1).PivotTables(1).PivotFields("vendedor")

    If .AutoShowType = xlAutomatic Then

        r = .AutoShowRange

        If r = xlTop Then

            rn = "superiores"

        Else

            rn = "inferiores"

        End If

        MsgBox "La tabla dinámica muestra los " & _

            .AutoShowCount & " elementos " & rn & _

            " del campo " & .Name & " dependiendo de " & .AutoShowField

    Else

        MsgBox "La tabla dinámica no usa Automostrar para este campo"

    End If

End With


Propiedad AutoSortField

Devuelve el nombre del campo de datos que se utiliza para ordenar automáticamente el campo de la tabla dinámica. String de sólo lectura.


Ejemplo de la propiedad AutoSortField

Este ejemplo muestra un cuadro de mensaje que contiene los valores Autoordenar del campo Producto.

With Worksheets(1).PivotTables(1).PivotFields("producto")

    Select Case .AutoSortOrder

        Case xlManual

            aso = "manual"

        Case xlAscending

            aso = "ascendente"

        Case xlDescending

            aso = "descendente"

    End Select

    MsgBox " El tipo de orden es " & aso & _

        " y se ordena por el campo " & .AutoSortField

End With


Propiedad AutoSortOrder

Devuelve el tipo de ordenación utilizado para ordenar automáticamente el campo de la tabla dinámica. Puede ser una de las siguientes constantes XlSortOrder: xlAscending o xlDescending (o xlManual si está inhabilitada la ordenación automática). Long de sólo lectura.


Ejemplo de la propiedad AutoSortOrder

Este ejemplo muestra un cuadro de mensaje que contiene los valores Autoordenar del campo Producto.

With Worksheets(1).PivotTables(1).PivotFields("producto")

    Select Case .AutoSortOrder

        Case xlManual

            aso = "manual"

        Case xlAscending

            aso = "ascendente"

        Case xlDescending

            aso = "descendente"

    End Select

    MsgBox " El tipo de orden es " & aso & _

        " y se ordena por el campo " .AutoSortField

End With


Método ClearComments

Borra todos los comentarios de celda del rango especificado.

Sintaxis

expresión.ClearComments

expresión   Requerida. Una expresión que devuelve un objeto Range.


Ejemplo del método ClearComments

Este ejemplo borra todos los comentarios de la celda E5.

Worksheets(1).Range("e5").ClearComments


Propiedad KeepChangeHistory

True si está habilitado el seguimiento de cambios en el libro compartido. Boolean de Lectura/Escritura.


Ejemplo de la propiedad KeepChangeHistory

Este ejemplo establece el número de días a mostrar en el historial de cambios del libro activo, si el seguimiento de cambios está habilitado.

With ActiveWorkbook

If .KeepChangeHistory Then

.ChangeHistoryDuration = 7

End If

End With


Propiedad RollZoom

True si el IntelliMouse acerca o aleja, en lugar de desplazarse. Boolean de Lectura/Escritura.


Ejemplo de la propiedad RollZoom

Este ejemplo permite que el IntelliMouse acerque o aleje, en lugar de desplazarse.

Application.RollZoom = True


Método UnprotectSharing

Desactiva la protección de libro compartido y lo guarda.

Sintaxis

expresión.UnprotectSharing(SharingPassword)

expresión   Requerida. Una expresión que devuelve un objeto Workbook.

SharingPassword   Variant opcional. La contraseña del libro.


Ejemplo del método UnprotectSharing

Este ejemplo desactiva la protección de libro compartido y lo guarda.

ActiveWorkbook.UnprotectSharing Password:="añesartnoc"


Propiedad Value2

Devuelve o establece el valor de la celda. Variant de Lectura/Escritura.

Comentarios

La única diferencia entre esta propiedad y la propiedad Value es que la propiedad Value2 no permite los tipos de datos Currency y Date. Utilizando el tipo de datos Double puede devolver valores de estos tipos como números de punto flotante.


Ejemplo de la propiedad Value2

Este ejemplo utiliza la propiedad Value2 para sumar los valores de dos celdas.

Range("a1").Value2 = Range("b1").Value2 + Range("c1").Value2


Propiedad WhichAddress

Devuelve o establece el tipo de dirección PowerTalk. Sólo está disponible en Microsoft Excel para Macintosh con el sistema de correo electrónico PowerTalk instalado. Variant de Lectura/Escritura.


Propiedad Type

Devuelve o establece el tipo de objeto como se muestra en la siguiente tabla.

Objeto	Tipo
Axis	El tipo de eje. Puede ser una de las siguientes constantes XlAxisType: xlCategory, xlValue o xlSeriesAxis. Long de Lectura/Escritura.
Color	El tipo de color. Puede ser una de las siguientes constantes MsoColorType: msoColorTypeMixed, msoColorTypeRGB o msoColorTypeScheme. Long de sólo lectura.
ConnectorFormat	El tipo de conector. Puede ser una de las siguientes constantes MsoConnectorType: msoConnectorCurve, msoConnectorElbow, msoConnectorStraight o msoConnectorTypeMixed. Long de Lectura/Escritura.
DataLabel, DataLabels	El tipo de rótulo de datos. Puede ser una de las siguientes constantes XlDataLabelsType: xlDataLabelsShowBubbleSizes, xlDataLabelsShowLabel, xlDataLabelsShowLabelAndPercent, xlDataLabelsShowNone, xlDataLabelsShowPercent o xlDataLabelsShowValue. Long de Lectura/Escritura.
FillFormat	El tipo de relleno. Puede ser una de las siguientes constantes MsoFillType: msoFillBackground, msoFillGradient, msoFillMixed, msoFillPatterned, msoFillPicture, msoFillSolid o msoFillTextured. Long de sólo lectura.
FormatCondition	El tipo de formato condicional. Puede ser una de las siguientes constantes xlFormatConditionType: xlCellValue o xlExpression. Long de sólo lectura.
HPageBreak, VPageBreak	El tipo de salto de página. Puede ser una de las siguientes constantes XlPageBreak: xlPageBreakAutomatic o xlPageBreakManual. Long de Lectura/Escritura.
Hyperlink	El tipo de hipervínculo (a qué está asociado el hipervínculo). Puede ser una de las siguientes constantes MsoHyperlinkType: msoHyperlinkInlineShape, msoHyperlinkRange o msoHyperlinkShape. Long de sólo lectura.
Parameter	El tipo de parámetro. Puede ser una de las siguientes constantes XlParameterType: xlConstant, xlPrompt o xlRange. Long de Lectura/Escritura.
Shape, ShapeRange	El tipo de forma. Puede ser una de las siguientes constantes MsoShapeType: msoAutoShape, msoCallout, msoChart, msoComment, msoEmbeddedOLEObject, msoFormControl, msoFreeform, msoGroup, msoLine, msoLinkedOLEObject, msoLinkedPicture, msoMedia, msoOLEControlObject, msoPicture, msoPlaceholder, msoShapeTypeMixed o msoTextEffect. Long de sólo lectura. En Microsoft Excel, esta propiedad no puede ser msoMedia o msoPlaceholder (estas constantes se utilizan con formas en otras aplicaciones de Microsoft Office).
Trendline	El tipo de línea de tendencia. Puede ser una de las siguientes constantes XlTrendlineType: xlExponential, xlLinear, xlLogarithmic, xlMovingAvg, xlPolynomial o xlPower. Long de Lectura/Escritura.
Validation	El tipo de validación de datos. Puede ser una de las siguientes constantes XlDVType: xlValidateCustom, xlValidateDate, xlValidateDecimal, xlValidateInputOnly, xlValidateList, xlValidateTextLength, xlValidateTime o xlValidateWholeNumber. Long de sólo lectura.
Window	El tipo de ventana. Puede ser una de las siguientes constantes XlWindowType: xlChartAsWindow, xlChartInPlace, xlClipboard, xlInfo o xlWorkbook. Long de sólo lectura.
Worksheet	El tipo de hoja de cálculo. Puede ser xlWorksheet, xlExcel4MacroSheet o xlExcel4IntlMacroSheet. Long de sólo lectura.


Ejemplo de la propiedad Type

Este ejemplo cambia el tipo de línea de tendencia de la primera serie del gráfico incrustado uno de la hoja de cálculo uno. Si la serie no tiene línea de tendencia, el ejemplo fallará.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Trendlines(1).Type = xlMovingAvg


Propiedad ShapeRange

Devuelve un objeto ShapeRange que representa el objeto u objetos especificados. Es de sólo lectura.


Ejemplo de la propiedad ShapeRange

Este ejemplo crea un rango de formas que representa los gráficos incrustados en la hoja de cálculo uno.

Set sr = Worksheets(1).ChartObjects.ShapeRange


Propiedad TextFrame

Devuelve un objeto TextFrame que contiene las propiedades de alineación y fijación de la forma especificada. Es de sólo lectura.


Ejemplo de la propiedad TextFrame

Este ejemplo cambia la alineación del marco de texto de la forma uno, de modo que sea justificada. Si la forma no tiene ningún marco de texto, el ejemplo falla.

Worksheets(1).Shapes(1).TextFrame.HorizontalAlignment = xlHAlignJustify


Propiedad VBE

Devuelve un objeto VBE que representa el Editor de Visual Basic. Es de sólo lectura.


Ejemplo de la propiedad VBE

Este ejemplo cambia el nombre del proyecto de Visual Basic activo.

Application.VBE.ActiveVBProject.Name = "ProyectoPrueba"


Propiedad VBProject

Devuelve un objeto VBProject que representa el proyecto Visual Basic del libro especificado. Es de sólo lectura.


Ejemplo de la propiedad VBProject

Este ejemplo cambia el nombre del proyecto Visual Basic del libro actual.

ThisWorkbook.VBProject.Name = "ProyectoPrueba"


Propiedad LinkedCell

Devuelve o establece el rango de la hoja de cálculo vinculado al valor del control. Si sitúa un valor en la celda, el control tomará dicho valor. De la misma forma, si el valor del control cambia, se colocará ese valor en la celda. String de Lectura/Escritura.

Comentarios

No es posible utilizar esta propiedad con cuadros de lista de selección múltiple.


Ejemplo de la propiedad LinkedCell

Este ejemplo agrega una casilla de verificación a la hoja uno y la vincula al valor de la celda A1.

With Worksheets(1)

Set cb = .Shapes.AddFormControl(xlCheckBox, 10, 10, 100, 10)

cb.ControlFormat.LinkedCell = "A1"

End With


Propiedad ListFillRange

Devuelve o establece el rango de la hoja de cálculo utilizado para rellenar el cuadro de lista especificado. Al establecer esta propiedad desaparece cualquier lista existente en el cuadro. String de Lectura/Escritura.

Comentarios

Microsoft Excel lee el contenido de cada celda del rango y lo coloca en el cuadro de lista. Esta lista percibe los cambios ocurridos en las celdas del rango.

Si la lista del cuadro de lista fue creada con el método AddItem, esta propiedad devuelve una cadena de caracteres vacía ("").


Ejemplo de la propiedad ListFillRange

Este ejemplo agrega un cuadro de lista a la hoja uno y establece su rango de datos.

With Worksheets(1)

Set lb = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)

lb.ControlFormat.ListFillRange = "A1:A10"

End With


Propiedad SourceName

Objetos OLEObject y OLEObjects: Devuelven o establecen el nombre del origen del vínculo del objeto especificado. String de Lectura/Escritura.

Objetos PivotField y PivotItem: Devuelven el nombre del objeto especificado tal como aparece en los datos de origen de la tabla dinámica. Este puede diferir del nombre actual del elemento si el usuario ha cambiado el nombre de dicho elemento después de haber creado la tabla dinámica. String de sólo lectura.


Ejemplo de la propiedad SourceName

Este ejemplo muestra el nombre original (el nombre de la base de datos de origen) del elemento que contiene la celda activa.

Worksheets("Hoja1").Activate

ActiveSheet.PivotTables(1).PivotSelect "1998", xlDataAndLabel

MsgBox "El nombre original del elemento es " & _

ActiveCell.PivotItem.SourceName


Método AddFormControl

Crea un Control de Microsoft Excel. Devuelve un objeto Shape que representa el nuevo control.

Sintaxis

expresión.AddFormControl(Type, Left, Top, Width, Height)

expresión   Requerida. Una expresión que devuelve un objeto Shapes.

Type   Long requerido. El tipo de control Microsoft Excel. Puede ser una de las siguientes constantes XlFormControl: xlButtonControl, xlCheckBox, xlDropDown, xlEditBox, xlGroupBox, xlLabel, xlListBox, xlOptionButton, xlScrollBar o xlSpinner. No se puede crear un cuadro de edición en una hoja de cálculo.

Left, Top   Long requerido. Especifica, en puntos(1/72 pulgadas), las coordenadas iniciales del nuevo objeto en relación con la esquina superior izquierda de la celda A1 de la hoja de cálculo, o con la esquina superior izquierda de un gráfico.

Width, Height    Long requeridos. El tamaño inicial, en puntos, del nuevo objeto.

Comentarios

Utilice los métodos AddOLEObject o Add del conjunto OLEObjects para crear un control ActiveX.


Ejemplo del método AddFormControl

Este ejemplo agrega un cuadro de lista a la hoja uno y establece su rango de datos.

With Worksheets(1)

Set lb = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)

lb.ControlFormat.ListFillRange = "A1:A10"

End With


Método AddItem

Agrega un elemento a un cuadro de lista o a un cuadro combinado.

Sintaxis

expresión.AddItem(Text, Index)

expresión   Requerida. Una expresión que devuelve un objeto ControlFormat.

Text   String requerida. El texto a agregar.

Index   Variant opcional. La posición del nuevo elemento. Si la lista tiene menos elementos que el índice especificado, se agregan elementos en blanco desde el final de la lista hasta la posición especificada. Si se omite este argumento, el elemento se agrega al final de la lista existente.

Comentarios

Al utilizar este método se borra cualquier rango especificado por la propiedad ListFillRange.


Ejemplo del método AddItem

Este ejemplo crea un cuadro de lista y lo rellena con números enteros del 1 al 10.

With Worksheets(1)

Set lb = .Shapes.AddFormControl(xlListBox, 100, 10, 100, 100)

For x = 1 To 10

lb.ControlFormat.AddItem x

Next

End With


Método List

Devuelve o establece los elementos de texto de un cuadro de lista o de un cuadro combinado como una matriz de cadenas de caracteres, o devuelve y establece un único elemento de texto. Si no hay elementos en la lista, devuelve un error.

Sintaxis

expresión.List(Index)

expresión   Requerida. Una expresión que devuelve un objeto ControlFormat.

Index   Variant opcional. El número de índice del elemento de texto a establecer o devolver. Si este argumento se omite, se devuelve o establece la lista completa como una matriz de cadenas.

Comentarios

Al establecer esta propiedad se borran todos los rangos especificados con la propiedad ListFillRange.


Ejemplo del método List

Este ejemplo establece los elementos de un cuadro de lista de la hoja de cálculo uno. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Worksheets(1).Shapes(2).ControlFormat.List = _

Array("elemento 1", "elemento 2", "elemento 3", "elemento 4")

Este ejemplo establece el elemento cuatro de un cuadro de lista de la hoja de cálculo uno. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Worksheets(1).Shapes(2).ControlFormat.List(4) = "un elemento"


Método OnKey

Ejecuta un procedimiento especificado cuando se presiona una tecla o una combinación de teclas determinada.

Sintaxis

expresión.OnKey(Key, Procedure)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Key   String requerida. Una cadena que indica la tecla a presionar.

Procedure   Variant opcional. Una cadena que indica el nombre del procedimiento que se desea ejecutar. Si Procedure es "" (texto vacío) y se presiona Key, no sucede nada. Esta forma de OnKey cambia el resultado normal al presionar las teclas en Microsoft Excel. Si se omite Procedure, Key vuelve a su resultado normal en Microsoft Excel y se borran las asignaciones de teclas realizadas con métodos OnKey anteriores.

Comentarios

El argumento Key puede especificar cualquier tecla individual, cualquier tecla combinada con ALT, CTRL o MAYÚS, o cualquier combinación de éstas (en Windows); o COMANDO, CTRL, OPCIÓN, o MAYÚS, o cualquier combinación de éstas (en Macintosh). Cada tecla está representada por uno o varios caracteres, por ejemplo, "a" por el carácter a o "{ENTER}" por la tecla ENTRAR.

Para especificar caracteres que no están visibles al presionar la tecla, por ejemplo, ENTRAR o TAB, utilice los códigos que se muestran en la siguiente tabla. Cada código de la tabla representa una tecla del teclado:

Tecla	Código
RETROCESO	{BACKSPACE} o {BS}
INTERRUMPIR	{BREAK}
BLOQ MAYÚS	{CAPSLOCK}
BORRAR	{CLEAR}
SUPRIMIR o SUPR	{DELETE} o {DEL}
FLECHA ABAJO	{DOWN}
FIN	{END}
INTRO (teclado numérico)	{ENTER}
ENTRAR	~ (tilde)
ESC	{ESCAPE} o {ESC}
AYUDA	{HELP}
INICIO	{HOME}
INSERTAR	{INSERT}
FLECHA IZQUIERDA	{LEFT}
BLOQUEO NUMÉRICO	{NUMLOCK}
AV PÁG	{PGDN}
RE PÁG	{PGUP}
RETORNO	{RETURN}
FLECHA DERECHA	{RIGHT}
BLOQUEO DE DESPLAZAMIENTO	{SCROLLLOCK}
TABULADOR	{TAB}
FLECHA ARRIBA	{UP}
F1 a F15	{F1} a {F15}
En Windows también pueden especificarse teclas combinadas con MAYÚS, CTRL y/o ALT. En Macintosh, también pueden especificarse combinaciones de teclas con MAYÚS, CTRL, OPCIÓN y COMANDO. Para especificar una combinación de teclas con otra u otras teclas, utilice la siguiente tabla:

Para combinar teclas con	Preceda el código de la tecla con
MAYÚS	+ (signo más)
CONTROL	^ (símbolo de intercalación)
ALT u OPCIÓN	% (signo de porcentaje)
COMANDO	* (asterisco)
Para asignar un procedimiento a uno de los caracteres especiales (+, ^, %, etc.), coloque el carácter entre llaves. Para obtener más información, véase el ejemplo.


Ejemplo del método OnKey

Este ejemplo asigna el procedimiento "InsertProc" a la secuencia de teclas CTRL+SIGNO MÁS y asigna "SpecialPrintProc" a la secuencia MAYÚS+CTRL+FLECHA DERECHA.

Application.OnKey "^{+}", "InsertProc"

Application.OnKey "+^{RIGHT}", "SpecialPrintProc"

Este ejemplo restablece el significado original de la combinación de teclas MAYÚS+CTRL+FLECHA DERECHA.

Application.OnKey "+^{RIGHT}"

Este ejemplo inhabilita la secuencia de teclas MAYÚS+CTRL+FLECHA DERECHA.

Application.OnKey "+^{RIGHT}", ""


Método OnRepeat

Establece el elemento de menú Repetir y el nombre del procedimiento que se ejecutará si se elige Repetir en el menú Edición después de ejecutar el procedimiento que establece esta propiedad.

Sintaxis

expresión.OnRepeat(Text, Procedure)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Text   String requerida. Especifica el texto que aparece con el comando Repetir del menú Edición.

Procedure   String requerida. El nombre del procedimiento que se ejecutará cuando se elija Repetir en el menú Edición.

Comentarios

Si un procedimiento no utiliza el método OnRepeat, el comando Repetir repetirá el último procedimiento que se haya ejecutado.

El procedimiento debe utilizar los métodos OnRepeat y OnUndo al final, para evitar que los procedimientos repetir y deshacer sean reemplazados por acciones posteriores del procedimiento.


Ejemplo del método OnRepeat

Este ejemplo establece los procedimientos repetir y deshacer.

Application.OnRepeat "Procedimiento VB Repetir", _

"Libro1.xls!Mi_Sub_Repetir"

Application.OnUndo "Procedimiento VB Deshacer", _

"Libro1.xls!Mi_Sub_Deshacer"


Método OnTime

Programa la ejecución de un procedimiento a una hora especificada, ya sea a una hora específica o después del transcurso de un período de tiempo específico.

Sintaxis

expresión.OnTime(EarliestTime, Procedure, LatestTime, Schedule)

expresión   Requerida. Una expresión que devuelve un objeto Application.

EarliestTime   Variant requerida. La hora a la que se desea ejecutar este procedimiento.

Procedure   String requerida. El nombre del procedimiento que se desea ejecutar.

LatestTime   Variant opcional. Es la hora límite a partir de la cual ya no se ejecutará el procedimiento. Por ejemplo, si LatestTime se establece como EarliestTime + 30 y Microsoft Excel no se encuentra en los modos Listo, Copiar, Cortar ni Buscar a la hora EarliestTime, porque se está ejecutando otro procedimiento, Microsoft Excel esperará 30 segundos para que se termine de ejecutar el primer procedimiento. Si Microsoft Excel no está en el modo Listo después de 30 segundos, el procedimiento no se ejecutará. Si este argumento se omite, Microsoft Excel esperará hasta que pueda ejecutarse el procedimiento.

Schedule   Variant opcional. True para programar un nuevo procedimiento OnTime. False para anular un procedimiento establecido previamente. El valor predeterminado es True.

Comentarios

Utilice Now + TimeValue(periodo) para planificar la ejecución de un procedimiento cuando haya transcurrido un período de tiempo determinado (comenzando a contar a partir de ahora). Utilice TimeValue(hora) para planificar la ejecución de un procedimiento a una hora específica.


Ejemplo del método OnTime

Este ejemplo ejecutará mi_Procedimiento en 15 segundos a partir de este momento.

Application.OnTime Now + TimeValue("00:00:15"), "mi_Procedimiento"

Este ejemplo ejecutará mi_Procedimiento a las 5 P.M.

Application.OnTime TimeValue("17:00:00"), "mi_Procedimiento"

Este ejemplo cancela el valor de OnTime del ejemplo anterior.

Application.OnTime EarliestTime:=TimeValue("17:00:00"), _

Procedure:="mi_Procedimiento", Schedule:=False


Método OnUndo

Establece el texto del elemento de menú Deshacer y el nombre del procedimiento que se ejecutará si se elige Deshacer en el menú Edición después de ejecutar el procedimiento que establece esta propiedad.

Sintaxis

expresión.OnUndo(Text, Procedure)

expresión   Requerida. Una expresión que devuelve un objeto Application.

Text   String requerida. El texto que aparece con el comando Deshacer del menú Edición.

Procedure   String requerida. El nombre del procedimiento que se ejecutará cuando se elija Deshacer en el menú Edición.

Comentarios

Si un procedimiento no utiliza el método OnUndo, el comando Deshacer estará inhabilitado.

El procedimiento debe utilizar los métodos OnRepeat y OnUndo al final, para evitar que los procedimientos repetir y deshacer sean reemplazados por acciones posteriores del procedimiento.


Ejemplo del método OnUndo

Este ejemplo establece los procedimientos repetir y deshacer.

Application.OnRepeat "Procedimiento VB Repetir", _

"Libro1.xls!Mi_Sub_Repetir"

Application.OnUndo "Procedimiento VB Deshacer", _

"Libro1.xls!Mi_Sub_Deshacer"


Método ProtectSharing

Guarda el libro y establece una contraseña que impide que sea compartido.

Sintaxis

expresión.ProtectSharing(Filename, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, SharingPassword)

expresión   Una expresión que devuelve un objeto Workbook.

FileName   Variant opcional. Una cadena que indica el nombre del archivo que se va a guardar. Puede especificar la ruta completa del archivo. Si sólo especifica el nombre, el archivo se guardará en la carpeta actual.

Password   Variant opcional. Una cadena que indica la contraseña de protección que se va a dar al archivo (se distingue entre mayúsculas y minúsculas). No debe exceder de 15 caracteres.

WriteResPassword   Variant opcional. Una cadena que indica la contraseña contra escritura del archivo. Si se utiliza la contraseña al guardar el archivo y no se especifica al abrirlo, el archivo se abrirá como de sólo lectura.

ReadOnlyRecommended   Variant opcional. Si es True indica que, al abrir el archivo, se mostrará un mensaje que recomienda abrir el archivo en modo de sólo lectura.

CreateBackup   Variant opcional. True para crear una copia de seguridad.

SharingPassword   Variant opcional. Una cadena que indica la contraseña que impedirá que el archivo sea compartido.


Ejemplo del método ProtectSharing

Este ejemplo guarda el libro uno e impide que sea compartido.

Workbooks(1).ProtectForSharing Password:="añesartnoc", _

SharingPassword:="ritrapmoc"


Método RemoveAllItems

Elimina todos los elementos de un cuadro de lista o de un cuadro combinado de Microsoft Excel. Utilice el método Clear para quitar todos los elementos del cuadro de lista o cuadro combinado ActiveX.

Sintaxis

expresión.RemoveAllItems

expresión   Requerida. Una expresión que devuelve un objeto ControlFormat.


Ejemplo del método RemoveAllItems

Este ejemplo elimina todos los elementos de un cuadro de lista. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Worksheets(1).Shapes(2).ControlFormat.RemoveAllItems


Método RemoveItem

Elimina uno o más elementos de un cuadro de lista o de un cuadro combinado.

Sintaxis

expresión.RemoveItem(Index, Count)

expresión   Una expresión que devuelve un objeto ControlFormat.

Index   Long requerido. El índice del primer elemento que se desea eliminar. Los valores válidos van desde uno hasta el número de elementos de la lista (devuelto por la propiedad ListCount).

Count   Variant opcional. El número de elementos, comenzando por Index, que se desea eliminar. Si este argumento se omite, se eliminará un único elemento. Si Index + Count excede el número de elementos de la lista, todos los elementos, desde Index hasta el final de la lista, serán eliminados sin indicar un error.

Comentarios

Si el objeto especificado tiene definido un rango de datos, este método fallará.

Utilice el método RemoveAllItems para quitar todas las entradas del cuadro de lista o cuadro combinado de Microsoft Excel. Utilice el método Clear para quitar todos los elementos del cuadro de lista o cuadro combinado ActiveX.


Ejemplo del método RemoveItem

Este ejemplo elimina el elemento seleccionado de un cuadro de lista. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Set lbcf = Worksheets(1).Shapes(2).ControlFormat

lbcf.RemoveItem lbcf.ListIndex


Propiedad ChangeHistoryDuration

Devuelve o establece el número de días que se muestran en el historial de cambios del libro compartido. Long de Lectura/Escritura.

Comentarios

Al cerrar el libro se eliminarán todos los cambios del historial anteriores al valor establecido para la propiedad.


Ejemplo de la propiedad ChangeHistoryDuration

Este ejemplo establece el número de días a mostrar en el historial de cambios del libro activo, si está habilitado el seguimiento de cambios. Al cerrar el libro se eliminarán todos los cambios del historial anteriores al valor establecido para la propiedad.

With ActiveWorkbook

If .KeepChangeHistory Then

.ChangeHistoryDuration = 7

End If

End With


Propiedad Characters

Devuelve un objeto Characters que representa un rango de caracteres del texto del objeto. Puede utilizar el objeto Characters para dar formato a los caracteres de una cadena de texto.

Sintaxis

expresión.Characters(Start, Length)

expresión   Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

Start   Variant opcional. El primer carácter que se devuelve. Si el argumento es 1 o se omite, el método devuelve un rango de caracteres que empieza con el primer carácter.

Length   Variant opcional. El número de caracteres que se devuelven. Si este argumento se omite, el método devolverá el resto de la cadena (todo lo que esté después del carácter Start).

Comentarios

El objeto Characters no es un conjunto.

Esta propiedad, aplicada a un objeto Range, fallará si se utiliza con argumentos y la celda no contiene un valor de texto.


Ejemplo de la propiedad Characters

Este ejemplo da formato de negrita al tercer carácter de la celda A1 de la Hoja1.

With Worksheets("Hoja1").Range("A1")

.Value = "abcdefg"

.Characters(3, 1).Font.Bold = True

End With


Propiedad CodeName

Devuelve el nombre de código del objeto. String de sólo lectura.

Comentarios

Se puede utilizar el nombre de código de un objeto en lugar de una expresión que devuelva dicho objeto. Si, por ejemplo, el nombre de código de la hoja uno es “Hoja1”, las siguientes expresiones son idénticas:

Worksheets(1).Range("a1")

Hoja1.Range("a1")

El nombre de la hoja puede ser distinto del nombre de código. Al crear una hoja nueva, su nombre coincide con el nombre de código. Sin embargo los cambios realizados al nombre de la hoja no afectan al nombre de código, y los cambios realizados al nombre de código (mediante la ventana Propiedades del Editor de Visual Basic) tampoco afectan al nombre de la hoja.


Ejemplo de la propiedad CodeName

Este ejemplo muestra el nombre de código de la hoja de cálculo uno.

MsgBox Worksheets(1).CodeName


Propiedad ControlFormat

Devuelve un objeto ControlFormat que contiene las propiedades de un control de Microsoft Excel. Es de sólo lectura.


Ejemplo de la propiedad ControlFormat

Este ejemplo elimina el elemento seleccionado de un cuadro de lista. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Set lbcf = Worksheets(1).Shapes(2).ControlFormat

lbcf.RemoveItem lbcf.ListIndex


Propiedad DropDownLines

Devuelve o establece el número de líneas que se muestran en la parte desplegable de un cuadro combinado. Long de Lectura/Escritura.

Comentarios

Esta propiedad se omite en Apple Macintosh.


Ejemplo de la propiedad DropDownLines

Este ejemplo crea un cuadro combinado que contiene 10 líneas en su lista.

With Worksheets(1).Shapes.AddFormControl(xlDropDown, _

Left:=10, Top:=10, Width:=100, Height:=10)

.ControlFormat.DropDownLines = 10

End With


Propiedad FormControlType

Devuelve el tipo de control de Microsoft Excel. Puede ser una de las siguientes constantes XlFormControl: xlButtonControl, xlCheckBox, xlDropDown, xlEditBox, xlGroupBox, xlLabel, xlListBox, xlOptionButton, xlScrollBar o xlSpinner. Long de sólo lectura.

Comentarios

Esta propiedad no se puede aplicar a controles ActiveX (la propiedad Type del objeto Shape debe devolver msoFormControl).


Ejemplo de la propiedad FormControlType

Este ejemplo desactiva todas las casillas de verificación de Microsoft Excel de la hoja de cálculo uno.

For Each s In Worksheets(1).Shapes

If s.Type = msoFormControl Then

If s.FormControlType = xlCheckBox Then _

s.ControlFormat.Value = False

End If

Next


Propiedad LargeChange

Devuelve o establece la cantidad en que aumenta o disminuye el cuadro de desplazamiento en cada desplazamiento de página (cuando el usuario hace clic en el cuerpo de la barra de desplazamiento). Long de Lectura/Escritura.


Ejemplo de la propiedad LargeChange

Este ejemplo crea una barra de desplazamiento y establece los valores de la celda vinculada, los valores máximos y mínimos y los valores de cambios grandes o pequeños.

Set sb = Worksheets(1).Shapes.AddFormControl(xlScrollBar, _

Left:=10, Top:=10, Width:=10, Height:=200)

With sb.ControlFormat

.LinkedCell = "D1"

.Max = 100

.Min = 0

.LargeChange = 10

.SmallChange = 2

End With


Propiedad LinkFormat

Devuelve un objeto LinkFormat que contiene propiedades de objeto OLE vinculado. Es de sólo lectura.


Ejemplo de la propiedad LinkFormat

Este ejemplo actualiza todos los objetos OLE vinculados de la hoja uno.

For Each s In Worksheets(1).Shapes

If s.Type = msoLinkedOLEObject Then s.LinkFormat.Update

Next


Propiedad ListCount

Devuelve el número de elementos de un cuadro de lista o de un cuadro combinado. Devuelve cero si no existen elementos en la lista. Long de sólo lectura.


Ejemplo de la propiedad ListCount

Este ejemplo ajusta un cuadro combinado para que muestre todos los elementos de la lista. Si Shapes(1) no hace referencia a un cuadro de lista desplegable, este ejemplo falla.

Set cf = Worksheets(1).Shapes(1).ControlFormat

cf.DropDownLines = cf.ListCount


Propiedad ListIndex

Devuelve o establece el índice del elemento actualmente seleccionado en un cuadro de lista o en un cuadro combinado. Long de Lectura/Escritura.

Comentarios

No es posible utilizar esta propiedad con cuadros de lista de selección múltiple.


Ejemplo de la propiedad ListIndex

Este ejemplo elimina el elemento seleccionado de un cuadro de lista. Si Shapes(2) no hace referencia a un cuadro de lista, este ejemplo falla.

Set lbcf = Worksheets(1).Shapes(2).ControlFormat

lbcf.RemoveItem lbcf.ListIndex


Propiedad LockedText

True si al proteger el libro, el texto del objeto especificado se bloquea para evitar que sea modificado. Boolean de Lectura/Escritura.


Ejemplo de la propiedad LockedText

Este ejemplo bloquea el texto del gráfico incrustado uno, si el libro está protegido.

Worksheets(1).ChartObjects(1).LockedText = True


Propiedad Max

Devuelve o establece el valor máximo de un rango de barras de desplazamiento o de controles de número. La barra de desplazamiento o el control de número no aceptará valores superiores al valor máximo. Long de Lectura/Escritura.

Para obtener más información acerca de cómo utilizar la función de hoja de cálculo Max en Visual Basic, véase Uso de funciones de hoja de cálculo de Microsoft Excel en Visual Basic.

Comentarios

El valor de la propiedad Max debe ser mayor que el valor de la propiedad Min.


Ejemplo de la propiedad Max

Este ejemplo crea una barra de desplazamiento y establece los valores de la celda vinculada, los valores máximos y mínimos y los valores de cambios grandes o pequeños.

Set sb = Worksheets(1).Shapes.AddFormControl(xlScrollBar, _

Left:=10, Top:=10, Width:=10, Height:=200)

With sb.ControlFormat

.LinkedCell = "D1"

.Max = 100

.Min = 0

.LargeChange = 10

.SmallChange = 2

End With


Propiedad Min

Devuelve o establece el valor mínimo de un rango de barras de desplazamiento o de controles de número. La barra de desplazamiento o control de número no aceptará valores inferiores al valor mínimo. Long de Lectura/Escritura.

Para obtener más información acerca de cómo utilizar la función de hoja de cálculo Min en Visual Basic, véase Uso de funciones de hoja de cálculo de Microsoft Excel en Visual Basic.

Comentarios

El valor de la propiedad Min debe ser menor que el valor de la propiedad Max.


Ejemplo de la propiedad Min

Este ejemplo crea una barra de desplazamiento y establece los valores de la celda vinculada, los valores máximos y mínimos y los valores de cambios grandes o pequeños.

Set sb = Worksheets(1).Shapes.AddFormControl(xlScrollBar, _

Left:=10, Top:=10, Width:=10, Height:=200)

With sb.ControlFormat

.LinkedCell = "D1"

.Max = 100

.Min = 0

.LargeChange = 10

.SmallChange = 2

End With


Propiedad MultiSelect

Devuelve o establece el modo de selección del cuadro de selección especificado. Puede ser una de las siguientes constantes: xlNone, xlSimple o xlExtended. Long de Lectura/Escritura.

Comentarios

La selección simple (xlNone) sólo permite seleccionar un elemento a la vez. Al hacer clic con el mouse (ratón) o presionar la barra espaciadora se cancela la selección y se selecciona el elemento en el que se ha hecho clic.

La multiselección simple (xlSimple) cambia la selección de un elemento de la lista cuando se hace clic en él con el mouse (ratón) o cuando se presiona la barra espaciadora y el elemento tiene el foco. Este modo es apropiado para listas en las que suele haber varios elementos seleccionados.

La multiselección extendida (xlExtended) suele comportarse como la selección simple, en la que, al hacer clic en un elemento, se cancelan todas las demás selecciones. Cuando se mantiene presionada MAYÚS mientras se hace clic con el mouse o se presiona una tecla de dirección, los elementos se seleccionan consecutivamente a partir del elemento seleccionado. Cuando se mantiene presionada CTRL mientras se hace clic con el mouse, se agregan elementos individuales a la selección de la lista. Este modo es apropiado cuando se permiten múltiples elementos pero no se utilizan con frecuencia.

Puede utilizar las propiedades Value o ListIndex para devolver y establecer el elemento seleccionado en un cuadro de lista de selección simple.

No se puede utilizar la propiedad LinkedCell para vincular cuadros de lista de selección múltiple.


Ejemplo de la propiedad MultiSelect

Este ejemplo crea un cuadro de lista de multiselección simple.

Set lb = Worksheets(1).Shapes.AddFormControl(xlListBox, _

Left:=10, Top:=10, Height:=100, Width:100)

lb.ControlFormat.MultiSelect = xlSimple


Propiedad OLEFormat

Devuelve un objeto OLEFormat que contiene las propiedades de un objeto OLE. Es de sólo lectura.


Ejemplo de la propiedad OLEFormat

Este ejemplo activa un objeto OLE. Si Shapes(1) no hace referencia a un objeto OLE incrustado, este ejemplo falla.

Worksheets(1).Shapes(1).OLEFormat.Activate


Propiedad OnAction

Devuelve o establece el nombre de la macro que se ejecuta al hacer clic en el objeto especificado. String de Lectura/Escritura.

Comentarios

Al establecer esta propiedad para un elemento de menú, se reemplaza la información de la ayuda personalizada del elemento por la información específica de la macro asignada.


Ejemplo de la propiedad OnAction

Este ejemplo hace que Microsoft Excel ejecute el procedimiento ShapeClick siempre que se haga clic en la forma uno.

Worksheets(1).Shapes(1).OnAction = "ShapeClick"


Propiedad OnWindow

Devuelve o establece el nombre del procedimiento que se ejecuta cuando se activa a una ventana. String de Lectura/Escritura.

Comentarios

El procedimiento especificado por esta propiedad no se ejecuta cuando otros procedimientos activan la ventana o cuando el comando para activar la ventana se recibe a través de un canal DDE. Sin embargo el procedimiento sí responde a las acciones del usuario, como por ejemplo hacer clic en la ventana o seleccionar el comando Ir a en el menú Edición.

Si una hoja de cálculo o una hoja de macros tiene definida una macro Auto_activar o Auto_desactivar, éstas se ejecutarán después del procedimiento especificado por OnWindow.


Ejemplo de la propiedad OnWindow

Este ejemplo tiene como efecto que al activar la ventana uno se ejecute el procedimiento WindowActivate.

ThisWorkbook.Windows(1).OnWindow = "WindowActivate"


Propiedad SmallChange

Devuelve o establece la cantidad en que aumenta o disminuye la barra de desplazamiento o el control de número en un desplazamiento de línea (cuando el usuario hace clic en una flecha). Long de Lectura/Escritura.


Ejemplo de la propiedad SmallChange

Este ejemplo crea una barra de desplazamiento y establece los valores de la celda vinculada, los valores máximos y mínimos y los valores de cambios grandes o pequeños.

Set sb = Worksheets(1).Shapes.AddFormControl(xlScrollBar, _

Left:=10, Top:=10, Width:=10, Height:=200)

With sb.ControlFormat

.LinkedCell = "D1"

.Max = 100

.Min = 0

.LargeChange = 10

.SmallChange = 2

End With


Propiedad Item (conjunto AddIns)

Devuelve un único objeto AddIn de un conjunto AddIns.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto AddIns.

Index   Variant requerida. El nombre o el índice de la macro automática.


Ejemplo de la propiedad Item (conjunto AddIns)

Este ejemplo muestra el estado de la macro automática Herramientas de análisis. La cadena empleada como índice del conjunto AddIns es la propiedad Title del objeto AddIn.

If AddIns.Item("Herramientas de análisis").Installed = True Then

MsgBox "La macro automática ""Herramientas de análisis"" está instalada"

Else

MsgBox "La macro automática ""Herramientas de análisis"" no está instalada"

End If


Propiedad Item (conjunto Areas)

Devuelve un único objeto Range de un conjunto Areas.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Areas.

Index   Long requerido. El índice del rango.


Ejemplo de la propiedad Item (conjunto Areas)

Este ejemplo borra el contenido de la primera área de la selección actual si ésta contiene más de un área.

If Selection.Areas.Count <> 1 Then

Selection.Areas.Item(1).Clear

End If


Propiedad Item (conjunto Charts)

Devuelve un único objeto Chart de un conjunto Charts.

Sintaxis

expresión.Item(Index)

expresión   Una expresión que devuelve un objeto Charts.

Index   Variant requerida. El nombre o número de índice del gráfico.


Ejemplo de la propiedad Item (conjunto Charts)

Este ejemplo establece el número de unidades que la línea de tendencia del Gráfico1 se extiende hacia delante y hacia atrás. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

With Charts.Item("Gráfico1").SeriesCollection(1).Trendlines(1)

.Forward = 5

.Backward = .5

End With


Propiedad Item (conjunto HPageBreaks)

Devuelve un único objeto HPageBreak de un conjunto HPageBreaks.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto HPageBreaks.

Index   Long requerido. El índice del salto de página horizontal.


Ejemplo de la propiedad Item (conjunto HPageBreaks)

Este ejemplo cambia la ubicación del salto de página horizontal uno.

Worksheets(1).HPageBreaks.Item(1).Location = .Range("e5")


Propiedad Item (conjunto Hyperlinks)

Devuelve un único objeto Hyperlink de un conjunto Hyperlinks.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Hyperlinks.

Index   Variant requerida. El nombre o número de índice del hipervínculo.


Ejemplo de la propiedad Item (conjunto Hyperlinks)

El siguiente ejemplo activa el hipervínculo uno de la celda E5.

Worksheets(1).Range("E5").Hyperlinks.Item(1).Follow


Propiedad Item (conjunto Panes)

Devuelve un único objeto Pane de un conjunto Panes.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Panes.

Index   Long requerido. El índice del panel.


Ejemplo de la propiedad Item (conjunto Panes)

Este ejemplo divide la ventana en la que se muestra la hoja de cálculo uno y, a continuación, desplaza el panel de la esquina inferior izquierda de la ventana hasta que la fila cinco esté en la parte superior del panel.

Worksheets(1).Activate

ActiveWindow.Split = True

ActiveWindow.Panes.Item(3).ScrollRow = 5


Propiedad Item (conjunto RecentFiles)

Devuelve un único objeto RecentFile de un conjunto RecentFiles.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto RecentFiles.

Index   Long requerido. El índice del archivo.


Ejemplo de la propiedad Item (conjunto RecentFiles)

Este ejemplo abre el archivo dos de la lista de archivos recientemente utilizados.

Application.RecentFiles.Item(2).Open


Propiedad Item (conjunto Sheets)

Devuelve un único objeto Chart o Worksheet de un conjunto Sheets.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Sheets.

Index   Variant requerida. El nombre o el índice de la hoja.


Ejemplo de la propiedad Item (conjunto Sheets)

Este ejemplo activa la Hoja1.

Sheets.Item("Hoja1").Activate


Propiedad Item (conjunto Styles)

Devuelve un único objeto Style de un conjunto Styles.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Styles.

Index   Variant requerida. El nombre o número de índice del estilo.


Ejemplo de la propiedad Item (conjunto Styles)

Este ejemplo modifica el estilo Normal del libro activo al cambiar su propiedad Bold.

ActiveWorkbook.Styles.Item("Normal").Font.Bold = True


Propiedad Item (conjunto VPageBreaks)

Devuelve un único objeto VPageBreak de un conjunto VPageBreaks.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto VPageBreaks.

Index   Long requerido. El índice del salto de página vertical.


Ejemplo de la propiedad Item (conjunto VPageBreaks)

Este ejemplo cambia la ubicación del salto de página vertical uno.

Worksheets(1).VPageBreaks.Item(1).Location = .Range("e5")


Propiedad Item (conjunto Windows)

Devuelve un único objeto Window de un conjunto Windows.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Windows.

Index   Variant requerida. El número de índice de la ventana.


Ejemplo de la propiedad Item (conjunto Windows)

Este ejemplo maximiza la ventana activa.

Windows.Item(1).WindowState = xlMaximized


Propiedad Item (conjunto Workbooks)

Devuelve un único objeto Workbook de un conjunto Workbooks.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Workbooks.

Index   Variant requerida. El nombre o número de índice del libro.


Ejemplo de la propiedad Item (conjunto Workbooks)

Este ejemplo establece la variable lb como el libro de MiMacro.xla.

Set lb = Workbooks.Item("mimacro.xla")


Propiedad Item (conjunto Worksheets)

Devuelve un único objeto Worksheet de un conjunto Worksheets.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Worksheets.

Index   Variant requerida. El nombre o índice de la hoja de cálculo.


Ejemplo de la propiedad Item (conjunto Worksheets)

Este ejemplo cambia la ubicación del salto de página vertical uno.

Worksheets.Item(1).VPageBreaks(1).Location = .Range("e5")


Método Item (conjunto Axes)

Devuelve un único objeto Axis de un conjunto Axes.

Sintaxis

expresión.Item(Type, AxisGroup)

expresión   Requerida. Una expresión que devuelve un objeto Axes.

Type   Variant requerida. Tipo de eje. Puede ser una de las siguientes constantes XlAxisType: xlValue, xlCategory o xlSeriesAxis (xlSeriesAxis sólo es válido para gráficos 3D).

AxisGroup   Variant opcional. Grupo de ejes. Puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. El valor predeterminado es xlPrimary.


Ejemplo del método Item (conjunto Axes)

Este ejemplo establece el texto del título del eje de categorías en el Gráfico1.

With Charts("Gráfico1").Axes.Item(xlCategory)

    .HasTitle = True

    .AxisTitle.Caption = "1994"

End With


Método Item (conjunto CalculatedFields)

Devuelve un único objeto PivotField de un conjunto CalculatedFields.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Expresión que devuelve un objeto CalculatedFields.

Index   Variant requerida. El nombre o el índice del campo de tabla dinámica.


Ejemplo del método Item (conjunto CalculatedFields)

Este ejemplo establece la fórmula del campo calculado uno.

Worksheets(1).PivotTables(1).CalculatedFields.Item(1) _

.Formula = "=Beneficios - Gasto"


Método Item (conjunto CalculatedItems)

Devuelve un único objeto PivotItem de un conjunto CalculatedItems.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto CalculatedItems.

Index   Variant requerida. El nombre o el índice del elemento de tabla dinámica.


Ejemplo del método Item (conjunto CalculatedItems)

Este ejemplo oculta el elemento calculado uno.

Worksheets(1).PivotTables(1).PivotFields("Año") _

.CalculatedItems.Item(1).Visible = False


Método Item (conjunto ChartGroups)

Devuelve un único objeto ChartGroup de un conjunto ChartGroups.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto ChartGroups.

Index   Variant requerida. El número de índice del grupo de gráficos.


Ejemplo del método Item (conjunto ChartGroups)

Este ejemplo agrega líneas de unión al grupo de gráficos uno de la hoja de gráficos uno.

Charts(1).ChartGroups.Item(1).HasDropLines = True


Método Item (conjunto ChartObjects)

Devuelve un único objeto ChartObject de un conjunto ChartObjects.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto ChartObjects.

Index   Variant requerida. El nombre o número de índice del gráfico incrustado.


Ejemplo del método Item (conjunto ChartObjects)

Este ejemplo activa el gráfico incrustado uno.

Worksheets("Hoja1").ChartObjects.Item(1).Activate


Método Item (conjunto Comments)

Devuelve un único objeto Comment de un conjunto Comments.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Comments.

Index   Long requerido. El índice del comentario.


Ejemplo del método Item (conjunto Comments)

Este ejemplo oculta el comentario dos.

Worksheets(1).Comments.Item(2).Visible = False


Método Item (conjunto CustomViews)

Devuelve un único objeto CustomView de un conjunto CustomViews.

Sintaxis

expresión.Item(ViewName)

expresión   Requerida. Una expresión que devuelve un objeto CustomViews.

ViewName   Variant requerida. El nombre o el índice de la vista personalizada.


Ejemplo del método Item (conjunto CustomViews)

Este ejemplo incluye la configuración de impresora en una vista personalizada denominada “Inventario actual”.

ThisWorkbook.CustomViews.Item("Inventario actual").PrintSettings = True


Método Item (conjunto DataLabels)

Devuelve un único objeto DataLabel de un conjunto DataLabels.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto DataLabels.

Index   Variant requerida. El nombre o el índice del rótulo de datos.


Ejemplo del método Item (conjunto DataLabels)

Este ejemplo establece el formato numérico del quinto rótulo de datos de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno.

Worksheets(1).ChartObjects(1).Chart _

.SeriesCollection(1).DataLabels.Item(5).NumberFormat = "0.000"


Método Item (conjunto FormatConditions)

Devuelve un único objeto FormatCondition de un conjunto FormatConditions.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto FormatConditions.

Index   Variant requerida. El número de índice del formato condicional.


Ejemplo del método Item (conjunto FormatConditions)

Este ejemplo establece las propiedades de un formato condicional, ya existente, para las celdas E1:E10.

With Worksheets(1).Range("e1:e10").FormatConditions.Item(1)

    With .Borders

        .LineStyle = xlContinuous

        .Weight = xlThin

        .ColorIndex = 6

    End With

End With


Método Item (conjunto LegendEntries)

Devuelve un único objeto LegendEntry de un conjunto LegendEntries.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto LegendEntries.

Index   Variant requerida. El número de índice del elemento de leyenda.


Ejemplo del método Item (conjunto LegendEntries)

Este ejemplo cambia la fuente del texto del elemento de leyenda que está en la parte superior de la leyenda (normalmente la leyenda de la serie uno) en el gráfico incrustado uno de la Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart _

    .Legend.LegendEntries.Item(1).Font.Italic = True


Método Item (conjunto Names)

Devuelve un único objeto Name de un conjunto Names.

Sintaxis

expresión.Item(Index, IndexLocal, RefersTo)

expresión   Requerida. Una expresión que devuelve un objeto Names.

Index   Variant opcional. El nombre o número del nombre definido a devolver.

IndexLocal   Variant opcional. El nombre del objeto nombre definido, en el lenguaje del usuario. Si usa este argumento no se convertirá ningún nombre.

RefersTo   Variant opcional. El elemento al que hace referencia el objeto. Puede utilizar este argumento para identificar un nombre a través de aquello a lo que hace referencia.

Comentarios

Debe especificar uno, y sólo uno, de los tres argumentos.


Ejemplo del método Item (conjunto Names)

Este ejemplo elimina el nombre "miRangoOrdenar" del libro activo.

ActiveWorkbook.Names.Item("miRangoOrdenar").Delete


Método Item (conjunto ODBCErrors)

Devuelve un único objeto ODBCError de un conjunto ODBCErrors.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto ODBCErrors.

Index   Long requerido. El índice del objeto ODBCError.


Ejemplo del método Item (conjunto ODBCErrors)

Este ejemplo muestra un error ODBC.

Set er = Application.ODBCErrors.Item(1)

MsgBox "Ha ocurrido el siguiente error:" &

er.ErrorString & " : " & er.SqlState


Método Item (conjunto OLEObjects)

Devuelve un único objeto OLEObject de un conjunto OLEObjects.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto OLEObjects.

Index   Variant requerida. El número de índice del objeto OLEObject.


Ejemplo del método Item (conjunto OLEObjects)

Este ejemplo elimina el objeto OLE uno de la Hoja1.

Worksheets("Hoja1").OLEObjects.Item(1).Delete


Método Item (conjunto Parameters)

Devuelve un único objeto Parameter de un conjunto Parameters.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Parameters.

Index   Variant requerida. El nombre o número de índice del parámetro.


Ejemplo del método Item (conjunto Parameters)

Este ejemplo modifica la cadena de texto asociada al parámetro que se utiliza para mostrar al usuario.

With Worksheets(1).QueryTables(1).Parameters.Item(1)

.SetParam xlPrompt, "Por favor " & .PromptString

End With


Método Item (conjunto PivotCaches)

Devuelve un único objeto PivotCache de un conjunto PivotCaches.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotCaches.

Index   Variant requerida. El número de índice de la caché de tabla dinámica.


Ejemplo del método Item (conjunto PivotCaches)

Este ejemplo actualiza la caché uno.

ActiveWorkbook.PivotCaches.Item(1).Refresh


Método Item (conjunto PivotFields)

Devuelve un único objeto PivotField de un conjunto PivotFields.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotFields.

Index   Variant requerida. El nombre o el índice del campo de tabla dinámica.


Ejemplo del método Item (conjunto PivotFields)

Este ejemplo convierte el campo Año en un campo de fila de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields.Item("Año").Orientation = xlRowField


Método Item (conjunto PivotFormulas)

Devuelve un único objeto PivotFormula de un conjunto PivotFormulas.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotFormulas.

Index   Variant requerida. El número de índice de la fórmula de tabla dinámica.


Ejemplo del método Item (conjunto PivotFormulas)

Este ejemplo muestra la fórmula de la fórmula de tabla dinámica uno.

MsgBox Worksheets(1).PivotTables(1).PivotFormulas.Item(1).Formula


Método Item (conjunto PivotItems)

Devuelve un único objeto PivotItem de un conjunto PivotItems.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotItems.

Index   Variant requerida. El nombre o el índice del elemento de tabla dinámica.


Ejemplo del método Item (conjunto PivotItems)

Este ejemplo oculta el elemento “1998” de la tabla dinámica uno en la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("Año").PivotItems.Item("1998").Visible = False


Método Item (conjunto PivotTables)

Devuelve un único objeto PivotTable de un conjunto PivotTables.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto PivotTables.

Index   Variant requerida. El nombre o número de índice de la tabla dinámica.


Ejemplo del método Item (conjunto PivotTables)

Este ejemplo convierte el campo Año en un campo de fila de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables.Item(1) _

    .PivotFields("Año").Orientation = xlRowField


Método Item (conjunto Points)

Devuelve un único objeto Point de un conjunto Points.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Points.

Index   Long requerido. El número de índice del punto.


Ejemplo del método Item (conjunto Points)

Este ejemplo establece el estilo del marcador del tercer punto de la serie uno del gráfico incrustado uno de la hoja de cálculo uno. La serie especificada debe ser de líneas, dispersión o radial 2D.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Points.Item(3).MarkerStyle = xlDiamond


Método Item (conjunto QueryTables)

Devuelve un único objeto QueryTable de un conjunto QueryTables.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto QueryTables.

Index   Variant requerida. El número de índice de la tabla de consulta.


Ejemplo del método Item (conjunto QueryTables)

Este ejemplo configura una tabla de consulta de modo que las fórmulas de su derecha se actualicen automáticamente siempre que se actualice la tabla.

Sheets("Hoja1").QueryTables.Item(1).FillAdjacentFormulas = True


Método Item (conjunto Scenarios)

Devuelve un único objeto Scenario de un conjunto Scenarios.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Scenarios.

Index   Variant requerida. El nombre o número de índice del escenario.


Ejemplo del método Item (conjunto Scenarios)

Este ejemplo muestra el escenario llamado “Típico” de la hoja de cálculo “Opciones”.

Worksheets("Opciones").Scenarios.Item("Típico").Show


Método Item (conjunto SeriesCollection)

Devuelve un único objeto Series de un conjunto SeriesCollection.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto SeriesCollection.

Index   Variant requerida. El nombre o número de índice de la serie.


Ejemplo del método Item (conjunto SeriesCollection)

Este ejemplo establece el número de unidades que la línea de tendencia del Gráfico1 se extiende hacia delante y hacia atrás. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

With Charts("Gráfico1").SeriesCollection.Item(1).Trendlines.Item(1)

.Forward = 5

.Backward = .5

End With


Método Item (conjunto ShapeRange)

Devuelve un único objeto Shape de un conjunto ShapeRange.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto ShapeRange.

Index   Variant requerida. El nombre o número de índice de la forma.


Ejemplo del método Item (conjunto ShapeRange)

Este ejemplo establece la propiedad OnAction de la forma dos en un rango de formas. Si la variable sr no hace referencia a un objeto ShapeRange, este ejemplo falla.

sr.Item(2).OnAction = "ShapeAction"


Método Item (conjunto Shapes)

Devuelve un único objeto Shape de un conjunto Shapes.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Shapes.

Index   Variant requerida. El nombre o número de índice de la forma.


Ejemplo del método Item (conjunto Shapes)

Este ejemplo establece la propiedad OnAction de la forma dos de un conjunto Shapes. Si la variable ss no hace referencia a un objeto Shapes, este ejemplo falla.

ss.Item(2).OnAction = "ShapeAction"


Método Item (conjunto Trendlines)

Devuelve un único objeto Trendline de un conjunto Trendlines.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Una expresión que devuelve un objeto Trendlines.

Index   Variant opcional. El nombre o número de índice de la línea de tendencia.


Ejemplo del método Item (conjunto Trendlines)

Este ejemplo establece el número de unidades que la línea de tendencia del Gráfico1 se extiende hacia delante y hacia atrás. El ejemplo debe ejecutarse en un gráfico de columnas 2D que contenga una sola serie con una línea de tendencia.

With Charts("Gráfico1").SeriesCollection(1).Trendlines.Item(1)

.Forward = 5

.Backward = .5

End With


Controles de Microsoft Excel

Son los controles de la barra de herramientas Formularios. No confundir estos controles con los controles ActiveX (que se agregan utilizando el Cuadro de controles).


Controles ActiveX

Son los controles del Cuadro de controles. Los controles ActiveX son objetos OLE incrustados. No confundir estos controles con los controles de Microsoft Excel (que se agregan utilizando la barra de herramientas Formularios).


Método Add

Agrega un objeto a un conjunto. Para obtener más información, haga clic en un conjunto de la siguiente lista:

AddIns CalculatedFields CalculatedItems ChartObjects Charts CustomViews FormatConditions HPageBreaks Hyperlinks Names OLEObjects Parameters PivotFormulas	PivotItems QueryTables RecentFiles Scenarios SeriesCollection Sheets Styles Trendlines Validation VPageBreaks Workbooks Worksheets


Método Group

Para obtener más información, haga clic en uno de los siguientes objetos:

Range

ShapeRange


Método Ungroup

Para obtener más información, haga clic en uno de los siguientes objetos:

Range

Shape

ShapeRange


Propiedad Range

Para obtener más información, haga clic en uno de los siguientes objetos:

Application

Hyperlink

Range

Shapes

Worksheet


Método Modify

Modifica la validación de datos o el formato condicional. Para obtener más información, haga clic en el objeto que desee modificar.

FormatCondition

Validation


Propiedad BarShape

Devuelve o establece la forma utilizada con el gráfico de columnas o de barras 3D. Puede ser una de las siguientes constantes XlBarShape: xlBox, xlConeToMax, xlConeToPoint, xlCylinder, xlPyramidToMax o xlPyramidToPoint. Long de Lectura/Escritura.


Ejemplo de la propiedad BarShape

Este ejemplo establece la forma utilizada con la serie uno en el gráfico uno.

Charts(1).SeriesCollection(1).BarShape = xlConeToPoint


Propiedad CharacterType

No se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Método PivotSelect

Selecciona parte de una tabla dinámica.

Sintaxis

expresión.PivotSelect(Name, Mode)

expresión   Expresión que devuelve un objeto PivotTable.

Name   String requerida. La selección, en formato estándar de selección de tabla dinámica.

Mode   Long requerido. Especifica el modo de selección estructurada. Puede ser una de las siguientes constantes XlPTSelectionMode: xlBlanks, xlButton, xlDataAndLabel, xlDataOnly, xlLabelOnly o xlOrigin.


Ejemplo del método PivotSelect

Este ejemplo selecciona todos los rótulos de datos de la tabla dinámica uno.

Worksheets(1).PivotTables(1).PivotSelect "date[All]", xlLabelOnly


Propiedad PivotSelection

Devuelve o establece la selección de la tabla dinámica, en formato de selección de tabla dinámica estándar. String de Lectura/Escritura.

Comentarios

Establecer esta propiedad equivale a llamar al método PivotSelect con el argumento Mode establecido en xlDataAndLabel.


Ejemplo de la propiedad PivotSelection

Este ejemplo selecciona, en la tabla dinámica uno, los datos y rótulo del vendedor "Carlos".

Worksheets(1).PivotTables(1).PivotSelection = "Vendedor[Carlos]"


Método PurgeChangeHistoryNow

Quita las entradas del registro de cambios del libro especificado.

Sintaxis

expresión.PurgeChangeHistoryNow(Days, SharingPassword)

expresión   Expresión que devuelve un objeto Workbook.

Days   Long requerido. Número de días que se mantendrán los cambios en el registro de cambios.

SharingPassword   Variant opcional. Contraseña que desprotege el libro para compartirlo. Si el libro está protegido con una contraseña para que no se comparta y se omite este argumento, se solicitará la contraseña al usuario.


Ejemplo del método PurgeChangeHistoryNow

Este ejemplo quita todos los cambios que tienen más de un día del registro de cambios del libro activo.

ActiveWorkbook.PurgeChangeHistoryNow Days:=1


Propiedad Range (objeto Hyperlink)

Devuelve un objeto Range que representa el rango al que está adjunto el hipervínculo especificado. Es de sólo lectura.


Ejemplo de la propiedad Range (objeto Hyperlink)

Este ejemplo se desplaza en la ventana del libro hasta que el rango del hipervínculo esté en la esquina superior izquierda de la ventana activa.

Workbooks(1).Activate

Set hr = ActiveSheet.Hyperlinks(1).Range

ActiveWindow.ScrollRow = hr.Row

ActiveWindow.ScrollColumn = hr.Column


Propiedad Shapes

Devuelve un objeto Shapes que representa todas las formas del libro u hoja de gráficos. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo miembro de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Shapes

Este ejemplo agrega una línea discontinua azul a la hoja de cálculo uno.

With Worksheets(1).Shapes.AddLine(10, 10, 250, 250).Line

    .DashStyle = msoLineDashDotDot

    .ForeColor.RGB = RGB(50, 0, 128)

End With


Propiedad Shape

Devuelve un objeto Shape que representa la forma adjunta al comentario o hipervínculo especificados.


Ejemplo de la propiedad Shape

Este ejemplo selecciona el comentario dos de la hoja activa.

ActiveSheet.Comments(2).Shape.Select


Propiedad ShowError

True si se muestra un mensaje de error de validación de datos siempre que el usuario introduzca datos no válidos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowError

Este ejemplo agrega validación de datos a la celda A10 de la hoja de cálculo uno. El valor de entrada debe ser de 5 a 10; si el usuario escribe un dato no válido se mostrará un mensaje de error pero no se mostrará un mensaje de entrada.

With Worksheets(1).Range("A10").Validation

    .Add Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop, _

        Operator:=xlBetween, Formula1:="5", Formula2:="10"

    .ErrorMessage = "el valor debe estar entre 5 y 10"

    .ShowInput = False

    .ShowError = True

End With


Propiedad ShowInput

True si se muestra el mensaje de entrada de validación de datos siempre que el usuario seleccione una celda del rango de validación de datos. Boolean de Lectura/Escritura.


Ejemplo de la propiedad ShowInput

Este ejemplo agrega validación de datos a la celda A10. El valor de entrada debe ser de 5 a 10; si el usuario escribe un dato no válido se mostrará un mensaje de error pero no se mostrará un mensaje de entrada.

With Worksheets(1).Range("A10").Validation

    .Add Type:=xlValidateWholeNumber, AlertStyle:=xlValidAlertStop, _

        Operator:=xlBetween, Formula1:="5", Formula2:="10"

    .ErrorMessage = "el valor debe estar entre 5 y 10"

    .ShowInput = False

    .ShowError = True

End With


Método Add (conjunto CalculatedFields o CalculatedItems)

Crea un nuevo campo calculado o elemento calculado. Devuelve un objeto PivotField o PivotItem.

Sintaxis

objeto.Add(Name, Formula)

objeto   Requerido. Expresión que devuelve un objeto CalculatedFields o CalculatedItems.

Name   String requerida. Nombre del campo o elemento.

Formula   String requerida. Fórmula del campo o elemento.


Ejemplo del método Add (conjunto CalculatedFields o CalculatedItems)

Este ejemplo agrega un campo calculado a la tabla dinámica uno.

Worksheets(1).PivotTables(1).CalculatedFields.Add "PxS", _

"= Producto * Ventas"


Método Add (conjunto ChartObjects)

Crea un nuevo gráfico incrustado. Devuelve un objeto ChartObject.

Sintaxis

objeto.Add(Left, Top, Width, Height)

objeto   Requerido. Expresión que devuelve un objeto ChartObjects.

Left, Top   Long requerido. Coordenadas iniciales, en puntos, del nuevo objeto con relación a la esquina superior izquierda de la celda A1 de la hoja de cálculo, o a la esquina superior izquierda de un gráfico.

Width, Height   Long requerido. Tamaño inicial del nuevo objeto, en puntos.


Ejemplo del método Add (conjunto ChartObjects)

Este ejemplo crea un nuevo gráfico incrustado.

Set co = Sheets("Hoja1").ChartObjects.Add(50, 40, 200, 100)

co.Chart..ChartWizard Source:=Worksheets("Hoja1").Range("A1:B2"), _

Gallery:=xlColumn, Format:=6, PlotBy:=xlColumns, _

CategoryLabels:=1, SeriesLabels:=0, HasLegend:=1


Método Add (conjunto HPageBreaks)

Agrega un salto de página horizontal. Devuelve un objeto HPageBreak.

Sintaxis

objeto.Add(Before)

objeto   Requerido. Expresión que devuelve un objeto HPageBreaks.

Before   Object requerido. Objeto Range. Rango antes del que se agregará el nuevo salto de página.


Ejemplo del método Add (conjunto HPageBreaks)

Este ejemplo agrega un salto de página horizontal encima de la celda F25 y agrega un salto de página vertical a la izquierda de esta celda.

With Worksheets(1)

.HPageBreaks.Add .Range("F25")

.VPageBreaks.Add .Range("F25")

End With


Método Add (conjunto Hyperlinks)

Agrega un hipervínculo al rango o forma especificados. Devuelve un objeto Hyperlink.

Sintaxis

objeto.Add(Anchor, Address, SubAddress)

objeto   Requerido. Expresión que devuelve un objeto Hyperlinks.

Anchor   Object requerido. Indicador del hipervínculo. Puede ser un objeto Range o Shape.

Address   String requerida. Dirección del hipervínculo.

SubAddress   Variant opcional. Subdirección del hipervínculo.


Ejemplo del método Add (conjunto Hyperlinks)

Este ejemplo agrega un hipervínculo a la celda E5.

With Worksheets(1)

.Hyperlinks.Add Anchor:=.Range("a5"), _

Address:="http://www.microsoft.com"

End With


Método Add (conjunto PivotFormulas)

Crea una nueva fórmula de tabla dinámica. Devuelve un objeto PivotFormula.

Sintaxis

objeto.Add(Formula)

objeto   Requerido. Expresión que devuelve un objeto PivotFormulas.

Formula   String requerida. Nueva fórmula de tabla dinámica.


Ejemplo del método Add (conjunto PivotFormulas)

Este ejemplo crea una nueva fórmula de tabla dinámica.

Worksheets(1).PivotTables(1).PivotFormulas _

.Add "Año['1998'] Manzanas = (Año['1997'] Manzanas) * 2"


Método Add (conjunto PivotItems)

Crea un nuevo elemento de tabla dinámica. Devuelve un objeto PivotItem.

Sintaxis

objeto.Add(Name)

objeto   Requerido. Expresión que devuelve un objeto PivotFormulas.

Name   String requerida. Nombre del nuevo elemento de tabla dinámica.


Ejemplo del método Add (conjunto PivotItems)

Este ejemplo crea un nuevo elemento de tabla dinámica.

Worksheets(1).PivotTables(1).PivotFields("Año").Add "1998"


Método Add (conjunto RecentFiles)

Agrega un archivo a la lista de archivos recientemente utilizados. Devuelve un objeto RecentFile.

Sintaxis

objeto.Add(Name)

objeto   Requerido. Expresión que devuelve un objeto RecentFiles.

Name   String requerida. Nombre del archivo.


Ejemplo del método Add (conjunto RecentFiles)

Este ejemplo agrega "Oscar.xls" a la lista de archivos recientemente utilizados.

Application.RecentFiles.Add Name:="oscar.xls"


Método Add (conjunto VPageBreaks)

Agrega un salto de página vertical. Devuelve un objeto VPageBreak.

Sintaxis

objeto.Add(Before)

objeto   Requerido. Expresión que devuelve un objeto VPageBreaks.

Before   Object requerido. Objeto Range. Rango a la izquierda del cual se agregará el nuevo salto de página.


Ejemplo del método Add (conjunto VPageBreaks)

Este ejemplo agrega un salto de página horizontal encima de la celda F25 y agrega un salto de página vertical a la izquierda de esta celda.

With Worksheets(1)

.HPageBreaks.Add .Range("F25")

.VPageBreaks.Add .Range("F25")

End With


Método Paste (objeto Floor o Walls)

Pega una imagen del Portapapeles en el plano inferior o en los planos laterales del gráfico especificado.

Sintaxis

objeto.Paste

objeto   Requerido. Expresión que devuelve un objeto Floor o Walls.


identificadores programáticos OLE (Microsoft Excel)

Para crear un objeto Automation se utiliza un identificador programático OLE, a veces denominado ProgID. Utilice uno de los siguientes identificadores programáticos OLE para crear un objeto Microsoft Excel.

Utilice este identificador	Para crear este objeto
Excel.Application	Application
Excel.Application.8	Application
Excel.Chart	Workbook (devolvía Chart en anteriores versiones de Microsoft Excel)
Excel.Chart.8	Workbook
Excel.Sheet	Workbook (devolvía Worksheet en anteriores versiones de Microsoft Excel)
Excel.Sheet.8	Workbook
Comentarios

Si se utiliza "Excel.Chart", "Excel.Sheet" o "Excel.Application" sin número de versión se crea un objeto en la versión más reciente de Microsoft Excel disponible en la máquina donde se ejecuta la macro.


formato estándar de selección de tabla dinámica

Expresión de cadena utilizada para especificar una parte de la tabla dinámica. La manera más sencilla de comprender la sintaxis requerida es activar el grabador de macros, seleccionar las celdas de la tabla dinámica y, a continuación, estudiar el código grabado.

Puede hacer referencia a una celda determinada si la cadena de la selección de la tabla dinámica contiene los nombres de todos los elementos utilizados para identificar las celdas individuales de la selección. El número de elementos en esa cadena debe ser igual al número de campos de la vista de una celda en un área de datos normal. Si la celda se utiliza para calcular un subtotal o un total general, el número de elementos en la cadena debe ser menor, incluyendo 0 (cero) para la intersección de los totales generales de filas y columnas.

Los nombres de los elementos de la cadena pueden aparecer en cualquier orden. Si el nombre de un elemento es ambiguo debido a que también aparece en otro campo, debe ser cualificado por "Campo[Elemento]". Si el nombre de un elemento contiene símbolos y espacios, o si no comienza con un carácter alfabético, debe ponerse entre comillas simples. Si el nombre de un elemento contiene comillas simples incrustadas, cada una de ellas debe convertirse en dos comillas simples. No son necesarias las comillas si el nombre no es ambiguo, ni para nombres no cualificados que comiencen con números.


Propiedad AutoMargins

True si Microsoft Excel calcula automáticamente los márgenes del marco de texto. Boolean de Lectura/Escritura.

Comentarios

Cuando esta propiedad es True, las propiedades MarginLeft, MarginRight, MarginTop y MaginBottom se omiten.


Ejemplo de la propiedad AutoMargins

Este ejemplo hace que Microsoft Excel calcule automáticamente los márgenes del marco de texto de la forma uno.

Worksheets(1).Shapes(1).TextFrame.AutoMargins = True


Propiedad Accent

True si una barra de énfasis vertical separa el texto de la llamada de la línea de la llamada. Long de Lectura/Escritura.


Ejemplo de la propiedad Accent

Este ejemplo agrega a miDocumento una elipse y una llamada que señala la elipse. El texto de la llamada no tendrá un borde, pero tendrá una barra de énfasis vertical que separa el texto de la línea de la llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddShape msoShapeOval, 180, 200, 280, 130

    With .AddCallout(msoCalloutTwo, 420, 170, 170, 40)

        .TextFrame.Characters.Text = "Mi elipse"

        With .Callout

            .Accent = True

            .Border = False

        End With

    End With

End With


Método AddCallout

Crea una llamada con líneas sin borde. Devuelve un objeto Shape que representa la nueva llamada.

Sintaxis

expresión.AddCallout(Type, Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Type   Long requerido. Tipo de línea de la llamada. Puede ser una de las siguientes constantes MsoCalloutType:MsoCalloutType  msoCalloutOne (línea de llamada de un solo segmento, que puede ser horizontal o vertical), msoCalloutTwo (línea de llamada de un solo segmento que gira libremente), msoCalloutThree (línea de dos segmentos) o msoCalloutFour (línea de tres segmentos).

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda del cuadro de límite de la llamada con relación a la esquina superior izquierda del documento.

Width, Height   Single requerido. Ancho y alto, en puntos, del cuadro de límite de la llamada.

Comentarios

Es posible insertar gran variedad de llamadas utilizando el método AddShape.


Ejemplo del método AddCallout

Este ejemplo agrega una llamada sin borde con una línea de un segmento de giro libre a miDocumento y, a continuación, establece el ángulo de la llamada en 30 grados.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddCallout(msoCalloutTwo, 50, 50, 200, 100).Callout.Angle = msoCalloutAngle30


Método AddConnector

Crea un conector. Devuelve un objeto Shape que representa el nuevo conector. Cuando se agrega un conector no se conecta a nada. Utilice los métodos BeginConnect y EndConnect para adjuntar el principio y el final de un conector a otras formas del documento.

Sintaxis

expresión.AddConnector(Type, BeginX, BeginY, EndX, EndY)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Type   Long requerido. Tipo de conector. Puede ser una de las siguientes constantes MsoConnectorType: msoConnectorCurve, msoConnectorElbow o msoConnectorStraight.

BeginX, BeginY   Single requerido. Posición, en puntos, del principio del conector con relación a la esquina superior izquierda del documento.

EndX, EndY   Single requerido. Posición, en puntos, del final del conector con relación a la esquina superior izquierda del documento.

Comentarios

Al adjuntar un conector a una forma, el tamaño y posición del mismo se ajustan automáticamente, si fuera necesario. Por tanto, si se va a adjuntar un conector a otras formas, la posición y tamaño especificados al agregar el conector es irrelevante.


Ejemplo del método AddConnector

Este ejemplo agrega dos rectángulos a miDocumento y los conecta con un conector curvado. Observe que al adjuntar el conector a los rectángulos, el tamaño y posición del conector se ajustan automáticamente; por tanto, la posición y las dimensiones especificadas al agregar la llamada son irrelevantes (las dimensiones deben ser diferentes de cero).

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set c = s.AddConnector(msoConnectorCurve, 0, 0, 100, 100)

With c.ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=1

    c.RerouteConnections

End With


Método AddCurve

Crea una curva Bézier. Devuelve un objeto Shape que representa la nueva curva.

Sintaxis

expresión.AddCurve(SafeArrayOfPoints)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

SafeArrayOfPoints   Variant requerida. Matriz de pares de coordenadas que especifica los vértices y los puntos de control de la curva. El primer punto especificado es el vértice inicial y los dos siguientes puntos son los puntos de control del primer segmento Bézier. A continuación, para cada segmento adicional de la curva, se especifica un vértice y dos puntos de control. El último punto especificado es el vértice final de la curva. Observe que siempre deben especificarse 3n+1 puntos, donde n es el número de segmentos de la curva.


Ejemplo del método AddCurve

El siguiente ejemplo agrega una curva Bézier de dos segmentos a miDocumento.

Dim pts(1 To 7, 1 To 2) As Single

pts(1, 1) = 0

pts(1, 2) = 0

pts(2, 1) = 72

pts(2, 2) = 72

pts(3, 1) = 100

pts(3, 2) = 40

pts(4, 1) = 20

pts(4, 2) = 50

pts(5, 1) = 90

pts(5, 2) = 120

pts(6, 1) = 60

pts(6, 2) = 30

pts(7, 1) = 150

pts(7, 2) = 90

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddCurve pts


Método AddLabel

Crea un rótulo. Devuelve un objeto Shape que representa el nuevo rótulo.

Sintaxis

expresión.AddLabel(Orientation,Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Orientation   Long requerido. Orientación del texto en el rótulo. Puede ser una de las siguientes constantes MsoTextOrientation: msoTextOrientationDownward, msoTextOrientationHorizontal, msoTextOrientationHorizontalRotatedFarEast, msoTextOrientationMixed, msoTextOrientationUpward, msoTextOrientationVertical o msoTextOrientationVerticalFarEast. Las constantes para Extremo Oriente no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel.

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda del rótulo con relación a la esquina superior izquierda del documento.

Width, Height   Single requerido. Ancho y alto, en puntos, del rótulo.


Ejemplo del método AddLabel

Este ejemplo agrega un rótulo vertical que contiene el texto "Rótulo de prueba" a miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddLabel(msoTextOrientationVertical, 100, 100, 60, 150) _

    .TextFrame.Characters.Text = "Rótulo de prueba"


Método AddLine

Crea una línea. Devuelve un objeto Shape que representa la nueva línea.

Sintaxis

expresión.AddLine(BeginX, Beginy, EndX, EndY)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

BeginX, BeginY   Single requerido. Posición, en puntos, del principio de la línea con relación a la esquina superior izquierda del documento.

EndX, EndY   Single requerido. Posición, en puntos, del final de la línea con relación a la esquina superior izquierda del documento.


Ejemplo del método AddLine

Este ejemplo agrega una línea discontinua azul a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(10, 10, 250, 250).Line

    .DashStyle = msoLineDashDotDot

    .ForeColor.RGB = RGB(50, 0, 128)

End With


Método AddNodes

Inserta un nuevo segmento al final de la forma libre que se está creando y agrega los nodos que definen el segmento. Puede utilizar este método tantas veces como desee agregar nodos a la forma libre que esté creando. Cuando termine de agregar nodos, utilice el método ConvertToShape para crear la forma libre recién definida. Para agregar nodos a una forma libre después de crearla, utilice el método Insert del conjunto ShapeNodes.

Sintaxis

expresión.AddNodes(SegmentType, EditingType, X1, Y1, X2, Y2, X3, Y3)

expresión   Requerida. Expresión que devuelve un objeto FreeformBuilder.

SegmentType   Long requerida. Tipo de segmento a agregar. Puede ser una de las siguientes constantes MsoSegmentType: msoSegmentCurve o msoSegmentLine.

EditingType   Long requerido. Propiedad de edición del vértice. Puede ser una de las siguientes constantes MsoEditingType: msoEditingAuto o msoEditingCorner (no puede ser msoEditingSmooth o msoEditingSymmetric). Si SegmentType es msoSegmentLine, EditingType debe ser msoEditingAuto.

X1   Single requerido. Si el EditingType del nuevo segmento es msoEditingAuto, este argumento especifica la distancia horizontal, en puntos, desde la esquina superior izquierda del documento hasta el final del nuevo segmento. Si el EditingType del nuevo nodo es msoEditingCorner, este argumento especifica la distancia horizontal, en puntos, desde la esquina superior izquierda del documento hasta el primer punto de control del nuevo segmento.

Y1   Single requerido. Si el EditingType del nuevo segmento es msoEditingAuto, este argumento especifica la distancia vertical, en puntos, desde la esquina superior izquierda del documento hasta el final del nuevo segmento. Si el EditingType del nuevo nodo es msoEditingCorner, este argumento especifica la distancia vertical, en puntos, desde la esquina superior izquierda del documento hasta el primer punto de control del nuevo segmento.

X2   Single opcional. Si el EditingType del nuevo segmento es msoEditingCorner, este argumento especifica la distancia horizontal, en puntos, desde la esquina superior izquierda del documento hasta el segundo punto de control del nuevo segmento. Si el EditingType del nuevo segmento es msoEditingAuto, no especifique un valor para este argumento.

Y2   Single opcional. Si el EditingType del nuevo segmento es msoEditingCorner, este argumento especifica la distancia vertical, en puntos, desde la esquina superior izquierda del documento hasta el segundo punto de control del nuevo segmento. Si el EditingType del nuevo segmento es msoEditingAuto, no especifique un valor para este argumento.

X3   Single opcional. Si el EditingType del nuevo segmento es msoEditingCorner, este argumento especifica la distancia horizontal, en puntos, desde la esquina superior izquierda del documento hasta el final del nuevo segmento. Si el EditingType del nuevo segmento es msoEditingAuto, no especifique un valor para este argumento.

Y3   Single opcional. Si el EditingType del nuevo segmento es msoEditingCorner, este argumento especifica la distancia vertical, en puntos, desde la esquina superior izquierda del documento hasta el final del nuevo segmento. Si el EditingType del nuevo segmento es msoEditingAuto, no especifique un valor para este argumento.


Ejemplo del método AddNodes

Este ejemplo agrega una forma libre con cuatro segmentos a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.BuildFreeform(msoEditingCorner, 360, 200)

    .AddNodes msoSegmentCurve, msoEditingCorner, 380, 230, 400, 250, 450, 300

    .AddNodes msoSegmentCurve, msoEditingAuto, 480, 200

    .AddNodes msoSegmentLine, msoEditingAuto, 480, 400

    .AddNodes msoSegmentLine, msoEditingAuto, 360, 200

    .ConvertToShape

End With


Método AddOLEObject

Crea un objeto OLE. Devuelve un objeto Shape que representa el nuevo objeto OLE.

Sintaxis

expresión.AddOLE(ClassType, FileName, Link, DisplayAsIcon, IconFileName, IconIndex, IconLabel, Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

ClassType   Variant opcional. (debe especificar ClassType o FileName). Cadena que contiene el identificador programático del objeto que se va a crear. Si se especifica ClassType, no se tienen en cuenta FileName ni Link. Para obtener más información acerca de los identificadores programáticos, ver identificadores programáticos OLE.

FileName   Variant opcional. Archivo a partir del cual se creará el objeto. Si no se especifica una ruta de acceso, se utiliza la carpeta de trabajo actual. Debe especificar el argumento ClassType o FileName para el objeto, pero no ambos.

Link   Variant opcional. True para vincular el objeto OLE al archivo a partir del cual fue creado. False para que el objeto OLE sea una copia independiente del archivo. Si se especificó un valor para ClassType, este argumento debe ser False. El valor predeterminado es False.

DisplayAsIcon   Variant opcional. True mostrar el objeto OLE como un icono. El valor predeterminado es False.

IconFileName   StriVariantng opcional. Archivo que contiene el icono que se va a mostrar.

IconIndex   Variant opcional. Número de índice del icono dentro de IconFileName. El orden de los iconos en el archivo especificado corresponde al orden en que aparecen los iconos en el cuadro de diálogo Cambiar icono, al que se accede desde el cuadro de diálogo Insertar objeto al activar la casilla de verificación Mostrar como icono. El primer icono del archivo tiene el número de índice 0 (cero). Si en IconFileName no existe ningún icono con el número de índice dado, se utilizará el icono con número de índice 1 (segundo icono del archivo). El valor predeterminado es 0 (cero).

IconLabel   Variant opcional. Rótulo (título) a mostrar debajo del icono.

Left, Top   Variant opcional. Posición, en puntos, de la esquina superior izquierda del nuevo objeto con relación a la esquina superior izquierda del documento. El valor predeterminado es 0 (cero).

Width, Height   Variant opcional. Tamaño inicial, en puntos, del nuevo objeto OLE.


Ejemplo del método AddOLEObject

Este ejemplo agrega un documento de Word vinculado a miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddOLEObject Left:=100, Top:=100, Width:=200, Height:=300, _

    FileName:="c:\Mis documentos\prueba.doc", link:=True

Este ejemplo agrega un nuevo botón de comando a miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddOLEObject Left:=100, Top:=100, Width:=100, Height:=200, _

    ClassType:="Forms.CommandButton.1"


Método AddPicture

Crea una imagen de un archivo existente. Devuelve un objeto Shape que representa la nueva imagen.

Sintaxis

expresión.AddPicture(FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

FileName   String requerida. Archivo a partir del cual se creará el objeto OLE.

LinkToFile   Long requerido. True para vincular la imagen al archivo a partir del cual fue creada. False para que la imagen sea una copia independiente del archivo.

SaveWithDocument   Long requerido. True para guardar la imagen vinculada con el documento en que se ha insertado. False para guardar sólo la información vinculada en el documento. Este argumento debe ser True si LinkToFile es False.

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda de la imagen con relación a la esquina superior izquierda del documento.

Width, Height   Single requerido. Ancho y alto, en puntos, de la imagen.


Ejemplo del método AddPicture

Este ejemplo agrega a miDocumento una imagen creada a partir del archivo Musica.bmp. La imagen insertada se vincula al archivo a partir del cual se creó, y se guarda con miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddPicture "c:\microsoft office\clipart\musica.bmp", _

    True, True, 100, 100, 70, 70


Método AddPolyline

Crea una polilínea o un polígono cerrado. Devuelve un objeto Shape que representa la nueva polilínea o polígono.

Sintaxis

expresión.AddPolyline(SafeArrayOfPoints)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

SafeArrayOfPoints   Variant requerida. Matriz de pares de coordenadas que especifica los vértices de dibujo de la polilínea.

Comentarios

Para formar un polígono cerrado, asigne las mismas coordenadas a los vértices inicial y final del dibujo del polígono.


Ejemplo del método AddPolyline

Este ejemplo agrega un triángulo a miDocumento. Debido a que los puntos inicial y final tienen las mismas coordenadas, el polígono está cerrado y relleno. El color del interior del triángulo será el mismo que el color de relleno de la forma predeterminada.

Dim triArray(1 To 4, 1 To 2) As Single

triArray(1, 1) = 25

triArray(1, 2) = 100

triArray(2, 1) = 100

triArray(2, 2) = 150

triArray(3, 1) = 150

triArray(3, 2) = 50

triArray(4, 1) = 25     ' El último punto tiene las mismas coordenadas que el primero

triArray(4, 2) = 100

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddPolyline triArray


Método AddShape

Crea una Autoforma. Devuelve un objeto Shape que representa la nueva Autoforma.

Sintaxis

expresión.AddShape(Type, Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Type   Long requerido. Especifica el tipo de la Autoforma a crear. Puede ser una de las siguientes constantes MsoAutoShapeType:

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda del cuadro de límite de la Autoforma con relación a la esquina superior izquierda del documento.

Width, Height   Single requerido. Ancho y alto, en puntos, del cuadro de límite de la Autoforma.

Comentarios

Para cambiar el tipo de una Autoforma agregada, establezca la propiedad AutoShapeType.


Ejemplo del método AddShape

Este ejemplo agrega un rectángulo a miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddShape msoShapeRectangle, 50, 50, 100, 200


Método AddTextbox

Crea un cuadro de texto. Devuelve un objeto Shape que representa el nuevo cuadro de texto.

Sintaxis

expresión.AddTextbox(Orientation,Left, Top, Width, Height)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Orientation   Long requerido. Orientación del texto en el rótulo. Puede ser una de las siguientes constantes MsoTextOrientation: msoTextOrientationDownward, msoTextOrientationHorizontal, msoTextOrientationHorizontalRotatedFarEast, msoTextOrientationMixed, msoTextOrientationUpward, msoTextOrientationVertical o msoTextOrientationVerticalFarEast. Las constantes para Extremo Oriente no se utilizan en la versión inglesa para EE.UU. de Microsoft Excel.

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda del cuadro de texto con relación a la esquina superior izquierda del documento.

Width, Height   Single requerido. Ancho y alto, en puntos, del cuadro de texto.


Ejemplo del método AddTextbox

Este ejemplo agrega un cuadro de texto que contiene el texto "Cuadro de prueba" a miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddTextbox(msoTextOrientationHorizontal, 100, 100, 200, 50) _

    .TextFrame.Characters.Text = "Cuadro de prueba"


Método AddTextEffect

Crea un objeto WordArt. Devuelve un objeto Shape que representa el nuevo objeto WordArt.

Sintaxis

expresión.AddTextEffect(PresetTextEffect, Text, FontName, FontSize, FontBold, FontItalic, Left, Top)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

PresetTextEffect   Long requerido. Efecto de texto preestablecido. Puede ser una de las siguientes constantes MsoPresetTextEffect:

msoTextEffect1 msoTextEffect10 msoTextEffect11 msoTextEffect12 msoTextEffect13 msoTextEffect14 msoTextEffect15 msoTextEffect16 msoTextEffect17 msoTextEffect18 msoTextEffect19 msoTextEffect2 msoTextEffect20 msoTextEffect21 msoTextEffect22	msoTextEffect23 msoTextEffect24 msoTextEffect25 msoTextEffect26 msoTextEffect27 msoTextEffect28 msoTextEffect29 msoTextEffect3 msoTextEffect30 msoTextEffect4 msoTextEffect5 msoTextEffect6 msoTextEffect7 msoTextEffect8 msoTextEffect9
Text   String requerida. Texto del WordArt.

FontName   String requerida. Nombre de la fuente utilizada en el objeto WordArt.

FontSize   Single requerido. Tamaño, en puntos de la fuente utilizada en el objeto WordArt.

FontBold   Long requerido. True para establecer en negrita la fuente establecida en el objeto WordArt.

FontItalic   Long requerido. True para establecer en cursiva la fuente establecida en el objeto WordArt.

Left, Top   Single requerido. Posición, en puntos, de la esquina superior izquierda del cuadro de límite del WordArt con relación a la esquina superior izquierda del documento.

Comentarios

Al agregar un WordArt a un documento, el alto y el ancho se establecen automáticamente según el tamaño y cantidad de texto especificado.


Ejemplo del método AddTextEffect

Este ejemplo agrega un WordArt que contiene el texto "Muestra" a miDocumento.

Set miDocumento = Worksheets(1)

Set nuevoWordArt = miDocumento.Shapes.AddTextEffect(PresetTextEffect:=msoTextEffect1, Text:="Prueba", _

    FontName:="Arial Black", FontSize:=36, FontBold:=False, FontItalic:=False, Left:=10, Top:=10)


Propiedad Adjustments

Devuelve un objeto Adjustments que contiene los valores de todos los ajustes de la forma especificada. Se aplica a todos los objetos Shape o ShapeRange que representa una Autoforma, WordArt o conector. Es de sólo lectura.


Ejemplo de la propiedad Adjustments

Este ejemplo establece en 0.25 el valor de ajuste de la forma uno de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).Adjustments(1) = 0.25


Método Align

Alinea las formas del rango de formas especificado.

Sintaxis

expresión.Align(AlignCmd, RelativeTo)

expresión   Requerida. Una expresión que devuelve un objeto ShapeRange.

AlignCmd   Long requerido. Especifica la manera en que se alinearán las formas del rango de formas especificado. Puede ser una de las siguientes constantes MsoAlignCmd: msoAlignBottoms, msoAlignCenters, msoAlignLefts, msoAlignMiddles, msoAlignRights o msoAlignTops.

RelativeTo   Long requerido. No se utiliza en Microsoft Excel. Debe ser False.


Ejemplo del método Align

Este ejemplo alinea los lados izquierdos de todas las formas del rango especificado en miDocumento con el lado izquierdo de la forma situada más a la izquierda en el rango.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.SelectAll

Selection.ShapeRange.Align msoAlignLefts, False


Propiedad Alignment

Devuelve o establece la alineación del WordArt especificado. Puede ser una de las siguientes constantes MsoTextEffectAlignment: msoTextEffectAlignmentCentered, msoTextEffectAlignmentLeft, msoTextEffectAlignmentLetterJustify, msoTextEffectAlignmentMixed, msoTextEffectAlignmentRight, msoTextEffectAlignmentStretchJustify o msoTextEffectAlignmentWordJustify. Long de Lectura/Escritura.


Ejemplo de la propiedad Alignment

Este ejemplo agrega un objeto WordArt a la hoja de cálculo uno y, a continuación lo alinea.

Set miHoja = Worksheets(1).Shapes

Set miET = miHoja.AddTextEffect(PresetTextEffect:=msoTextEffect1, _

    Text:="Texto de prueba", FontName:="Palatino", FontSize:=54, _

    FontBold:=True, FontItalic:=False, Left:=100, Top:=50)

miET.TextEffect.Alignment = msoTextEffectAlignmentRight


Propiedad Angle

Devuelve o establece el ángulo de la línea de la llamada. Si la línea de la llamada contiene más de un segmento, esta propiedad devuelve o establece el ángulo más alejado del cuadro de texto de la llamada. Puede ser una de las siguientes constantes MsoCalloutAngleType: msoCalloutAngle30, msoCalloutAngle45, msoCalloutAngle60, msoCalloutAngle90, msoCalloutAngleAutomatic o msoCalloutAngleMixed. Long de Lectura/Escritura.

Comentarios

Si esta propiedad se establece en un valor diferente de msoCalloutAngleAutomatic, la línea de la llamada mantiene un ángulo fijo a medida que se arrastre la llamada.


Ejemplo de la propiedad Angle

Este ejemplo establece en 90 grados el ángulo de la llamada denominada "llamada1" en miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes("llamada1").Callout.Angle = msoCalloutAngle90


Método Apply

Se aplica al formato de la forma especificada que se están copiando con el método PickUp.

Sintaxis

expresión.Apply

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.


Ejemplo del método Apply

Este ejemplo copia el formato de la copia uno de miDocumento y, a continuación, aplica el formato copiado a la forma dos.

Set miDocumento = Worksheets(1)

With miDocumento

    .Shapes(1).PickUp

    .Shapes(2).Apply

End With


Propiedad AutoAttach

True si el punto donde se adjunta la línea al cuadro de texto de la llamada varía dependiendo de si el origen de la línea (donde señala la llamada) está a la izquierda o a la derecha del cuadro de texto. Long de Lectura/Escritura.

Comentarios

El valor de la línea de unión es la distancia vertical desde el lado del cuadro de texto de la llamada al punto donde se adjunta la línea de la llamada. Cuando el valor de esta propiedad es True, el valor de la línea de unión se mide desde la parte superior del cuadro de texto, si éste está a la derecha del origen, y desde la parte inferior cuando el cuadro de texto está a la izquierda del origen. Cuando el valor de esta propiedad es False, el valor de la línea de unión siempre se mide desde la parte superior del cuadro de texto, independientemente de las posiciones relativas del cuadro de texto y del origen. Utilice el método CustomDrop para establecer el valor de la línea de unión, y la propiedad Drop para devolverlo.

Cuando se establece, esta propiedad afecta a una llamada sólo si se ha establecido explícitamente un valor de línea de unión, es decir, si el valor de la propiedad DropType es msoCalloutDropCustom. De forma predeterminada, las llamadas tienen valores de línea de unión explícitamente establecidos cuando se crean.


Ejemplo de la propiedad AutoAttach

Este ejemplo agrega dos llamadas a miDocumento. Si arrastra el cuadro de texto de cada una de estas llamadas a la izquierda del origen de la línea de la llamada, el lugar del cuadro de texto donde se adjunta la línea de la llamada cambiará para la llamada que se ha adjuntado automáticamente.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    With .AddCallout(msoCalloutTwo, 420, 170, 200, 50)

        .TextFrame.Characters.Text = "autoadjunto"

        .Callout.AutoAttach = True

    End With

    With .AddCallout(msoCalloutTwo, 420, 350, 200, 50)

        .TextFrame.Characters.Text = "no autoadjunto"

        .Callout.AutoAttach = False

    End With

End With


Propiedad AutoLength

True si el tamaño del primer segmento de la línea de la llamada, segmento adjunto al cuadro de texto de la llamada, se ajusta automáticamente siempre que se mueva la llamada. False si el primer segmento de la llamada mantiene la longitud fija especificada por la propiedad Length siempre que se mueva la llamada. Se aplica sólo a llamadas cuyas líneas consten de más de un segmento, del tipo msoCalloutThree y msoCalloutFour. Long de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método AutomaticLength para establecer esta propiedad en True y utilice el método CustomLength para establecer esta propiedad en False.


Ejemplo de la propiedad AutoLength

Este ejemplo cambia entre un primer segmento de ajuste automático y uno de longitud fija en la línea de la llamada de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .AutoLength Then

        .CustomLength 50

    Else

        .AutomaticLength

    End If

End With


Método AutomaticLength

Especifica que el primer segmento de la línea de la llamada, segmento adjunto al cuadro de texto de la llamada, se ajusta automáticamente siempre que se mueva la llamada. Utilice el método CustomLength para especificar que el primer segmento de la llamada mantenga la longitud fija devuelta por la propiedad Length siempre que se mueva la llamada. Se aplica sólo a llamadas cuyas líneas consten de más de un segmento, del tipo msoCalloutThree y msoCalloutFour.

Sintaxis

expresión.AutomaticLength

expresión   Requerida. Expresión que devuelve un objeto CalloutFormat.

Comentarios

Al aplicar este método la propiedad AutoLength se establece en True.


Ejemplo del método AutomaticLength

Este ejemplo cambia entre un primer segmento de ajuste automático y uno de longitud fija en la línea de la llamada de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .AutoLength Then

        .CustomLength 50

    Else

        .AutomaticLength

    End If

End With


Propiedad AutoShapeType

Devuelve o establece el tipo de forma del objeto Shape o ShapeRange especificados, que debe representar una Autoforma diferente de una línea, un dibujo de forma libre o un conector. Long de Lectura/Escritura.

Nota   Al cambiar el tipo de una forma, ésta mantiene su tamaño, color y otros atributos.

Puede ser una de las siguientes constantes MsoAutoShapeType:

msoShape16pointStar msoShape24pointStar msoShape32pointStar msoShape4pointStar msoShape5pointStar msoShape8pointStar msoShapeActionButtonBackorPrevious msoShapeActionButtonBeginning msoShapeActionButtonCustom msoShapeActionButtonDocument msoShapeActionButtonEnd msoShapeActionButtonForwardorNext msoShapeActionButtonHelp msoShapeActionButtonHome msoShapeActionButtonInformation msoShapeActionButtonMovie msoShapeActionButtonReturn msoShapeActionButtonSound msoShapeArc msoShapeBalloon msoShapeBentArrow msoShapeBentUpArrow msoShapeBevel msoShapeBlockArc msoShapeCan msoShapeChevron msoShapeCircularArrow msoShapeCloudCallout msoShapeCross msoShapeCube msoShapeCurvedDownArrow msoShapeCurvedDownRibbon msoShapeCurvedLeftArrow msoShapeCurvedRightArrow msoShapeCurvedUpArrow msoShapeCurvedUpRibbon msoShapeDiamond msoShapeDonut msoShapeDoubleBrace msoShapeDoubleBracket msoShapeDoubleWave msoShapeDownArrow msoShapeDownArrowCallout msoShapeDownRibbon msoShapeExplosion1 msoShapeExplosion2 msoShapeFlowchartAlternateProcess msoShapeFlowchartCard msoShapeFlowchartCollate msoShapeFlowchartConnector msoShapeFlowchartData msoShapeFlowchartDecision msoShapeFlowchartDelay msoShapeFlowchartDirectAccessStorage msoShapeFlowchartDisplay msoShapeFlowchartDocument msoShapeFlowchartExtract msoShapeFlowchartInternalStorage msoShapeFlowchartMagneticDisk msoShapeFlowchartManualInput msoShapeFlowchartManualOperation msoShapeFlowchartMerge msoShapeFlowchartMultidocument msoShapeFlowchartOffpageConnector msoShapeFlowchartOr msoShapeFlowchartPredefinedProcess msoShapeFlowchartPreparation msoShapeFlowchartProcess msoShapeFlowchartPunchedTape msoShapeFlowchartSequentialAccessStorage	msoShapeFlowchartSort msoShapeFlowchartStoredData msoShapeFlowchartSummingJunction msoShapeFlowchartTerminator msoShapeFoldedCorner msoShapeHeart msoShapeHexagon msoShapeHorizontalScroll msoShapeIsoscelesTriangle msoShapeLeftArrow msoShapeLeftArrowCallout msoShapeLeftBrace msoShapeLeftBracket msoShapeLeftRightArrow msoShapeLeftRightArrowCallout msoShapeLeftRightUpArrow msoShapeLeftUpArrow msoShapeLightningBolt msoShapeLineCallout1 msoShapeLineCallout1AccentBar msoShapeLineCallout1BorderandAccentBar msoShapeLineCallout1NoBorder msoShapeLineCallout2 msoShapeLineCallout2AccentBar msoShapeLineCallout2BorderandAccentBar msoShapeLineCallout2NoBorder msoShapeLineCallout3 msoShapeLineCallout3AccentBar msoShapeLineCallout3BorderandAccentBar msoShapeLineCallout3NoBorder msoShapeLineCallout4 msoShapeLineCallout4AccentBar msoShapeLineCallout4BorderandAccentBar msoShapeLineCallout4NoBorder msoShapeMixed msoShapeMoon msoShapeNoSymbol msoShapeNotchedRightArrow msoShapeNotPrimitive msoShapeOctagon msoShapeOval msoShapeOvalCallout msoShapeParallelogram msoShapePentagon msoShapePlaque msoShapeQuadArrow msoShapeQuadArrowCallout msoShapeRectangle msoShapeRectangularCallout msoShapeRegularPentagon msoShapeRightArrow msoShapeRightArrowCallout msoShapeRightBrace msoShapeRightBracket msoShapeRightTriangle msoShapeRoundedRectangle msoShapeRoundedRectangularCallout msoShapeSmileyFace msoShapeStripedRightArrow msoShapeSun msoShapeTrapezoid msoShapeUpArrow msoShapeUpArrowCallout msoShapeUpDownArrow msoShapeUpDownArrowCallout msoShapeUpRibbon msoShapeUTurnArrow msoShapeVerticalScroll msoShapeWave
Comentarios

Utilice la propiedad Type del objeto ConnectorFormat para establecer o devolver el tipo de conector.


Ejemplo de la propiedad AutoShapeType

Este ejemplo reemplaza todas las estrellas de 16 puntas por estrellas de 32 puntas en miDocumento.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.AutoShapeType = msoShape16pointStar Then

        s.AutoShapeType = msoShape32pointStar

    End If

Next


Propiedad AutoSize

True si el tamaño del objeto especificado cambia automáticamente para ajustar el texto a sus límites. Boolean de Lectura/Escritura.


Ejemplo de la propiedad AutoSize

Este ejemplo ajusta al texto el tamaño del marco de texto de la forma uno.

Worksheets(1).Shapes(1).TextFrame.AutoSize = True


Propiedad BeginArrowheadLength

Devuelve o establece la longitud de la punta de flecha del principio de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadLength: msoArrowheadLengthMedium, msoArrowheadLengthMixed, msoArrowheadLong o msoArrowheadShort. Long de Lectura/Escritura.


Ejemplo de la propiedad BeginArrowheadLength

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Propiedad BeginArrowheadStyle

Devuelve o establece el estilo de la punta de flecha del principio de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadStyle: msoArrowheadDiamond, msoArrowheadNone, msoArrowheadOpen, msoArrowheadOval, msoArrowheadStealth, msoArrowheadStyleMixed o msoArrowheadTriangle. Long de Lectura/Escritura.


Ejemplo de la propiedad BeginArrowheadStyle

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Propiedad BeginArrowheadWidth

Devuelve o establece el ancho de la punta de flecha del principio de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadWidth: msoArrowheadNarrow, msoArrowheadWide, msoArrowheadWidthMedium o msoArrowheadWidthMixed. Long de Lectura/Escritura.


Ejemplo de la propiedad BeginArrowheadWidth

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Método BeginConnect

Adjunta el principio del conector especificado a una forma especificada. Si ya existe una conexión entre el principio del conector y otra forma, esta conexión se rompe. Si el principio del conector no está aún situado en el sitio de conexión especificado, este método mueve el principio del conector al sitio de conexión y ajusta el tamaño y la posición del conector. Utilice el método EndConnect para adjuntar el final de un conector a una forma.

Sintaxis

expresión.BeginConnect(ConnectedShape, ConnectionSite)

expresión   Requerida. Expresión que devuelve un objeto ConnectorFormat.

ConnectedShape   Objeto Shape requerido. Objeto al que se adjuntará el principio del conector. El objeto Shape especificado debe estar en el mismo conjunto Shapes que el conector.

ConnectionSite   Long requerido. Sitio de conexión en la forma, especificado por ConnectedShape. Debe ser un entero entre 1 y el entero devuelto por la propiedad ConnectionSiteCount de la forma especificada. Si desea que el conector busque automáticamente la ruta más corta entre dos formas por él conectadas, especifique cualquier entero válido para este argumento y, a continuación, utilice el método RerouteConnections después de que el conector se adjunte a ambos extremos de las formas.

Comentarios

Al adjuntar un conector a un objeto, su tamaño y posición se ajustan automáticamente, si fuera necesario.


Ejemplo del método BeginConnect

Este ejemplo agrega dos rectángulos a miDocumento y los conecta con un conector curvado. Observe que el método RerouteConnections no utiliza los valores indicados en los argumentos ConnectionSite utilizados con los métodos BeginConnect y EndConnect.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set c = s.AddConnector(msoConnectorCurve, 0, 0, 100, 100)

with c.ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=1

    c.RerouteConnections

End With


Propiedad BeginConnected

True si el principio del conector especificado está conectado a una forma. Long de sólo lectura.


Ejemplo de la propiedad BeginConnected

Si la forma tres de miDocumento es un conector cuyo principio está conectado a una forma, este ejemplo guarda el número del sitio de conexión en la variable oldBeginConnSite, guarda una referencia a la forma conectada en la variable oldBeginConnShape y, a continuación, desconecta de la forma el principio del conector.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Connector Then

        With .ConnectorFormat

            If .BeginConnected Then

                oldBeginConnSite = .BeginConnectionSite

                Set oldBeginConnShape = .BeginConnectedShape

                .BeginDisconnect

            End If

        End With

    End If

End With


Propiedad BeginConnectedShape

Devuelve un objeto Shape que representa la forma a la que se ha adjuntado el principio del conector. Es de sólo lectura.

Nota   Si el principio del conector especificado no está adjunto a una forma, esta propiedad genera un error.


Ejemplo de la propiedad BeginConnectedShape

Este ejemplo asume que miDocumento contiene dos formas adjuntas por un conector denominado "Con1A2." El código agrega un rectángulo y un conector a miDocumento. El principio del nuevo conector se adjuntará al mismo sitio de conexión que el principio del conector denominado "Con1A2", y el final del nuevo conector se adjuntará al sitio de conexión uno del nuevo rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    Set r3 = .AddShape(msoShapeRectangle, 450, 190, 200, 100)

    .AddConnector(msoConnectorCurve, 0, 0, 10, 10).Name = "Con1A3"

    With .Item("Con1A2").ConnectorFormat

        princSitioConex1 = .BeginConnectionSite

        Set princConexForma1 = .BeginConnectedShape

    End With

    With .Item("Con1A3").ConnectorFormat

        .BeginConnect princConexForma1, princSitioConex1

        .EndConnect r3, 1

    End With

End With


Propiedad BeginConnectionSite

Devuelve un número entero que especifica el sitio de conexión al que está conectado el principio del conector. Long de sólo lectura.

Nota   Si el principio del conector especificado no está adjunto a una forma, esta propiedad genera un error.


Ejemplo de la propiedad BeginConnectionSite

Este ejemplo asume que miDocumento contiene dos formas adjuntas por un conector denominado "Con1A2." El código agrega un rectángulo y un conector a miDocumento. El principio del nuevo conector se adjuntará al mismo sitio de conexión que el principio del conector denominado "Con1A2", y el final del nuevo conector se adjuntará al sitio de conexión uno del nuevo rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    Set r3 = .AddShape(msoShapeRectangle, 450, 190, 200, 100)

    .AddConnector(msoConnectorCurve, 0, 0, 10, 10).Name = "Con1A3"

    With .Item("Con1A2").ConnectorFormat

        princSitioConex1 = .BeginConnectionSite

        Set princConexForma1 = .BeginConnectedShape

    End With

    With .Item("Con1A3").ConnectorFormat

        .BeginConnect princConexForma1, princSitioConex1

        .EndConnect r3, 1

    End With

End With


Método BeginDisconnect

Separa el principio del conector especificado de la forma a la que está adjunta. Este método no altera el tamaño o posición del conector. El principio del conector permanece ubicado en un sitio de conexión, pero ya no estará conectado. Utilice el método EndDisconnect para separar el final de un conector de una forma.

Sintaxis

expresión.BeginDisconnect

expresión   Requerida. Expresión que devuelve un objeto ConnectorFormat.


Ejemplo del método BeginDisconnect

Este ejemplo agrega dos rectángulos a miDocumento, los adjunta con un conector, cambia la ruta automáticamente por la ruta más corta y, a continuación, separa el conector de los rectángulos.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set c = s.AddConnector(msoConnectorCurve, 0, 0, 0, 0)

With c.ConnectorFormat

    .BeginConnect primerRect, 1

    .EndConnect segundoRect, 1

    c.RerouteConnections

    .BeginDisconnect

    .EndDisconnect

End With


Propiedad BlackWhiteMode

Esta propiedad no se utiliza en Microsoft Excel. Sólo se incluye por motivos de compatibilidad con los modelos de objetos de dibujo de otras aplicaciones de Microsoft Office.


Propiedad Brightness

Devuelve o establece el brillo de la imagen u objeto OLE especificados. El valor de esta propiedad debe ser un número entre 0.0 (el más tenue) a 1.0 (el más brillante).  Single de Lectura/Escritura.


Ejemplo de la propiedad Brightness

Este ejemplo establece el brillo de la forma uno de miDocumento. La forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).PictureFormat.Brightness = 0.3


Método BuildFreeform

Genera un objeto de forma libre. Devuelve un objeto FreeformBuilder que representa la forma libre que se está generando. Utilice el método AddNodes para agregar segmentos a la forma libre. Después de agregar al menos un segmento a la forma libre, puede utilizar el método ConvertToShape para convertir el objeto FreeformBuilder en un objeto Shape que tenga una descripción geométrica definida en el objeto FreeformBuilder.

Sintaxis

expresión.BuildFreeform(EditingType, X1, Y1)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

EditingType   Long requerido. Propiedad de edición del primer nodo. Puede ser una de las siguientes constantes MsoEditingType: msoEditingAuto o msoEditingCorner (no puede ser msoEditingSmooth o msoEditingSymmetric).

X1, Y1   Single requerido. Posición, en puntos, del primer nodo del dibujo de forma libre con relación a la esquina superior izquierda del documento.


Ejemplo del método BuildFreeform

Este ejemplo agrega una forma libre con cinco vértices a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.BuildFreeform(msoEditingCorner, 360, 200)

    .AddNodes msoSegmentCurve, msoEditingCorner, 380, 230, 400, 250, 450, 300

    .AddNodes msoSegmentCurve, msoEditingAuto, 480, 200

    .AddNodes msoSegmentLine, msoEditingAuto, 480, 400

    .AddNodes msoSegmentLine, msoEditingAuto, 360, 200

    .ConvertToShape

End With


Propiedad Callout

Devuelve un objeto CalloutFormat que contiene las propiedades del formato de llamada de la forma especificada. Se aplica a objetos Shape o ShapeRange que representen llamadas de línea. Es de sólo lectura.


Ejemplo de la propiedad Callout

Este ejemplo agrega a miDocumento una elipse y una llamada que señala a la elipse. El texto de la llamada no tendrá un borde, pero tendrá una barra de énfasis vertical que separa el texto de la línea de la llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddShape msoShapeOval, 180, 200, 280, 130

    With .AddCallout(msoCalloutTwo, 420, 170, 170, 40)

        .TextFrame.Characters.Text = "Mi elipse"

        With .Callout

            .Accent = True

            .Border = False

        End With

    End With

End With


Propiedad ColorType

Devuelve o establece el tipo de transformación de color aplicado a la imagen u objeto OLE especificados. Puede ser una de las siguientes constantes MsoPictureColorType: msoPictureAutomatic, msoPictureBlackAndWhite, msoPictureGrayscale, msoPictureMixed o msoPictureWatermark. Long de Lectura/Escritura.


Ejemplo de la propiedad ColorType

Este ejemplo establece en escala de grises la transformación de color de la forma uno de miDocumento. La forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).PictureFormat.ColorType = msoPictureGrayScale


Propiedad ConnectionSiteCount

Devuelve el número de sitios de conexión del rango especificado. Long de sólo lectura.


Ejemplo de la propiedad ConnectionSiteCount

Este ejemplo agrega dos rectángulos a miDocumento y los une con dos conectores. El principio de ambos conectores se adjuntan al sitio de conexión uno del primer rectángulo; el final de los conectores se adjuntan a los sitios primero y último del segundo rectángulo.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

lastsite = segundoRect.ConnectionSiteCount

With s.AddConnector(msoConnectorCurve, 0, 0, 100, 100).ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=1

End With

With s.AddConnector(msoConnectorCurve, 0, 0, 100, 100).ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=lastsite

End With


Propiedad Connector

True si la forma especificada es un conector. Long de sólo lectura.


Ejemplo de la propiedad Connector

Este ejemplo elimina todos los conectores de miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    For i = .Count To 1 Step -1

        With .Item(i)

            If .Connector Then .Delete

        End With

    Next

End With


Propiedad ConnectorFormat

Devuelve un objeto ConnectorFormat que contiene propiedades de formato del conector. Se aplica a objetos Shape o ShapeRange que representen conectores. Es de sólo lectura.


Ejemplo de la propiedad ConnectorFormat

Este ejemplo agrega dos rectángulos a miDocumento, los adjunta con un conector, cambia la ruta automáticamente por la ruta más corta y, a continuación, separa el conector de los rectángulos.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set c = s.AddConnector(msoConnectorCurve, 0, 0, 0, 0)

with c.ConnectorFormat

    .BeginConnect primerRect, 1

    .EndConnect segundoRect, 1

    c.RerouteConnections

    .BeginDisconnect

    .EndDisconnect

End With


Propiedad Contrast

Devuelve o establece el contraste de la imagen u objeto OLE especificados. El valor de esta propiedad debe ser un número entre 0.0 (menor contraste) a 1.0 (mayor contraste).  Single de Lectura/Escritura.


Ejemplo de la propiedad Contrast

Este ejemplo establece el contraste de la forma uno de miDocumento. La forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).PictureFormat.Contrast = 0.8


Método ConvertToShape

Crea una forma que tiene las características geométricas del objeto FreeformBuilder especificado. Devuelve un objeto Shape que representa la nueva forma.

Nota   Debe aplicar el método AddNodes a un objeto FreeformBuilder al menos una vez antes de utilizar el método ConvertToShape.

Sintaxis

expresión.ConvertToShape

expresión   Requerida. Expresión que devuelve un objeto FreeformBuilder.


Ejemplo del método ConvertToShape

Este ejemplo agrega una forma libre con cinco vértices a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.BuildFreeform(msoEditingCorner, 360, 200)

    .AddNodes msoSegmentCurve, msoEditingCorner, 380, 230, 400, 250, 450, 300

    .AddNodes msoSegmentCurve, msoEditingAuto, 480, 200

    .AddNodes msoSegmentLine, msoEditingAuto, 480, 400

    .AddNodes msoSegmentLine, msoEditingAuto, 360, 200

    .ConvertToShape

End With


Propiedad CropBottom

Devuelve o establece el número de puntos se recortará la parte inferior de la imagen u objeto OLE especificados. Single de Lectura/Escritura.

Nota   El recorte se calcula con relación al tamaño original de la imagen. Por ejemplo, si inserta una imagen que originalmente tenía un alto de 100 puntos, ajuste su tamaño de forma que tenga 200 puntos de alto y, a continuación, establezca la propiedad CropBottom en 50 y se recortarán 100 puntos (no 50) de la parte inferior de la imagen.


Ejemplo de la propiedad CropBottom

Este ejemplo recorta 20 puntos de la parte inferior de la forma tres de miDocumento. Para que el ejemplo funcione, la forma tres debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).PictureFormat.CropBottom = 20

Al utilizar este ejemplo, puede especificar el porcentaje que desea recortar la parte inferior de la forma seleccionada, independientemente de que se haya ajustado su tamaño. Para que el ejemplo funcione, la forma seleccionada debe ser una imagen o un objeto OLE.

porcentajeARecortar = InputBox("¿Qué porcentaje desea recortar la parte inferior de esta imagen?")

Set formaARecortar = ActiveWindow.Selection.ShapeRange(1)

With formaARecortar.Duplicate

    .ScaleHeight 1, True

    altoOriginal = .Height

    .Delete

End With

puntosRecorte = altoOriginal * porcentajeARecortar / 100

formaARecortar.PictureFormat.CropBottom = puntosRecorte


Propiedad CropLeft

Devuelve o establece el número de puntos que se recortará el lado izquierdo de la imagen u objeto OLE especificados. Single de Lectura/Escritura.

Nota   El recorte se calcula con relación al tamaño original de la imagen. Por ejemplo, si inserta una imagen que originalmente tenía un ancho de 100 puntos, ajuste su tamaño de forma que tenga 200 puntos de ancho y, a continuación, establezca la propiedad CropLeft en 50 y se recortarán 100 puntos (no 50) del lado izquierdo de la imagen.


Ejemplo de la propiedad CropLeft

Este ejemplo recorta 20 puntos del lado izquierdo de la forma tres de miDocumento. Para que el ejemplo funcione, la forma tres debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).PictureFormat.CropLeft = 20

Al utilizar este ejemplo, puede especificar el porcentaje que desea recortar el lado izquierdo de la forma seleccionada, independientemente de que se haya ajustado su tamaño. Para que el ejemplo funcione, la forma seleccionada debe ser una imagen o un objeto OLE.

porcentajeARecortar = InputBox("¿Qué porcentaje desea recortar el lado izquierdo de esta imagen?")

Set formaARecortar = ActiveWindow.Selection.ShapeRange(1)

With formaARecortar.Duplicate

    .ScaleWidth 1, True

    anchoOriginal = .Width

    .Delete

End With

puntosRecorte = anchoOriginal * porcentajeARecortar / 100

formaARecortar.PictureFormat.CropLeft = puntosRecorte


Propiedad CropRight

Devuelve o establece el número de puntos que se recortará el lado derecho de la imagen u objeto OLE especificados. Single de Lectura/Escritura.

Nota   El recorte se calcula con relación al tamaño original de la imagen. Por ejemplo, si inserta una imagen que originalmente tenía un ancho de 100 puntos, ajuste su tamaño de forma que tenga 200 puntos de ancho y, a continuación, establezca la propiedad CropRight en 50 y se recortarán 100 puntos (no 50) del lado derecho de la imagen.


Ejemplo de la propiedad CropRight

Este ejemplo recorta 20 puntos del lado derecho de la forma tres de miDocumento. Para que el ejemplo funcione, la forma tres debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).PictureFormat.CropRight = 20

Al utilizar este ejemplo, puede especificar el porcentaje que desea recortar el lado derecho de la forma seleccionada, independientemente de que se haya ajustado su tamaño. Para que el ejemplo funcione, la forma seleccionada debe ser una imagen o un objeto OLE.

porcentajeARecortar = InputBox("¿Qué porcentaje desea recortar el lado derecho de esta imagen?")

Set formaARecortar = ActiveWindow.Selection.ShapeRange(1)

With formaARecortar.Duplicate

    .ScaleWidth 1, True

    anchoOriginal = .Width

    .Delete

End With

puntosRecorte = anchoOriginal * porcentajeARecortar / 100

formaARecortar.PictureFormat.CropRight = puntosRecorte


Propiedad CropTop

Devuelve o establece el número de puntos se recortará la parte superior de la imagen u objeto OLE especificados. Single de Lectura/Escritura.

Nota   El recorte se calcula con relación al tamaño original de la imagen. Por ejemplo, si inserta una imagen que originalmente tenía un alto de 100 puntos, ajuste su tamaño de forma que tenga 200 puntos de alto y, a continuación, establezca la propiedad CropTop en 50 y se recortarán 100 puntos (no 50) de la parte superior de la imagen.


Ejemplo de la propiedad CropTop

Este ejemplo recorta 20 puntos de la parte superior de la forma tres de miDocumento. Para que el ejemplo funcione, la forma tres debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).PictureFormat.CropTop = 20

Al utilizar este ejemplo, puede especificar el porcentaje que desea recortar la parte superior de la forma seleccionada, independientemente de que se haya ajustado su tamaño. Para que el ejemplo funcione, la forma seleccionada debe ser una imagen o un objeto OLE.

porcentajeARecortar = InputBox("¿Qué porcentaje desea recortar la parte superior de esta imagen?")

Set formaARecortar = ActiveWindow.Selection.ShapeRange(1)

With formaARecortar.Duplicate

    .ScaleHeight 1, True

    altoOriginal = .Height

    .Delete

End With

puntosRecorte = altoOriginal * porcentajeARecortar / 100

formaARecortar.PictureFormat.CropTop = puntosRecorte


Método CustomDrop

Establece la distancia vertical, en puntos, desde el borde del cuadro de límite del texto hasta el lugar donde la línea de la llamada se adjunta al cuadro de texto. La distancia se mide desde la parte superior del cuadro de texto, a menos que el valor de la propiedad AutoAttach sea True y el cuadro de texto esté a la izquierda del origen de la línea de la llamada (lugar al que señala la llamada), en cuyo caso la distancia de la línea de unión se mide desde la parte inferior del cuadro de texto.

Sintaxis

expresión.CustomDrop(Drop)

expresión   Requerida. Expresión que devuelve un objeto CalloutFormat.

Drop   Single requerido. Distancia de la línea de unión, en puntos.


Ejemplo del método CustomDrop

Este ejemplo establece la distancia de la línea de unión personalizada en 14 puntos, y especifica que esta distancia se mida siempre desde la parte superior. Para que el ejemplo funcione, la forma tres debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Callout

    .CustomDrop 14

    .AutoAttach = False

End With


Método CustomLength

Especifica que el primer segmento de la línea de la llamada, segmento adjunto al cuadro de texto de la llamada, mantenga una longitud fija siempre que se mueva la llamada. Utilice el método AutomaticLength para especificar que el primer segmento de la línea de la llamada se ajuste automáticamente siempre que se mueva la llamada. Se aplica sólo a llamadas cuyas líneas consten de más de un segmento, del tipo msoCalloutThree y msoCalloutFour.

Sintaxis

expresión.CustomLength(Length)

expresión   Requerida. Expresión que devuelve un objeto CalloutFormat.

Length   Single requerido. Longitud del primer segmento de la llamada, en puntos.

Comentarios

Al aplicar este método, la propiedad AutoLength se establece en False y la propiedad Length en el valor especificado por el argumento Length.


Ejemplo del método CustomLength

Este ejemplo cambia entre un primer segmento de ajuste automático y uno de longitud fija en la línea de la llamada de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .AutoLength Then

        .CustomLength 50

    Else

        .AutomaticLength

    End If

End With


Propiedad DashStyle

Devuelve o establece el estilo de línea discontinua de la línea especificada. Puede ser una de las siguientes constantes MsoLineDashStyle: msoLineDash, msoLineDashDot, msoLineDashDotDot, msoLineDashStyleMixed, msoLineLongDash, msoLineLongDashDot, msoLineRoundDot, msoLineSolid o msoLineSquareDot. Long de Lectura/Escritura.


Ejemplo de la propiedad DashStyle

Este ejemplo agrega una línea discontinua azul a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(10, 10, 250, 250).Line

    .DashStyle = msoLineDashDotDot

    .ForeColor.RGB = RGB(50, 0, 128)

End With


Propiedad Depth

Devuelve o establece la profundidad de extrusión de la forma. Puede ser un valor entre -600 y 9600. Los valores positivos producen una extrusión cuya cara frontal es la forma original; los valores negativos producen una extrusión cuya cara posterior es la forma original. Single de Lectura/Escritura.


Ejemplo de la propiedad Depth

Este ejemplo agrega una elipse a miDocumento y, a continuación, especifica que la extrusión de la elipse tendrá una profundidad de 50 puntos y será morada.

Set miDocumento = Worksheets(1)

Set miForma = miDocumento.Shapes.AddShape(msoShapeOval, 90, 90, 90, 40)

With miForma.ThreeD

    .Visible = True

    .Depth = 50

    .ExtrusionColor.RGB = RGB(255, 100, 255)    ' valor RGB para el color morado

End With


Método Distribute

Distribuye horizontal o verticalmente las formas del rango de formas especificado.

Sintaxis

expresión.Distribute(DistributeCmd, RelativeTo)

expresión   Requerida. Expresión que devuelve un objeto ShapeRange.

DistributeCmd   Long requerido. Especifica si las formas del rango se distribuirán horizontal o verticalmente. Puede ser una de las siguientes constantes MsoDistributeCmd: msoDistributeHorizontally o msoDistributeVertically.

RelativeTo   Long requerido. No se utiliza en Microsoft Excel. Debe ser False.


Ejemplo del método Distribute

Este ejemplo define un rango de formas que contiene todas las Autoformas de miDocumento y, a continuación, distribuye horizontalmente las formas de este rango. La forma situada más a la izquierda mantiene su posición.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    númFormas = .Count

    If númFormas > 1 Then

        númAutoformas = 0

        ReDim autoFrmMatriz(1 To númFormas)

        For i = 1 To númFormas

            If .Item(i).Type = msoAutoShape Then

                númAutoformas = númAutoformas + 1

                autoFrmMatriz(númAutoformas) = .Item(i).Name

            End If

        Next

        If númAutoformas > 1 Then

            ReDim Preserve autoFrmMatriz(1 To númAutoformas)

            Set comoRango = .Range(autoFrmMatriz)

            comoRango.Distribute msoDistributeHorizontally, False

        End If

    End If

End With


Propiedad Drop

Para llamadas con un valor de línea de unión explícitamente establecido, esta propiedad devuelve la distancia vertical, en puntos, desde el lado del cuadro de límite del texto hasta el lugar donde la línea de la llamada se adjunta al cuadro de texto. La distancia se mide desde la parte superior del cuadro de texto, a menos que el valor de la propiedad AutoAttach sea True y el cuadro de texto esté a la izquierda del origen de la línea de la llamada (lugar al que señala la llamada), en cuyo caso la distancia de la línea de unión se mide desde la parte inferior del cuadro de texto. Single de sólo lectura.

Comentarios

Utilice el método CustomDrop para establecer el valor de esta propiedad.

El valor de esta propiedad refleja exactamente la posición en que la línea de la llamada se adjunta al cuadro de texto sólo si la llamada tiene un valor de línea de unión explícitamente establecido, es decir, si el valor de la propiedad DropType es msoCalloutDropCustom.


Ejemplo de la propiedad Drop

Este ejemplo reemplaza la línea de unión personalizada de la forma uno de miDocumento por una de las dos líneas de unión preestablecidas, según si el valor de la línea de unión personalizada es mayor o menor que la mitad del alto del cuadro de texto de la llamada. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .DropType = msoCalloutDropCustom Then

        If .Drop < .Parent.Height / 2 Then

            .PresetDrop msoCalloutDropTop

        Else

            .PresetDrop msoCalloutDropBottom

        End If

    End If

End With


Propiedad DropType

Devuelve un valor que indica donde se adjunta la línea de la llamada al cuadro de texto. Puede ser una de las siguientes constantes MsoCalloutDropType: msoCalloutDropBottom, msoCalloutDropCenter, msoCalloutDropCustom, msoCalloutDropMixed o msoCalloutDropTop. Long de sólo lectura.

Comentarios

Si el tipo de línea de unión de la llamada es msoCalloutDropCustom, los valores de las propiedades Drop y AutoAttach y las posiciones relativas del cuadro de texto y del origen de la línea de la llamada (lugar al que señala la llamada) se utilizan para determinar dónde se adjunta la línea de la llamada al cuadro de texto.

Esta propiedad es de sólo lectura. Utilice el método PresetDrop para establecer el valor de esta propiedad.


Ejemplo de la propiedad DropType

Este ejemplo reemplaza la línea de unión personalizada de la forma uno de miDocumento por una de las dos líneas de unión preestablecidas, según si el valor de la línea de unión personalizada es mayor o menor que la mitad del alto del cuadro de texto de la llamada. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .DropType = msoCalloutDropCustom Then

        If .Drop < .Parent.Height / 2 Then

            .PresetDrop msoCalloutDropTop

        Else

            .PresetDrop msoCalloutDropBottom

        End If

    End If

End With


Propiedad EditingType

Si el nodo especificado es un vértice, esta propiedad devuelve un valor que indica cómo los cambios realizados al nodo afectan a los dos segmento conectados a él. Puede ser una de las siguientes constantes MsoEditingType: msoEditingAuto, msoEditingCorner, msoEditingSmooth o msoEditingSymmetric. Si el nodo es un punto de control de un segmento curvado, esta propiedad devuelve el tipo de edición del vértice adyacente. Long de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método SetEditingType para establecer el valor de esta propiedad.


Ejemplo de la propiedad EditingType

Este ejemplo cambia todos los nodos de esquina por nodos suaves en la forma tres de miDocumento. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    For n = 1 to .Count

        If .Item(n).EditingType = msoEditingCorner Then

            .SetEditingType n, msoEditingSmooth

        End If

    Next

End With


Propiedad EndArrowheadLength

Devuelve o establece la longitud de la punta de flecha del final de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadLength: msoArrowheadLengthMedium, msoArrowheadLengthMixed, msoArrowheadLong o msoArrowheadShort. Long de Lectura/Escritura.


Ejemplo de la propiedad EndArrowheadLength

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Propiedad EndArrowheadStyle

Devuelve o establece el estilo de la punta de flecha del final de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadStyle: msoArrowheadDiamond, msoArrowheadNone, msoArrowheadOpen, msoArrowheadOval, msoArrowheadStealth, msoArrowheadStyleMixed o msoArrowheadTriangle. Long de Lectura/Escritura.


Ejemplo de la propiedad EndArrowheadStyle

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Propiedad EndArrowheadWidth

Devuelve o establece el ancho de la punta de flecha del final de la línea especificada. Puede ser una de las siguientes constantes MsoArrowheadWidth: msoArrowheadNarrow, msoArrowheadWide, msoArrowheadWidthMedium o msoArrowheadWidthMixed. Long de Lectura/Escritura.


Ejemplo de la propiedad EndArrowheadWidth

Este ejemplo agrega una línea a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Método EndConnect

Adjunta el final del conector especificado a una forma especificada. Si ya existe una conexión entre el final del conector y otra forma, esta conexión se rompe. Si el final del conector no está aún situado en el sitio de conexión especificado, este método mueve el final del conector al sitio de conexión y ajusta el tamaño y la posición del conector. Utilice el método BeginConnect para adjuntar el principio del conector a una forma.

Sintaxis

expresión.EndConnect(ConnectedShape, ConnectionSite)

expresión   Requerida. Expresión que devuelve un objeto ConnectorFormat.

ConnectedShape   Objeto Shape requerido. Forma a la que se adjuntará el final del conector. El objeto Shape especificado debe estar en el mismo conjunto Shapes que el conector.

ConnectionSite   Long requerido. Sitio de conexión en la forma, especificado por ConnectedShape. Debe ser un entero entre 1 y el entero devuelto por la propiedad ConnectionSiteCount de la forma especificada. Si desea que el conector busque automáticamente la ruta más corta entre dos formas por él conectadas, especifique cualquier entero válido para este argumento y, a continuación, utilice el método RerouteConnections después de que el conector se adjunte a ambos extremos de las formas.

Comentarios

Al adjuntar un conector a un objeto, su tamaño y posición se ajustan automáticamente, si fuera necesario.


Ejemplo del método EndConnect

Este ejemplo agrega dos rectángulos a miDocumento y los conecta con un conector curvado. Observe que el método RerouteConnections no utiliza los valores indicados en los argumentos ConnectionSite utilizados con los métodos BeginConnect y EndConnect.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set c = s.AddConnector(msoConnectorCurve, 0, 0, 100, 100)

With c.ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=1

    c.RerouteConnections

End With


Propiedad EndConnected

True si el final del conector especificado está conectado a una forma. Long de sólo lectura.


Ejemplo de la propiedad EndConnected

Si el final del conector representado por la forma tres de miDocumento está conectado a una forma, este ejemplo guarda número del sitio de conexión en la variable antiguoSitioConexFinal, guarda una referencia a la forma conectada en la variable de objeto antiguoFormaConexFinal y, a continuación, desconecta de la forma el final del conector.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Connector Then

        With .ConnectorFormat

            If .EndConnected Then

                antiguoSitioConexFinal = .EndConnectionSite

                Set antiguoFormaConexFinal = .EndConnectedShape

                .EndDisconnect

            End If

        End With

    End If

End With


Propiedad EndConnectedShape

Devuelve un objeto Shape que representa la forma a la que se ha adjuntado el final del conector especificado. Es de sólo lectura.

Nota   Si el final del conector especificado no está adjunto a una forma, esta propiedad genera un error.


Ejemplo de la propiedad EndConnectedShape

Este ejemplo asume que miDocumento contiene dos formas adjuntas por un conector denominado "Con1A2." El código agrega un rectángulo y un conector a miDocumento. El final del nuevo conector se adjuntará al mismo sitio de conexión que el final del conector denominado "Con1A2", y el principio del nuevo conector se adjuntará al sitio de conexión uno del nuevo rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    Set r3 = .AddShape(msoShapeRectangle, 100, 420, 200, 100)

    With .Item("Con1A2").ConnectorFormat

        sitioConexFinal1 = .EndConnectionSite

        Set conexFinalForma1 = .EndConnectedShape

    End With

    With .AddConnector(msoConnectorCurve, 0, 0, 10, 10).ConnectorFormat

        .BeginConnect r3, 1

        .EndConnect conexFinalForma1, sitioConexFinal1

    End With

End With


Propiedad EndConnectionSite

Devuelve un número entero que especifica el sitio de conexión al que está conectado el final del conector. Long de sólo lectura.

Nota   Si el final del conector especificado no está adjunto a una forma, esta propiedad genera un error.


Ejemplo de la propiedad EndConnectionSite

Este ejemplo asume que miDocumento contiene dos formas adjuntas por un conector denominado "Con1A2." El código agrega un rectángulo y un conector a miDocumento. El final del nuevo conector se adjuntará al mismo sitio de conexión que el final del conector denominado "Con1A2", y el principio del nuevo conector se adjuntará al sitio de conexión uno del nuevo rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    Set r3 = .AddShape(msoShapeRectangle, 100, 420, 200, 100)

    With .Item("Con1A2").ConnectorFormat

        sitioConexFinal1 = .EndConnectionSite

        Set conexFinalForma1 = .EndConnectedShape

    End With

    With .AddConnector(msoConnectorCurve, 0, 0, 10, 10).ConnectorFormat

        .BeginConnect r3, 1

        .EndConnect conexFinalForma1, sitioConexFinal1

    End With

End With


Método EndDisconnect

Separa el final del conector especificado de la forma a la que está adjunto. Este método no altera el tamaño o posición del conector. El final del conector permanece ubicado en un sitio de conexión, pero ya no estará conectado. Utilice el método BeginDisconnect para separar el principio de un conector de una forma.

Sintaxis

expresión.EndDisconnect

expresión   Requerida. Expresión que devuelve un objeto ConnectorFormat.


Ejemplo del método EndDisconnect

Este ejemplo agrega dos rectángulos a miDocumento, los adjunta con un conector, cambia la ruta automáticamente por la ruta más corta y, a continuación, separa el conector de los rectángulos.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

set c = s.AddConnector(msoConnectorCurve, 0, 0, 0, 0)

with c.ConnectorFormat

    .BeginConnect primerRect, 1

    .EndConnect segundoRect, 1

    c.RerouteConnections

    .BeginDisconnect

    .EndDisconnect

End With


Propiedad ExtrusionColor

Devuelve un objeto ColorFormat que representa el color de la extrusión de la forma. Es de sólo lectura.


Ejemplo de la propiedad ExtrusionColor

Este ejemplo agrega una elipse a miDocumento y, a continuación, especifica que la extrusión de la elipse tendrá una profundidad de 50 puntos y será morada.

Set miDocumento = Worksheets(1)

Set miForma = miDocumento.Shapes.AddShape(msoShapeOval, 90, 90, 90, 40)

With miForma.ThreeD

    .Visible = True

    .Depth = 50

    .ExtrusionColor.RGB = RGB(255, 100, 255)    ' Valor RGB para el color morado

End With


Propiedad ExtrusionColorType

Devuelve o establece un valor que indica si el color de la extrusión está basado en el relleno de la forma extruida (cara frontal de la extrusión) y cambia automáticamente cuando el relleno de la forma cambia o si el color de extrusión es independiente del relleno de la forma. Puede ser una de las siguientes constantes MsoExtrusionColorType: msoExtrusionColorAutomatic, color de extrusión basado en el relleno de la forma, msoExtrusionColorCustom, color de extrusión independiente del relleno de la forma, o msoExtrusionColorTypeMixed. Long de Lectura/Escritura.


Ejemplo de la propiedad ExtrusionColorType

Si la forma uno de miDocumento tiene un color de extrusión automático, este ejemplo asigna a la extrusión un color amarillo personalizado.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    If .ExtrusionColorType = msoExtrusionColorAutomatic Then

        .ExtrusionColor.RGB = RGB(240, 235, 16)

    End If

End With


Propiedad Fill

Devuelve un objeto FillFormat que contiene las propiedades del formato de relleno de la forma o gráfico especificados. Es de sólo lectura.


Ejemplo de la propiedad Fill

Este ejemplo agrega un rectángulo a miDocumento y, a continuación, establece el color de primer plano y un degradado para el relleno del rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 90, 90, 90, 50).Fill

    .ForeColor.RGB = RGB(128, 0, 0)

    .BackColor.RGB = RGB(170, 170, 170)

    .TwoColorGradient msoGradientHorizontal, 1

End With


Método Flip

Voltea la forma especificada alrededor de su eje horizontal o vertical.

Sintaxis

expresión.Flip(FlipCmd)

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.

FlipCmd   Long requerido. Especifica si la forma se volteará horizontal o verticalmente. Puede ser una de las siguientes constantes MsoFlipCmd: msoFlipHorizontal o msoFlipVertical.


Ejemplo del método Flip

Este ejemplo agrega un triángulo a miDocumento, lo duplica y, a continuación, voltea el triángulo duplicado verticalmente y cambia su color a rojo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRightTriangle, 10, 10, 50, 50).Duplicate

    .Fill.ForeColor.RGB = RGB(255, 0, 0)

    .Flip msoFlipVertical

End With


Propiedad FontBold

True si la fuente del WordArt especificado es negrita. Long de Lectura/Escritura.


Ejemplo de la propiedad FontBold

Este ejemplo establece en negrita la fuente de la forma tres de miDocumento si la forma es WordArt.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Type = msoTextEffect Then

        .TextEffect.FontBold = True

    End If

End With


Propiedad FontItalic

True si la fuente del WordArt especificado es cursiva. Long de Lectura/Escritura.


Ejemplo de la propiedad FontItalic

Este ejemplo establece en cursiva la fuente de la forma denominada "WordArt 4" de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes("WordArt 4").TextEffect.FontItalic = True


Propiedad FontName

Devuelve o establece el nombre de la fuente del WordArt especificado. String de Lectura/Escritura.


Ejemplo de la propiedad FontName

Este ejemplo establece en "Courier New" el nombre de la fuente de la forma tres de miDocumento, si la forma es WordArt.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Type = msoTextEffect Then

        .TextEffect.FontName = "Courier New"

    End If

End With


Propiedad FontSize

Devuelve o establece el tamaño de fuente, en puntos, del WordArt especificado. Single de Lectura/Escritura.


Ejemplo de la propiedad FontSize

Este ejemplo establece en 16 puntos el tamaño de fuente de la forma denominada "WordArt 4" de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes("WordArt 4").TextEffect.FontSize = 16


Propiedad Gap

Devuelve o establece la distancia horizontal, en puntos, entre el final de la línea de la llamada y el cuadro de límite del texto. Single de Lectura/Escritura.


Ejemplo de la propiedad Gap

Este ejemplo establece en 3 puntos la distancia entre la línea de la llamada y el cuadro de límite del texto de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).Callout.Gap = 3


Método Group (objeto ShapeRange)

Agrupa las formas del rango especificado. Devuelve las formas agrupadas como un único objeto Shape.

Sintaxis

expresión.Group

expresión   Requerida. Expresión que devuelve un objeto ShapeRange.

Comentarios

Debido a que un grupo de formas se trata como un único objeto, al agrupar y desagrupar las formas cambia el número de elementos del conjunto Shapes y cambian los números de índice que siguen a los elementos afectados del conjunto.


Ejemplo del método Group (objeto ShapeRange)

Este ejemplo agrega dos formas a miDocumento, las agrupa, establece el relleno del grupo, lo gira y envía el grupo al fondo de la capa de dibujo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddShape(msoShapeCan, 50, 10, 100, 200).Name = "formaUno"

    .AddShape(msoShapeCube, 150, 250, 100, 200).Name = "formaDos"

    With .Range(Array("formaUno", "formaDos")).Group

        .Fill.PresetTextured msoTextureBlueTissuePaper

        .Rotation = 45

        .ZOrder msoSendToBack

    End With

End With


Propiedad GroupItems

Devuelve un objeto GroupShapes que representa las formas individuales del grupo especificado. Utilice el método Item del objeto GroupShapes para devolver una única forma del grupo. Se aplica a objetos Shape o ShapeRange que representan formas agrupadas. Es de sólo lectura.


Ejemplo de la propiedad GroupItems

Este ejemplo agrega tres triángulos a miDocumento, los agrupa, establece un color para todo el grupo y, a continuación, cambia el color sólo del segundo triángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddShape(msoShapeIsoscelesTriangle, 10, 10, 100, 100).Name = "formaUno"

    .AddShape(msoShapeIsoscelesTriangle, 150, 10, 100, 100).Name = "formaDos"

    .AddShape(msoShapeIsoscelesTriangle, 300, 10, 100, 100).Name = "formaTres"

    With .Range(Array("formaUno", "formaDos", "formaTres")).Group

        .Fill.PresetTextured msoTextureBlueTissuePaper

        .GroupItems(2).Fill.PresetTextured msoTextureGreenMarble

    End With

End With


Propiedad HorizontalFlip

True si la forma especificada se voltea alrededor del eje horizontal. Long de sólo lectura.


Ejemplo de la propiedad HorizontalFlip

Este ejemplo restablece cada forma de miDocumento a su estado original si antes se habían volteado horizontal o verticalmente.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.HorizontalFlip Then s.Flip msoFlipHorizontal

    If s.VerticalFlip Then s.Flip msoFlipVertical

Next


Método IncrementBrightness

Cambia el brillo de la imagen en la cantidad especificada. Utilice la propiedad Brightness para establecer el brillo absoluto de la imagen.

Sintaxis

expresión.IncrementBrightness(Increment)

expresión   Requerida. Expresión que devuelve un objeto PictureFormat.

Increment   Single requerido. Especifica cuánto cambia el valor de la propiedad Brightness de la imagen. Un valor positivo aumenta el brillo de la imagen; un valor negativo hace la imagen más oscura.

Comentarios

No es posible ajustar el brillo de una imagen más allá de los límites superior e inferior de la propiedad Brightness. Por ejemplo, si la propiedad Brightness está inicialmente establecida en 0.9 y se especifica 0.3 en el argumento Increment, el nivel de brillo resultante será 1.0, que es el límite superior de la propiedad Brightness, en lugar de 1.2.


Ejemplo del método IncrementBrightness

Este ejemplo crea un duplicado de la forma uno de miDocumento y, a continuación, mueve y oscurece el duplicado. Para que el ejemplo funcione, la forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Duplicate

    .PictureFormat.IncrementBrightness -0.2

    .IncrementLeft 50

    .IncrementTop 50

End With


Método IncrementContrast

Cambia el contraste de la imagen en la cantidad especificada. Utilice la propiedad Contrast para establecer el contraste absoluto de la imagen.

Sintaxis

expresión.IncrementContrast(Increment)

expresión   Requerida. Expresión que devuelve un objeto PictureFormat.

Increment   Single requerido. Especifica cuánto cambia el valor de la propiedad Contrast de la imagen. Un valor positivo aumenta el contraste; un valor negativo lo disminuye.

Comentarios

No es posible ajustar el contraste de una imagen más allá de los límites superior e inferior de la propiedad Contrast. Por ejemplo, si la propiedad Contrast está inicialmente establecida en 0.9 y se especifica 0.3 en el argumento Increment, el nivel de contraste resultante será 1.0, que es el límite superior de la propiedad Contrast, en lugar de 1.2.


Ejemplo del método IncrementContrast

Este ejemplo aumenta el contraste de todas las imágenes de miDocumento que no tengan aún establecido el contraste máximo.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.Type = msoPicture Or s.Type = msoLinkedPicture Then

        s.PictureFormat.IncrementContrast 0.1

    End If

Next


Método IncrementLeft

Mueve la forma especificada horizontalmente el número de puntos especificado.

Sintaxis

expresión.IncrementLeft(Increment)

expresión   Requerida. Expresión que devuelve un objeto Shape.

Increment   Single requerido. Especifica cuánto se moverá la forma horizontalmente, en puntos. Un valor positivo mueve la forma a la derecha; un valor negativo la mueve a la izquierda.


Ejemplo del método IncrementLeft

Este ejemplo duplica la forma uno de miDocumento, establece el relleno del duplicado, lo mueve 70 puntos a la derecha y 50 puntos arriba, y lo gira 30 grados en el sentido de las agujas del reloj.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Duplicate

    .Fill.PresetTextured msoTextureGranite

    .IncrementLeft 70

    .IncrementTop -50

    .IncrementRotation 30

End With


Método IncrementOffsetX

Cambia el desplazamiento horizontal de la forma el número de puntos especificado. Utilice la propiedad OffsetX para establecer el desplazamiento horizontal absoluto de la sombra.

Sintaxis

expresión.IncrementOffsetX(Increment)

expresión   Requerida. Expresión que devuelve un objeto ShadowFormat.

Increment   Single requerido. Especifica cuánto se moverá el desplazamiento de la sombra horizontalmente, en puntos. Un valor positivo mueve la sombra a la derecha; un valor negativo la mueve a la izquierda.


Ejemplo del método IncrementOffsetX

Este ejemplo mueve la sombra de la forma tres de miDocumento a la izquierda en 3 puntos.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).Shadow.IncrementOffsetX -3


Método IncrementOffsetY

Cambia el desplazamiento vertical de la sombra el número de puntos especificado. Utilice la propiedad OffsetY para establecer el desplazamiento vertical absoluto de la sombra.

Sintaxis

expresión.IncrementOffsetY(Increment)

expresión   Requerida. Expresión que devuelve un objeto ShadowFormat.

Increment   Single requerido. Especifica cuánto se moverá el desplazamiento de la sombra verticalmente, en puntos. Un valor positivo mueve la sombra hacia abajo; un valor negativo la mueve hacia arriba.


Ejemplo del método IncrementOffsetY

Este ejemplo mueve la sombra de la forma tres de miDocumento 3 puntos arriba.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).Shadow.IncrementOffsetY -3


Método IncrementRotation

Cambia el giro de la forma especificada alrededor del eje Z el número de grados especificado. Utilice la propiedad Rotation para establecer el giro absoluto de la forma.

Sintaxis

expresión.IncrementRotation(Increment)

expresión   Requerida. Expresión que devuelve un objeto Shape.

Increment   Single requerido. Especifica cuánto girará la forma horizontalmente, en grados. Un valor positivo gira la forma en el sentido de las agujas del reloj; un valor negativo la gira en sentido contrario a las agujas del reloj.

Comentarios

Para girar una forma 3D alrededor del eje X o del eje Y, utilice el método IncrementRotationX o IncrementRotationY.


Ejemplo del método IncrementRotation

Este ejemplo duplica la forma uno de miDocumento, establece el relleno del duplicado, lo mueve 70 puntos a la derecha y 50 puntos arriba, y lo gira 30 grados en el sentido de las agujas del reloj.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Duplicate

    .Fill.PresetTextured msoTextureGranite

    .IncrementLeft 70

    .IncrementTop -50

    .IncrementRotation 30

End With


Método IncrementRotationX

Cambia el giro de la forma especificada alrededor del eje X el número de grados especificado. Utilice la propiedad Rotation para establecer el giro absoluto de la forma alrededor del eje X.

Sintaxis

expresión.IncrementRotationX(Increment)

expresión   Requerida. Expresión que devuelve un objeto ThreeDFormat.

Increment   Single requerido. Especifica cuánto cambiará, en grados, el giro de la forma alrededor del eje X. Puede ser un valor desde – 90 a 90. Un valor positivo inclina la forma hacia arriba; un valor negativo la inclina hacia abajo.

Comentarios

No se puede ajustar el giro de la forma especificada alrededor del eje X más allá de los límites superior e inferior de la propiedad RotationX (de 90 a  – 90 grados). Por ejemplo, si la propiedad RotationX está inicialmente establecida en 80 y se especifica 40 en el argumento Increment, el giro resultante será 90, que es el límite superior de la propiedad RotationX, en lugar de 120.

Para cambiar el giro de una forma alrededor del eje Y, utilice el método IncrementRotationY. Para cambiar el giro alrededor del eje Z, utilice el método IncrementRotation.


Ejemplo del método IncrementRotationX

Este ejemplo inclina 10 grados hacia arriba la forma uno de miDocumento. Para ver el efecto de este código, la forma uno debe ser una forma extruida.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).ThreeD.IncrementRotationX 10


Método IncrementRotationY

Cambia el giro de la forma especificada alrededor del eje Y el número de grados especificado. Utilice la propiedad RotationY para establecer el giro absoluto de la forma alrededor del eje Y.

Sintaxis

expresión.IncrementRotationY(Increment)

expresión   Requerida. Expresión que devuelve un objeto ThreeDFormat.

Increment   Single requerido. Especifica cuánto cambiará, en grados, el giro de la forma alrededor del eje Y. Puede ser un valor desde – 90 a 90. Un valor positivo inclina la forma hacia la izquierda; un valor negativo la inclina hacia la derecha.

Comentarios

Para cambiar el giro de una forma alrededor del eje X, utilice el método IncrementRotationX. Para cambiar el giro alrededor del eje Z, utilice el método IncrementRotation.

No se puede ajustar el giro de la forma especificada alrededor del eje Y más allá de los límites superior e inferior de la propiedad RotationY (de 90 a  – 90 grados). Por ejemplo, si la propiedad RotationY está inicialmente establecida en 80 y se especifica 40 en el argumento Increment, el giro resultante será 90, que es el límite superior de la propiedad RotationY, en lugar de 120.


Ejemplo del método IncrementRotationY

Este ejemplo inclina 10 grados hacia la derecha la forma uno de miDocumento. Para ver el efecto de este código, la forma uno debe ser una forma extruida.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).ThreeD.IncrementRotationY -10


Método IncrementTop

Mueve la forma especificada verticalmente el número de puntos especificado.

Sintaxis

expresión.IncrementTop(Increment)

expresión   Requerida. Expresión que devuelve un objeto Shape.

Increment   Single requerido. Especifica cuánto se moverá la forma verticalmente, en puntos. Un valor positivo mueve la forma hacia abajo; un valor negativo la mueve hacia arriba.


Ejemplo del método IncrementTop

Este ejemplo duplica la forma uno de miDocumento, establece el relleno del duplicado, lo mueve 70 puntos a la derecha y 50 puntos arriba, y lo gira 30 grados en el sentido de las agujas del reloj.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Duplicate

    .Fill.PresetTextured msoTextureGranite

    .IncrementLeft 70

    .IncrementTop -50

    .IncrementRotation 30

End With


Propiedad KernedPairs

True si el espacio entre los pares de caracteres del WordArt especificado está ajustado. Long de Lectura/Escritura.


Ejemplo de la propiedad KernedPairs

Este ejemplo activa el ajuste entre los pares de caracteres de la forma tres de miDocumento si la forma es WordArt.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Type = msoTextEffect Then

        .TextEffect.KernedPairs = True

    End If

End With


Propiedad Length

Cuando el valor de la propiedad AutoLength de la llamada especificada es False, la propiedad Length devuelve la longitud, en puntos, del primer segmento de la línea de la llamada (segmento adjunto al cuadro de texto de la llamada). Se aplica sólo a llamadas cuyas líneas consten de más de un segmento, del tipo msoCalloutThree y msoCalloutFour. Single de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método CustomLength para establecer el valor de esta propiedad del objeto CalloutFormat.


Ejemplo de la propiedad Length

Si el primer segmento de la línea de la llamada denominada "llamada1" tiene una longitud fija, este ejemplo especifica que el primer segmento de la línea de la llamada denominada "llamada2" se fije en dicha longitud. Para que el ejemplo funcione, ambas llamadas deben tener líneas con varios segmentos.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    With .Item("llamada1").Callout

        If Not .AutoLength Then long1 = .Length

    End With

    If long1 Then .Item("llamada2").Callout.CustomLength long1

End With


Propiedad Line

Devuelve un objeto LineFormat que contiene las propiedades de formato de línea de la forma especificada. (En una línea, el objeto LineFormat representa la línea en sí; en una línea con borde, el objeto LineFormat representa el borde.) Es de sólo lectura.


Ejemplo de la propiedad Line

Este ejemplo agrega una línea discontinua azul a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(10, 10, 250, 250).Line

    .DashStyle = msoLineDashDotDot

    .ForeColor.RGB = RGB(50, 0, 128)

End With

Este ejemplo agrega una cruz a miDocumento y, a continuación, establece el grosor del borde en 8 puntos y en color rojo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeCross, 10, 10, 50, 70).Line

    .Weight = 8

    .ForeColor.RGB = RGB(255, 0, 0)

End With


Propiedad LockAspectRatio

True si la forma especificada mantiene sus proporciones originales al ajustar su tamaño. False si puede cambiar el alto y el ancho de la forma independientemente de otra al ajustar su tamaño. Long de Lectura/Escritura.


Ejemplo de la propiedad LockAspectRatio

Este ejemplo agrega un cubo a miDocumento. Es posible mover y ajustar el tamaño del cubo, pero no cambiar su proporción.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddShape(msoShapeCube, 50, 50, 100, 200).LockAspectRatio = True


Propiedad MarginBottom

Devuelve o establece la distancia, en puntos, entre la parte inferior del marco de texto y la parte inferior del rectángulo inscrito de la forma que contiene el texto. Single de Lectura/Escritura.


Ejemplo de la propiedad MarginBottom

Este ejemplo agrega un rectángulo a miDocumento, agrega texto al rectángulo y, a continuación, establece los márgenes del marco del texto.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame

    .Characters.Text = "Texto de prueba"

    .MarginBottom = 0

    .MarginLeft = 100

    .MarginRight = 0

    .MarginTop = 20

End With


Propiedad MarginLeft

Devuelve o establece la distancia, en puntos, entre el lado izquierdo del marco de texto y el lado izquierdo del rectángulo inscrito de la forma que contiene el texto. Single de Lectura/Escritura.


Ejemplo de la propiedad MarginLeft

Este ejemplo agrega un rectángulo a miDocumento, agrega texto al rectángulo y, a continuación, establece los márgenes del marco del texto.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame

    .Characters.Text = "Texto de prueba"

    .MarginBottom = 0

    .MarginLeft = 100

    .MarginRight = 0

    .MarginTop = 20

End With


Propiedad MarginRight

Devuelve o establece la distancia, en puntos, entre el lado derecho del marco de texto y el lado derecho del rectángulo inscrito de la forma que contiene el texto. Single de Lectura/Escritura.


Ejemplo de la propiedad MarginRight

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame

    .Characters.Text = "Texto de prueba"

    .MarginBottom = 0

    .MarginLeft = 100

    .MarginRight = 0

    .MarginTop = 20

End With


Propiedad MarginTop

Devuelve o establece la distancia, en puntos, entre la parte superior del marco de texto y la parte superior del rectángulo inscrito de la forma que contiene el texto. Single de Lectura/Escritura.


Ejemplo de la propiedad MarginTop

Este ejemplo agrega un rectángulo a miDocumento, agrega texto al rectángulo y, a continuación, establece los márgenes del marco del texto.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame

    .Characters.Text = "Texto de prueba"

    .MarginBottom = 0

    .MarginLeft = 100

    .MarginRight = 0

    .MarginTop = 20

End With


Propiedad Nodes

Devuelve un conjunto ShapeNodes que representa la descripción geométrica de la forma especificada. Se aplica a objetos Shape o ShapeRange que representan dibujos de forma libre.


Ejemplo de la propiedad Nodes

Este ejemplo agrega un nodo suave con un segmento curvado después del nodo cuatro en miDocumento. La forma tres debe ser un dibujo de forma libre con, al menos, cuatro nodos.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    .Insert 4, msoSegmentCurve, msoEditingSmooth, 210, 100

End With


Propiedad NormalizedHeight

True si todos los caracteres del WordArt especificado, mayúsculas y minúsculas, tienen el mismo alto. Long de Lectura/Escritura.


Ejemplo de la propiedad NormalizedHeight

Este ejemplo agrega un WordArt que contiene el texto "Efecto de prueba" a miDocumento y asigna el nombre "efectexto1" al nuevo WordArt. A continuación, el código hace que todos los caracteres de la forma denominada "efectexto1" tengan el mismo alto.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.AddTextEffect(PresetTextEffect:=msoTextEffect1, _

    Text:="Efecto de prueba", FontName:="Courier New", FontSize:=44, FontBold:=True, _

    FontItalic:=False, Left:=10, Top:=10).Name = "efectexto1"

miDocumento.Shapes("efectexto1").TextEffect.NormalizedHeight = True


Propiedad Obscured

True si la sombra de la forma especificada aparece rellena y está oscurecida por la forma, aunque ésta no tenga relleno. False si la sombra no tiene relleno y su contorno es visible a través de la forma, si ésta no tiene relleno. Long de Lectura/Escritura.


Ejemplo de la propiedad Obscured

Este ejemplo establece los desplazamientos horizontal y vertical de la sombra de la forma tres de miDocumento. La sombra se desplaza 5 puntos a la derecha de la forma y 3 puntos hacia arriba. Si la forma aún no tiene una sombra, este ejemplo agrega una. La sombra se rellenará y estará oscurecida por la forma, aunque ésta no tenga relleno.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Shadow

    .Visible = True

    .OffsetX = 5

    .OffsetY = -3

    .Obscured = True

End With


Propiedad OffsetX

Devuelve o establece, en puntos, el desplazamiento horizontal de la sombra de la forma especificada. Un valor positivo desplaza la sombra a la derecha de la forma; un valor negativo la desplaza a la izquierda. Single de Lectura/Escritura.

Comentarios

Si desea empujar una sombra horizontal o verticalmente desde su posición actual sin necesidad de especificar una posición absoluta, utilice el método IncrementOffsetX o IncrementOffsetY.


Ejemplo de la propiedad OffsetX

Este ejemplo establece los desplazamientos horizontal y vertical de la sombra de la forma tres de miDocumento. La sombra se desplaza 5 puntos a la derecha de la forma y 3 puntos hacia arriba. Si la forma aún no tiene una sombra, este ejemplo agrega una.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Shadow

    .Visible = True

    .OffsetX = 5

    .OffsetY = -3

End With


Propiedad OffsetY

Devuelve o establece, en puntos, el desplazamiento vertical de la sombra de la forma especificada. Un valor positivo desplaza la sombra a la derecha de la forma; un valor negativo la desplaza a la izquierda. Single de Lectura/Escritura.

Comentarios

Si desea empujar una sombra horizontal o verticalmente desde su posición actual sin necesidad de especificar una posición absoluta, utilice el método IncrementOffsetX o IncrementOffsetY.


Ejemplo de la propiedad OffsetY

Este ejemplo establece los desplazamientos horizontal y vertical de la sombra de la forma tres de miDocumento. La sombra se desplaza 5 puntos a la derecha de la forma y 3 puntos hacia arriba. Si la forma aún no tiene una sombra, este ejemplo agrega una.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Shadow

    .Visible = True

    .OffsetX = 5

    .OffsetY = -3

End With


Método PickUp

Copia el formato de la forma especificada. Utilice el método Apply para aplicar el formato copiado a otra forma.

Sintaxis

expresión.PickUp

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.


Ejemplo del método PickUp

Este ejemplo copia el formato de la copia uno de miDocumento y, a continuación, aplica el formato copiado a la forma dos.

Set miDocumento = Worksheets(1)

With miDocumento

    .Shapes(1).PickUp

    .Shapes(2).Apply

End With


Propiedad PictureFormat

Devuelve un objeto PictureFormat que contiene las propiedades de formato de imagen de la forma especificada. Se aplica a objetos Shape o ShapeRange que representan imágenes u objetos OLE. Es de sólo lectura.


Ejemplo de la propiedad PictureFormat

Este ejemplo establece el brillo y contraste de la forma uno de miDocumento. La forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).PictureFormat

    .Brightness = 0.3

    .Contrast = .75

End With


Propiedad Points

Devuelve la posición del nodo especificado como un par de coordenadas. Cada coordenada se expresa en puntos. Variant de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método SetPosition para establecer el valor de esta propiedad.


Ejemplo de la propiedad Points

Este ejemplo mueve el nodo dos de la forma tres de miDocumento 200 puntos a la derecha y 300 puntos hacia abajo. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    matrizPuntos = .Item(2).Points

    valorXactual = matrizPuntos(1, 1)

    valorYactual = matrizPuntos(1, 2)

    .SetPosition 2, valorXactual + 200, valorYactual + 300

End With


Método PresetDrop

Especifica si la línea de la llamada se adjunta en la parte superior, inferior o en el centro del cuadro de texto de la llamada, o si se adjunta en un punto a una distancia especificada desde la parte superior o inferior del cuadro de texto.

Sintaxis

expresión.PresetDrop(DropType)

expresión   Requerida. Expresión que devuelve un objeto CalloutFormat.

DropType   Long requerido. Posición inicial de la línea de la llamada con relación al cuadro de límite del texto. Puede ser una de las siguientes constantes MsoCalloutDropType: msoCalloutDropBottom, msoCalloutDropCenter o msoCalloutDropTop. Al especificar msoCalloutDropCustom en este argumento el código fallará.


Ejemplo del método PresetDrop

Este ejemplo especifica que la línea de la llamada se adjunte a la parte superior del cuadro de límite del texto de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).Callout.PresetDrop msoCalloutDropTop

Este ejemplo cambia entre dos líneas de unión preestablecidas de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).Callout

    If .DropType = msoCalloutDropTop Then

        .PresetDrop msoCalloutDropBottom

    ElseIf .DropType = msoCalloutDropBottom Then

        .PresetDrop msoCalloutDropTop

    End If

End With


Propiedad PresetExtrusionDirection

Devuelve la dirección en que se aleja la extrusión de la forma extruida (cara frontal de la extrusión). Puede ser una de las siguientes constantes MsoPresetExtrusionDirection: msoExtrusionBottom, msoExtrusionBottomLeft, msoExtrusionBottomRight, msoExtrusionLeft, msoExtrusionNone, msoExtrusionRight, msoExtrusionTop, msoExtrusionTopLeft, msoExtrusionTopRight o msoPresetExtrusionDirectionMixed. Long de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método SetExtrusionDirection para establecer el valor de esta propiedad.


Ejemplo de la propiedad PresetExtrusionDirection

Este ejemplo cambia cada una de las extrusiones de miDocumento que se extienden hacia la esquina superior izquierda de la cara frontal de la extrusión por una que se extiende hacia la esquina inferior derecha de la cara frontal.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    With s.ThreeD

        If .PresetExtrusionDirection = msoExtrusionTopLeft Then

            .SetExtrusionDirection msoExtrusionBottomRight

        End If

    End With

Next


Propiedad PresetLightingDirection

Devuelve o establece la posición de la fuente de luz con relación a la extrusión. Puede ser una de las siguientes constantes MsoPresetLightingDirection: msoLightingBottom, msoLightingBottomLeft, msoLightingBottomRight, msoLightingLeft, msoLightingNone, msoLightingRight, msoLightingTop, msoLightingTopLeft, msoLightingTopRight o msoPresetLightingDirectionMixed. Long de Lectura/Escritura.

Note   No se verán los efectos de iluminación si la extrusión tiene una superficie de estructura metálica.


Ejemplo de la propiedad PresetLightingDirection

Este ejemplo especifica que la extrusión de la forma uno de miDocumento se extiende hacia la parte superior de la forma, y que la iluminación proviene de la derecha.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    .Visible = True

    .SetExtrusionDirection msoExtrusionTop

    .PresetLightingDirection = msoLightingLeft

End With


Propiedad PresetLightingSoftness

Devuelve o establece la intensidad de la iluminación de la extrusión. Puede ser una de las siguientes constantes MsoPresetLightingSoftness: msoLightingBright, msoLightingDim, msoLightingNormal o msoPresetLightingSoftnessMixed. Long de Lectura/Escritura.


Ejemplo de la propiedad PresetLightingSoftness

Este ejemplo especifica que la extrusión de la forma uno de miDocumento estará brillantemente iluminada desde la izquierda.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    .Visible = True

    .PresetLightingSoftness = msoLightingBright

    .PresetLightingDirection = msoLightingLeft

End With


Propiedad PresetMaterial

Devuelve o establece el material de la superficie de la extrusión. Puede ser una de las siguientes constantes MsoPresetMaterial: msoMaterialMatte, msoMaterialMetal, msoMaterialPlastic, msoMaterialWireFrame o msoPresetMaterialMixed. Long de Lectura/Escritura.


Ejemplo de la propiedad PresetMaterial

Este ejemplo especifica que la superficie de la extrusión de la forma uno de miDocumento será una estructura metálica.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    .Visible = True

    .PresetMaterial = msoMaterialWireFrame

End With


Propiedad PresetShape

Devuelve o establece la forma del WordArt especificado. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes MsoPresetTextEffectShape:

msoTextEffectShapeArchDownCurve msoTextEffectShapeArchDownPour msoTextEffectShapeArchUpCurve msoTextEffectShapeArchUpPour msoTextEffectShapeButtonCurve msoTextEffectShapeButtonPour msoTextEffectShapeCanDown msoTextEffectShapeCanUp msoTextEffectShapeCascadeDown msoTextEffectShapeCascadeUp msoTextEffectShapeChevronDown msoTextEffectShapeChevronUp msoTextEffectShapeCircleCurve msoTextEffectShapeCirclePour msoTextEffectShapeCurveDown msoTextEffectShapeCurveUp msoTextEffectShapeDeflate msoTextEffectShapeDeflateBottom msoTextEffectShapeDeflateInflate msoTextEffectShapeDeflateInflateDeflate msoTextEffectShapeDeflateTop	msoTextEffectShapeDoubleWave1 msoTextEffectShapeDoubleWave2 msoTextEffectShapeFadeDown msoTextEffectShapeFadeLeft msoTextEffectShapeFadeRight msoTextEffectShapeFadeUp msoTextEffectShapeInflate msoTextEffectShapeInflateBottom msoTextEffectShapeInflateTop msoTextEffectShapeMixed msoTextEffectShapePlainText msoTextEffectShapeRingInside msoTextEffectShapeRingOutside msoTextEffectShapeSlantDown msoTextEffectShapeSlantUp msoTextEffectShapeStop msoTextEffectShapeTriangleDown msoTextEffectShapeTriangleUp msoTextEffectShapeWave1 msoTextEffectShapeWave2
Comentarios

Al establecer la propiedad PresetTextEffect se establece automáticamente la propiedad PresetShape.


Ejemplo de la propiedad PresetShape

Este ejemplo establece que la forma de todos los WordArt de miDocumento sean un cheurón cuyo centro señala hacia abajo.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.Type = msoTextEffect Then

        s.TextEffect.PresetShape = msoTextEffectShapeChevronDown

    End If

Next


Propiedad PresetTextEffect

Devuelve o establece el estilo forma del WordArt especificado. Los valores de esta propiedad corresponden a los formatos del cuadro de diálogo Galería de WordArt, numerados de izquierda a derecha y de arriba hacia abajo. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes MsoPresetTextEffect:

msoTextEffect1 msoTextEffect2 msoTextEffect3 msoTextEffect4 msoTextEffect5 msoTextEffect6 msoTextEffect7 msoTextEffect8 msoTextEffect9 msoTextEffect10 msoTextEffect11 msoTextEffect12 msoTextEffect13 msoTextEffect14 msoTextEffect15 msoTextEffect16	msoTextEffect17 msoTextEffect18 msoTextEffect19 msoTextEffect20 msoTextEffect21 msoTextEffect22 msoTextEffect23 msoTextEffect24 msoTextEffect25 msoTextEffect26 msoTextEffect27 msoTextEffect28 msoTextEffect29 msoTextEffect30 msoTextEffectMixed
Comentarios

Al establece la propiedad PresetTextEffect automáticamente se establecen otras propiedades de formato de la forma especificada.


Ejemplo de la propiedad PresetTextEffect

Este ejemplo establece el estilo de todos los WordArt de miDocumento en el primer estilo enumerado en el cuadro de diálogo Galería de WordArt.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.Type = msoTextEffect Then

        s.TextEffect.PresetTextEffect = msoTextEffect1

    End If

Next


Propiedad PresetThreeDFormat

Devuelve el formato de extrusión preestablecido. Cada formato de extrusión preestablecido contiene un conjunto de valores preestablecidos para las diferentes propiedades de la extrusión. Si la extrusión tiene un formato personalizado en lugar de uno preestablecido, esta propiedad devuelve msoPresetThreeDFormatMixed. Puede ser una de las siguientes constantes MsoPresetThreeDFormat: msoPresetThreeDFormatMixed, msoThreeD1, msoThreeD10, msoThreeD11, msoThreeD12, msoThreeD13, msoThreeD14, msoThreeD15, msoThreeD16, msoThreeD17, msoThreeD18, msoThreeD19, msoThreeD2, msoThreeD20, msoThreeD3, msoThreeD4, msoThreeD5, msoThreeD6, msoThreeD7, msoThreeD8 o msoThreeD9. Los valores de esta propiedad corresponden a las opciones que se muestran al hacer clic en el botón 3D de la barra de herramientas Dibujo, numeradas de izquierda a derecha y de arriba hacia abajo. Long de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Para establecer el formato de extrusión, utilice el método SetThreeDFormat.


Ejemplo de la propiedad PresetThreeDFormat

Este ejemplo establece el formato de extrusión de la forma uno de miDocumento en Estilo 3D 12 si la forma inicialmente tenía un formato de extrusión personalizado.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    If .PresetThreeDFormat = msoPresetThreeDFormatMixed Then

        .SetThreeDFormat msoThreeD12

    End If

End With


Propiedad Range (conjunto Shapes)

Devuelve un objeto ShapeRange que representa un subconjunto de formas del conjunto Shapes.

Sintaxis

expresión.Range(Index)

expresión   Requerida. Expresión que devuelve un objeto Shapes.

Index   Variant requerida. Formas individuales que se incluirán en el rango. Puede ser un número entero que especifique el número de índice de la forma, una cadena que especifique el nombre de la forma o una matriz que contenga tanto números enteros como cadenas.

Comentarios

Aunque se puede utilizar la propiedad Range para devolver cualquier número de formas, es más sencillo utilizar el método Item si sólo desea devolver un único miembro del conjunto. Por ejemplo, Shapes(1) es más sencillo que Shapes.Range(1).

Para especificar una matriz de números enteros o cadenas para Index, puede utilizar la función Array. Por ejemplo, la siguiente instrucción devuelve dos formas especificadas por nombre.

Set miRango = miDocumento.Shapes.Range(Array("Elipse 4", "Rectángulo 5"))

En Microsoft Excel no puede utilizarse esta propiedad para devolver un objeto ShapeRange que contenga todos los objetos de una hoja de cálculo. En su lugar, utilice el siguiente código:

Worksheets(1).Shapes.Select	' selecciona todas las formas

set sr = Selection.ShapeRange	' crea ShapeRange


Ejemplo de la propiedad Range (conjunto Shapes)

Este ejemplo establece la trama de relleno de las formas uno y tres de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.Range(Array(1, 3)).Fill.Patterned msoPatternHorizontalBrick

Este ejemplo establece la trama de relleno de las formas denominadas "Elipse 4" y "Rectángulo 5" de miDocumento.

Set miDocumento = Worksheets(1)

Set miRango = miDocumento.Shapes.Range(Array("Elipse 4", "Rectángulo 5"))

miRango.Fill.Patterned msoPatternHorizontalBrick

Este ejemplo establece la trama de relleno de la forma uno de miDocumento.

Set miDocumento = Worksheets(1)

Set miRango = miDocumento.Shapes.Range(1)

miRango.Fill.Patterned msoPatternHorizontalBrick

Este ejemplo crea una matriz que contiene todas las Autoformas de miDocumento, utiliza dicha matriz para definir el rango de formas y, a continuación, distribuye horizontalmente todas las formas en el rango.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    númFormas = .Count

    If númFormas > 1 Then

        númAutoformas = 1

        ReDim matrizAutoformas(1 To númFormas)

        For i = 1 To númFormas

            If .Item(i).Type = msoAutoShape Then

                matrizAutoformas(númAutoformas) = .Item(i).Name

                númAutoformas = númAutoformas + 1

            End If

        Next

        If númAutoformas > 1 Then

            ReDim Preserve matrizAutoformas(1 To númAutoformas)

            Set comoRango = .Range(matrizAutoformas)

            comoRango.Distribute msoDistributeHorizontally, False

        End If

    End If

End With


Método Regroup

Agrupa de nuevo el grupo al que pertenecía anteriormente el rango de formas especificado. Devuelve las formas reagrupadas como un único objeto Shape.

Sintaxis

expresión.Regroup

expresión   Requerida. Expresión que devuelve un objeto ShapeRange.

Comentarios

El método Regroup sólo restablece el grupo de la primera forma anteriormente agrupada que encuentre en el conjunto ShapeRange. Por tanto, si el rango especificado contiene formas que anteriormente pertenecían a diferentes grupos, sólo se restablecerá uno de ellos.

Observe que, debido a que un grupo de formas se trata como un único objeto, al agrupar y desagrupar las formas cambia el número de elementos del conjunto Shapes y cambian los números de índice que siguen a los elementos afectados del conjunto.


Ejemplo del método Regroup

Este ejemplo reagrupa las formas de la selección de la ventana activa. Si las formas no habían sido previamente agrupadas y desagrupadas, este ejemplo fallará.

ActiveWindow.Selection.ShapeRange.Regroup


Método RerouteConnections

Cambia la ruta de los conectores para que tomen el camino más corto posible entre las formas que conectan. Para ello, el método RerouteConnections puede separar los finales de un conector y adjuntarlos de nuevo a sitios de conexión diferentes de las formas conectadas.

Este método cambia la ruta de todos los conectores adjuntados a la forma especificada; si la forma especificada es un conector, se cambia la ruta.

Sintaxis

expresión.RerouteConnections

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.

Comentarios

Si este método se aplica a un conector, sólo se cambiará la ruta de dicho conector. Si este método se aplica a una forma conectada, se cambiarán las rutas de todos los conectores que vayan a dicha forma.


Ejemplo del método RerouteConnections

Este ejemplo agrega dos rectángulos a miDocumento, los adjunta a un conector curvado y, a continuación, cambia la ruta del conector para que tome el camino más corto posible entre los dos rectángulos. Observe que el método RerouteConnections ajusta el tamaño y posición del conector, y determina a qué sitios de conexión se adjunta; por tanto, los valores especificados inicialmente en los argumentos ConnectionSite utilizados con los métodos BeginConnect y EndConnect son irrelevantes.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Set nuevoConector = s.AddConnector(msoConnectorCurve, 0, 0, 100, 100)

With nuevoConector.ConnectorFormat

    .BeginConnect primerRect, 1

    .EndConnect segundoRect, 1

End With

nuevoConector.RerouteConnections


Método ResetRotation

Restablece a 0 (cero) el giro de la extrusión alrededor del eje X y del eje Y, de forma que el frente de la extrusión mire hacia delante. Este método no establece el giro alrededor del eje Z.

Sintaxis

expresión.ResetRotation

expresión   Requerida. Expresión que devuelve un objeto ThreeDFormat.

Comentarios

Para establecer el giro de la extrusión alrededor del eje X y del eje Y en un valor diferente de 0 (cero), utilice las propiedades RotationX y RotationY del objeto ThreeDFormat. Para restablecer el giro de la extrusión alrededor del eje Z, utilice la propiedad Rotation del objeto Shape que representa la forma extruida.


Ejemplo del método ResetRotation

Este ejemplo restablece a 0 (cero) el giro alrededor del eje X y del eje Y de la extrusión de la forma uno de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).ThreeD.ResetRotation


Propiedad RotatedChars

True si los caracteres del WordArt especificado giran 90 grados con relación a la forma de límite del WordArt. True si los caracteres del WordArt especificado mantiene la orientación original con relación a la forma de límite. Long de Lectura/Escritura.

Comentarios

Si el WordArt contiene texto horizontal, al establecer la propiedad RotatedChars en True los caracteres giran 90 grados en sentido contrario a las agujas del reloj. Si el WordArt contiene texto vertical, al establecer la propiedad RotatedChars en False los caracteres giran 90 grados en el sentido de las agujas del reloj. Utilice el método ToggleVerticalText para cambiar entre flujo de texto vertical y horizontal.

El método Flip y la propiedad Rotation del objeto Shape, y la propiedad RotatedChars y el método ToggleVerticalText del objeto TextEffectFormat afectan a la orientación y dirección del flujo de texto de un objeto Shape que representa un WordArt. Puede experimentar para descubrir cómo combinar los efectos de estas propiedades y métodos para obtener los resultados que desea.


Ejemplo de la propiedad RotatedChars

Este ejemplo agrega un WordArt que contiene el texto "Prueba" a miDocumento y gira los caracteres 90 grados en sentido contrario a las agujas del reloj.

Set miDocumento = Worksheets(1)

Set nuevoWordArt = miDocumento.Shapes.AddTextEffect(PresetTextEffect:=msoTextEffect1, Text:="Prueba", _

    FontName:="Arial Black", FontSize:=36, FontBold:=False, FontItalic:=False, Left:=10, Top:=10)

nuevoWordArt.TextEffect.RotatedChars = True


Propiedad RotationX

Devuelve o establece el giro de la forma extruida, en grados, alrededor del eje X. Puede ser un valor desde – 90 a 90. Un valor positivo indica un giro hacia arriba; un valor negativo indica un giro hacia abajo. Single de Lectura/Escritura.

Comentarios

Para restablecer el giro de la forma extruida alrededor del eje Y, utilice la propiedad RotationY del objeto ThreeDFormat. Para restablecer el giro de la forma extruida alrededor del eje Z, utilice la propiedad Rotation del objeto Shape. Para cambiar la dirección de la extrusión sin girar la cara frontal, utilice el método SetExtrusionDirection.


Ejemplo de la propiedad RotationX

Este ejemplo agrega tres elipses extruidas idénticas a miDocumento y establece su giro alrededor del eje X en – 30, 0 y 30 grados, respectivamente.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    With .AddShape(msoShapeOval, 30, 60, 50, 25).ThreeD

        .Visible = True

        .RotationX = -30

    End With

    With .AddShape(msoShapeOval, 90, 60, 50, 25).ThreeD

        .Visible = True

        .RotationX = 0

    End With

    With .AddShape(msoShapeOval, 150, 60, 50, 25).ThreeD

        .Visible = True

        .RotationX = 30

    End With

End With


Propiedad RotationY

Devuelve o establece el giro de la forma extruida, en grados, alrededor del eje Y. Puede ser un valor desde – 90 a 90. Un valor positivo indica un giro hacia la izquierda; un valor negativo indica un giro hacia la derecha. Single de Lectura/Escritura.

Comentarios

Para establecer el giro de la forma extruida alrededor del eje X, utilice la propiedad RotationX del objeto ThreeDFormat. Para establecer el giro de la forma extruida alrededor del eje Z, utilice la propiedad Rotation del objeto Shape. Para cambiar la dirección de la extrusión sin girar la cara frontal, utilice el método SetExtrusionDirection.


Ejemplo de la propiedad RotationY

Este ejemplo agrega tres elipses extruidas idénticas a miDocumento y establece su giro alrededor del eje Y en – 30, 0 y 30 grados, respectivamente.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    With .AddShape(msoShapeOval, 30, 30, 50, 25).ThreeD

        .Visible = True

        .RotationY = -30

    End With

    With .AddShape(msoShapeOval, 30, 70, 50, 25).ThreeD

        .Visible = True

        .RotationY = 0

    End With

    With .AddShape(msoShapeOval, 30, 110, 50, 25).ThreeD

        .Visible = True

        .RotationY = 30

    End With

End With


Método ScaleHeight

Cambia el alto de la forma en un factor especificado. Para imágenes y objetos OLE, puede indicar si desea cambiar el tamaño de la forma con relación al tamaño original o con relación al tamaño actual. El tamaño de las diferentes formas de imágenes y objetos OLE siempre se cambia con relación al alto actual.

Sintaxis

expresión.ScaleHeight(Factor, RelativeToOriginalSize, fScale)

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.

Factor   Single requerido. Especifica la relación entre el alto de la forma después de cambiarlo y el alto actual u original. Por ejemplo, para que un rectángulo sea un 50% más grande, especifique 1.5 en este argumento.

RelativeToOriginalSize   Long requerido. True para cambiar el tamaño de la forma con relación a su tamaño original. False para cambiarlo con relación a su tamaño actual. Puede especificar True en este argumento sólo si la forma especificada es una imagen u objeto OLE.

fScale   Long opcional. Especifica qué parte de la forma mantiene su posición cuando se cambia el tamaño. Puede ser una de las siguientes constantes MsoScaleFrom: msoScaleFromBottomRight, msoScaleFromMiddle o msoScaleFromTopLeft. El valor predeterminado es msoScaleFromTopLeft.


Ejemplo del método ScaleHeight

Este ejemplo cambia el tamaño de todas las imágenes y objetos OLE de miDocumento a un 175% de su alto y ancho original, y cambia todas las demás formas a un 175% del alto y ancho actual.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    Select Case s.Type

    Case msoEmbeddedOLEObject, msoLinkedOLEObject, msoOLEControlObject, _

            msoLinkedPicture, msoPicture

        s.ScaleHeight 1.75, True

        s.ScaleWidth 1.75, True

    Case Else

        s.ScaleHeight 1.75, False

        s.ScaleWidth 1.75, False

    End Select

Next


Método ScaleWidth

Cambia el ancho de la forma en un factor especificado. Para imágenes y objetos OLE, puede indicar si desea cambiar el tamaño de la forma con relación al tamaño original o con relación al tamaño actual. El tamaño de las diferentes formas de imágenes y objetos OLE siempre se cambia con relación al ancho actual.

Sintaxis

expresión.ScaleWidth(Factor, RelativeToOriginalSize, fScale)

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.

Factor   Single requerido. Especifica la relación entre el ancho de la forma después de cambiarlo y el ancho actual u original. Por ejemplo, para que un rectángulo sea un 50% más grande, especifique 1.5 en este argumento.

RelativeToOriginalSize   Long requerido. True para cambiar el tamaño de la forma con relación a su tamaño original. False para cambiarlo con relación a su tamaño actual. Puede especificar True en este argumento sólo si la forma especificada es una imagen u objeto OLE.

fScale   Long opcional. Especifica qué parte de la forma mantiene su posición cuando se cambia el tamaño. Puede ser una de las siguientes constantes MsoScaleFrom: msoScaleFromBottomRight, msoScaleFromMiddle o msoScaleFromTopLeft. El valor predeterminado es msoScaleFromTopLeft.


Ejemplo del método ScaleWidth

Este ejemplo cambia el tamaño de todas las imágenes y objetos OLE de miDocumento a un 175% de su alto y ancho original, y cambia todas las demás formas a un 175% del alto y ancho actual.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    Select Case s.Type

    Case msoEmbeddedOLEObject, msoLinkedOLEObject, msoOLEControlObject, _

            msoLinkedPicture, msoPicture

        s.ScaleHeight 1.75, True

        s.ScaleWidth 1.75, True

    Case Else

        s.ScaleHeight 1.75, False

        s.ScaleWidth 1.75, False

    End Select

Next


Propiedad SegmentType

Devuelve un valor que indica si el segmento asociado al nodo especificado es recto o curvado. Puede ser una de las siguientes constantes MsoSegmentType: msoSegmentCurve o msoSegmentLine. Si el nodo especificado es un punto de control de un segmento curvado, esta propiedad devuelve msoSegmentCurve. Long de sólo lectura.

Comentarios

Esta propiedad es de sólo lectura. Utilice el método SetSegmentType para establecer el valor de esta propiedad.


Ejemplo de la propiedad SegmentType

Este ejemplo cambia todos los nodos rectos por nodos curvados en la forma tres de miDocumento. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    n = 1

    While n <= .Count

        If .Item(n).SegmentType = msoSegmentLine Then

            .SetSegmentType n, msoSegmentCurve

        End If

        n = n + 1

    Wend

End With


Método SelectAll

Selecciona todas las formas del conjunto Shapes especificado.

Sintaxis

expresión.SelectAll

expresión   Requerida. Expresión que devuelve un objeto Shapes.


Ejemplo del método SelectAll

Este ejemplo selecciona todas las formas de miDocumento y crea un objeto ShapeRange que contiene todas las formas.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.SelectAll

Set sr = Selection.ShapeRange


Método SetEditingType

Establece el tipo de edición del nodo especificado por Index. Si el nodo es un punto de control de un segmento curvado, este método establece el tipo de edición del nodo adyacente que une los dos segmentos. Observe que, dependiendo del tipo de edición, este método puede afectar a la posición de los nodos adyacentes.

Sintaxis

expresión.SetEditingType(Index, EditingType)

expresión   Requerida. Expresión que devuelve un objeto ShapeNodes.

Index   Long requerido. Nodo cuyo tipo de edición se va a establecer.

EditingType   Long requerido. Propiedad de edición del vértice. Puede ser una de las siguientes constantes MsoEditingType: msoEditingAuto, msoEditingCorner, msoEditingSmooth o msoEditingSymmetric.


Ejemplo del método SetEditingType

Este ejemplo cambia todos los nodos de esquina por nodos suaves en la forma tres de miDocumento. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    For n = 1 to .Count

        If .Item(n).EditingType = msoEditingCorner Then

            .SetEditingType n, msoEditingSmooth

        End If

    Next

End With


Método SetExtrusionDirection

Establece la dirección en que se aleja la extrusión de la forma extruida.

Sintaxis

expresión.SetExtrusionDirection(PresetExtrusionDirection)

expresión   Requerida. Expresión que devuelve un objeto ThreeDFormat.

PresetExtrusionDirection   Long requerido. Especifica la dirección de extrusión. Puede ser una de las siguientes constantes MsoPresetExtrusionDirection: msoExtrusionBottom, msoExtrusionBottomLeft, msoExtrusionBottomRight, msoExtrusionLeft, msoExtrusionNone, msoExtrusionRight, msoExtrusionTop, msoExtrusionTopLeft o msoExtrusionTopRight.

Comentarios

Este método establece la propiedad PresetExtrusionDirection en la dirección especificada por el argumento PresetExtrusionDirection.


Ejemplo del método SetExtrusionDirection

Este ejemplo especifica que la extrusión de la forma uno de miDocumento se extiende hacia la parte superior de la forma, y que la iluminación proviene de la derecha.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    .Visible = True

    .SetExtrusionDirection msoExtrusionTop

    .PresetLightingDirection = msoLightingLeft

End With


Método SetPosition

Establece la ubicación del nodo especificado por Index. Observe que, dependiendo del tipo de edición del nodo, este método puede afectar a la posición de los nodos adyacentes.

Sintaxis

expresión.SetPosition(Index, X1, Y1)

expresión   Requerida. Expresión que devuelve un objeto ShapeNodes.

Index   Long requerido. Nodo cuya posición se va a establecer.

X1, Y1   Single requerido. Posición, en puntos, del nuevo nodo con relación a la esquina superior izquierda del documento.


Ejemplo del método SetPosition

Este ejemplo mueve el nodo dos de la forma tres de miDocumento 200 puntos a la derecha y 300 puntos hacia abajo. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    matrizPuntos = .Item(2).Points

    valorXactual = matrizPuntos(0, 0)

    valorYactual = matrizPuntos(0, 1)

    .SetPosition 2, valorXactual + 200, valorYactual + 300

End With


Método SetSegmentType

Establece el tipo del segmento que sigue al nodo especificado por Index. Si el nodo es un punto de control de un segmento curvado, este método establece el tipo de segmento de dicha curva. Observe que esto puede afectar al número total de nodos al insertar o eliminar nodos adyacentes.

Sintaxis

expresión.SetSegmentType(Index, SegmentType)

expresión   Requerida. Expresión que devuelve un objeto ShapeNodes.

Index   Long requerido. Nodo cuyo tipo de segmento se va a establecer.

SegmentType   Long requerido. Especifica si el segmento es recto o curvado. Puede ser una de las siguientes constantes MsoSegmentType: msoSegmentCurve o msoSegmentLine.


Ejemplo del método SetSegmentType

Este ejemplo cambia todos los nodos rectos por nodos curvados en la forma tres de miDocumento. La forma tres debe ser un dibujo de forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    n = 1

    While n <= .Count

        If .Item(n).SegmentType = msoSegmentLine Then

            .SetSegmentType n, msoSegmentCurve

        End If

        n = n + 1

    Wend

End With


Método SetShapesDefaultProperties

Aplica el formato de la forma especificada a la forma predeterminada. Las formas que se creen después de utilizar este método tendrán este formato predeterminado.

Sintaxis

expresión.SetShapesDefaultProperties

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.


Ejemplo del método SetShapesDefaultProperties

Este ejemplo agrega un rectángulo a miDocumento, da formato al relleno del rectángulo, aplica su formato a la forma predeterminada y, a continuación, agrega otro rectángulo más pequeño al documento. El segundo rectángulo tendrá el mismo relleno que el primero.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    With .AddShape(msoShapeRectangle, 5, 5, 80, 60)

        With .Fill

            .ForeColor.RGB = RGB(0, 0, 255)

            .BackColor.RGB = RGB(0, 204, 255)

            .Patterned msoPatternHorizontalBrick

        End With

        .SetShapesDefaultProperties     ' Establece el formato de las formas predeterminadas

    End With

    .AddShape msoShapeRectangle, 90, 90, 40, 30  ' La nueva forma tiene el formato predeterminado

End With


Método SetThreeDFormat

Establece el formato de extrusión preestablecido. Cada formato de extrusión preestablecido contiene un conjunto de valores preestablecidos para las diferentes propiedades de la extrusión.

Sintaxis

expresión.SetThreeDFormat(PresetThreeDFormat)

expresión   Requerida. Expresión que devuelve un objeto ThreeDFormat.

PresetThreeDFormat   Long requerido. Especifica una extrusión preestablecida que corresponde a una de las opciones que se muestran al hacer clic en el botón 3D de la barra de herramientas Dibujo, numeradas de izquierda a derecha y de arriba hacia abajo. Puede ser una de las siguientes constantes MsoPresetThreeDFormat: msoThreeD1, msoThreeD10, msoThreeD11, msoThreeD12, msoThreeD13, msoThreeD14, msoThreeD15, msoThreeD16, msoThreeD17, msoThreeD18, msoThreeD19, msoThreeD2, msoThreeD20, msoThreeD3, msoThreeD4, msoThreeD5, msoThreeD6, msoThreeD7, msoThreeD8 o msoThreeD9. Observe que al especificar msoPresetThreeDFormatMixed en este argumento se produce un error.

Comentarios

Este método establece la propiedad PresetThreeDFormat en el formato especificado por el argumento PresetThreeDFormat.


Ejemplo del método SetThreeDFormat

Este ejemplo agrega una elipse a miDocumento y establece su formato de extrusión en Estilo 3D 12.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeOval, 30, 30, 50, 25).ThreeD

    .Visible = True

    .SetThreeDFormat msoThreeD12

End With


Método Solid

Establece el relleno especificado en un color degradado uniforme. Utilice este método para convertir un relleno degradado, de entramado o de plano de fondo en un relleno opaco.

Sintaxis

expresión.Solid

expresión   Requerida. Expresión que devuelve un objeto FillFormat.


Ejemplo del método Solid

Este ejemplo convierte todos los rellenos de miDocumento en rellenos rojos uniformes.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    With s.Fill

        .Solid

        .ForeColor.RGB = RGB(255, 0, 0)

    End With

Next


Propiedad TextEffect

Devuelve un objeto TextEffectFormat que contiene las propiedades de formato de efecto de texto de la forma especificada. Se aplica a objetos Shape o ShapeRange que representen un WordArt. Es de sólo lectura.


Ejemplo de la propiedad TextEffect

Este ejemplo establece en negrita la fuente de la forma tres de miDocumento si la forma es un WordArt.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Type = msoTextEffect Then

        .TextEffect.FontBold = True

    End If

End With


Propiedad ThreeD

Devuelve un objeto ThreeDFormat que contiene las propiedades de formato de efecto 3D de la forma especificada. Es de sólo lectura.


Ejemplo de la propiedad ThreeD

Este ejemplo establece la profundidad, el color y dirección de la extrusión y la dirección de la iluminación de los efectos 3D aplicados a la forma uno de miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).ThreeD

    .Visible = True

    .Depth = 50

    .ExtrusionColor.RGB = RGB(255, 100, 255)    ' Valor RGB para el color morado

    .SetExtrusionDirection msoExtrusionTop

    .PresetLightingDirection = msoLightingLeft

End With


Método ToggleVerticalText

Cambia el flujo de texto del WordArt especificado de horizontal a vertical, o viceversa.

Sintaxis

expresión.ToggleVerticalText

expresión   Requerida. Expresión que devuelve un objeto TextEffectFormat.

Comentarios

Al utilizar el método ToggleVerticalText se cambia entre los valores de las propiedades Width y Height del objeto Shape que representa el WordArt y mantiene sin cambios las propiedades Left y Top.

El método Flip y la propiedad Rotation del objeto Shape, y la propiedad RotatedChars y el método ToggleVerticalText del objeto TextEffectFormat afectan a la orientación y dirección de los caracteres del flujo de texto de un objeto Shape que representa un WordArt. Puede experimentar para descubrir cómo combinar los efectos de estas propiedades y métodos y obtener los resultados que desea.


Ejemplo del método ToggleVerticalText

Este ejemplo agrega un WordArt que contiene el texto "Prueba" a miDocumento y cambia entre flujo de texto horizontal, predeterminado para el estilo de WordArt msoTextEffect1, y flujo de texto vertical.

Set miDocumento = Worksheets(1)

Set nuevoWordArt = miDocumento.Shapes.AddTextEffect(PresetTextEffect:=msoTextEffect1, Text:="Prueba", _

    FontName:="Arial Black", FontSize:=36, FontBold:=False, FontItalic:=False, Left:=100, Top:=100)

nuevoWordArt.TextEffect.ToggleVerticalText


Propiedad Tracking

Devuelve o establece la relación entre el espacio horizontal asignado a cada carácter del WordArt especificado y el ancho del carácter. Puede ser un valor desde 0 (cero) hasta 5. Valores mayores para esta propiedad especifican un espacio más amplio entre caracteres; valores menores de 1 producen la superposición de los caracteres. Single de Lectura/Escritura.

La siguiente tabla asigna los valores de la propiedad Tracking que corresponden a los valores disponibles en el interfaz del usuario.

Valor del interfaz del usuario	Valor de la propiedad Tracking equivalente
Muy ajustado	0.8
Ajustado	0.9
Normal	1.0
Disperso	1.2
Muy disperso	1.5


Ejemplo de la propiedad Tracking

Este ejemplo agrega un WordArt que contiene el texto "Prueba" a miDocumento y especifica que el espaciado de los caracteres sea muy ajustado.

Set miDocumento = Worksheets(1)

Set nuevoWordArt = miDocumento.Shapes.AddTextEffect(PresetTextEffect:=msoTextEffect1, Text:="Prueba", _

    FontName:="Arial Black", FontSize:=36, FontBold:=False, FontItalic:=False, Left:=100, Top:=100)

nuevoWordArt.TextEffect.Tracking =0.8


Propiedad TransparencyColor

Devuelve o establece el color transparente de la imagen especificada como un valor rojo, verde y azul (RGB). Para que esta propiedad tenga efecto, la propiedad TransparentBackground debe establecerse en True. Se aplica sólo a mapas de bits. Long de Lectura/Escritura.

Comentarios

Si desea poder ver a través de las partes transparentes de la imagen todos los objetos ubicados detrás de ella, debe establecer en False la propiedad Visible del objeto FillFormat de la imagen. Si la imagen tiene un color transparente y el valor de la propiedad Visible del objeto FillFormat de la imagen es True, el relleno de la imagen será visible a través del color transparente, pero los objetos ubicados detrás se oscurecerán.


Ejemplo de la propiedad TransparencyColor

Este ejemplo establece el color que tiene el valor RGB devuelto por la función RGB(0, 0, 255) como el color transparente de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser un mapa de bits.

pantallaAzul = RGB(0, 0, 255)

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1)

    With .PictureFormat

        .TransparentBackground = True

        .TransparencyColor = pantallaAzul

    End With

    .Fill.Visible = False

End With


Propiedad TransparentBackground

True si las partes de la imagen que tienen un color definido como transparente aparecen transparentes. Utilice la propiedad TransparencyColor para establecer el color transparente. Se aplica sólo a mapas de bits. Long de Lectura/Escritura.

Comentarios

Si desea poder ver a través de las partes transparentes de la imagen todos los objetos ubicados detrás de ella, debe establecer en False la propiedad Visible del objeto FillFormat de la imagen. Si la imagen tiene un color transparente y el valor de la propiedad Visible del objeto FillFormat de la imagen es True, el relleno de la imagen será visible a través del color transparente, pero los objetos ubicados detrás se oscurecerán.


Ejemplo de la propiedad TransparentBackground

Este ejemplo establece el color que tiene el valor RGB devuelto por la función RGB(24, 0, 240) como el color transparente de la forma uno de miDocumento. Para que el ejemplo funcione, la forma uno debe ser un mapa de bits.

pantallaAzul = RGB(0, 0, 255)

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1)

    With .PictureFormat

        .TransparentBackground = True

        .TransparencyColor = pantallaAzul

    End With

    .Fill.Visible = False

End With


Método Ungroup (objeto Shape o ShapeRange)

Desagrupa todas las formas agrupadas de la forma o rango especificados. Separa las imágenes y objetos OLE de la forma o rango especificados. Devuelve las formas desagrupadas como un único objeto ShapeRange.

Sintaxis

expresión.Ungroup

expresión   Requerida. Expresión que devuelve un objeto ShapeRange.

Comentarios

Debido a que un grupo de formas se trata como un único objeto, al agrupar y desagrupar las formas cambia el número de elementos del conjunto Shapes y cambian los números de índice que siguen a los elementos afectados del conjunto.


Ejemplo del método Ungroup (objeto Shape o ShapeRange)

Este ejemplo desagrupa todas las formas agrupadas y separa todas las imágenes u objetos OLE de miDocumento.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    s.Ungroup

Next

Este ejemplo desagrupa todas las formas agrupadas de miDocumento sin separar las imágenes u objetos OLE del documento.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.Type = msoGroup Then s.Ungroup

Next


Propiedad VerticalFlip

True si la forma especificada se voltea alrededor del eje vertical. Long de sólo lectura.


Ejemplo de la propiedad VerticalFlip

Este ejemplo restablece cada forma de miDocumento a su estado original si antes se habían volteado horizontal o verticalmente.

Set miDocumento = Worksheets(1)

For Each s In miDocumento.Shapes

    If s.HorizontalFlip Then s.Flip msoFlipHorizontal

    If s.VerticalFlip Then s.Flip msoFlipVertical

Next


Propiedad Vertices

Devuelve las coordenadas de los vértices del dibujo de forma libre especificado, y los puntos de control de las curvas Bézier, como una serie de pares de coordenadas. Puede utilizar la matriz devuelta por esta propiedad como argumento del método AddCurve o AddPolyLine. Variant de sólo lectura.

La siguiente tabla muestra cómo la propiedad Vertices asocia los valores de la matriz matrizVert() con las coordenadas de los vértices de un triángulo.

elemento matrizVert	Contiene
matrizVert(1, 1)	Distancia horizontal desde el primer vértice hasta el lado izquierdo del documento
matrizVert(1, 2)	Distancia vertical desde el primer vértice hasta la parte superior del documento
matrizVert(2, 1)	Distancia horizontal desde el segundo vértice hasta el lado izquierdo del documento
matrizVert(2, 2)	Distancia vertical desde el segundo vértice hasta la parte superior del documento
matrizVert(3, 1)	Distancia horizontal desde el tercer vértice hasta el lado izquierdo del documento
matrizVert(3, 2)	Distancia vertical desde el tercer vértice hasta la parte superior del documento


Ejemplo de la propiedad Vertices

Este ejemplo asigna las coordenadas de los vértices de la forma uno de miDocumento a la variable de matriz matrizVert() y muestra las coordenadas del primer vértice.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1)

    matrizVert = .Vertices

    x1 = matrizVert(1, 1)

    y1 = matrizVert(1, 2)

    MsgBox "Coordenadas del primer vértice: " & x1 & ", " & y1

End With

Este ejemplo crea una curva que tiene la misma descripción geométrica que la forma uno de miDocumento. La forma uno debe contener 3n+1 vértices para que funcione este ejemplo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddCurve .Item(1).Vertices

End With


Método ZOrder

Mueve la forma especificada detrás o frente a otras formas del conjunto, es decir, cambia la posición de la forma en el plano Z.

Sintaxis

expresión.ZOrder(ZOrderCmd)

expresión   Requerida. Expresión que devuelve un objeto Shape o ShapeRange.

ZOrderCmd   Long requerido. Especifica dónde se moverá la forma especificada con relación a las otras formas. Puede ser una de las siguientes constantes MsoZOrderCmd: msoBringForward, msoBringToFront, msoSendBackward o msoSendToBack. Las constantes msoBringInFrontOfText y msoSendBehindText se utilizan sólo en Microsoft Word.

Comentarios

Utilice la propiedad ZOrderPosition para determinar la posición actual de una forma en el plano Z.


Ejemplo del método ZOrder

Este ejemplo agrega una elipse a miDocumento y, a continuación, la sitúa en segundo lugar desde la parte posterior del plano Z si existe, al menos, otra forma en el documento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeOval, 100, 100, 100, 300)

    While .ZOrderPosition > 2

        .ZOrder msoSendBackward

    Wend

End With


Propiedad ZOrderPosition

Devuelve la posición de la forma especificada en el plano Z. Long de sólo lectura.

Esta propiedad es de sólo lectura. Para establecer la posición de la forma en el plano Z, utilice el método ZOrder.

Comentarios

La posición de una forma en el plano Z corresponde al número de índice de la forma en el conjunto Shapes. Por ejemplo, si hay cuatro formas en miDocumento, la expresión miDocumento.Shapes(1) devuelve la forma a la parte posterior del plano Z, y la expresión miDocumento.Shapes(4) devuelve la forma al frente del plano Z.

Siempre que se agrega una nueva forma a un conjunto, de forma predeterminada se agrega al frente del plano Z.


Ejemplo de la propiedad ZOrderPosition

Este ejemplo agrega una elipse a miDocumento y, a continuación, la sitúa en segundo lugar desde la parte posterior del plano Z si existe, al menos, otra forma en el documento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeOval, 100, 100, 100, 300)

    While .ZOrderPosition > 2

        .ZOrder msoSendBackward

    Wend

End With


Método Item (conjunto GroupShapes)

Devuelve un único objeto Shape de un conjunto GroupShapes.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Expresión que devuelve un objeto GroupShapes.

Index   Variant requerida. Nombre o número de índice de la forma.


Método Item (conjunto ShapeNodes)

Devuelve un único objeto ShapeNode de un conjunto ShapeNodes.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Expresión que devuelve un objeto ShapeNodes.

Index   Variant requerida. Número de índice del nodo de la forma.


Propiedad Item (objeto Adjustments)

Devuelve o establece el valor de ajuste especificado por el argumento Index. En el caso de los ajustes lineales, un valor de ajuste de 0.0 corresponde, por lo general, al límite izquierdo o superior de la forma, y un valor de 1.0, al límite derecho o inferior de la forma. Sin embargo, los ajustes pueden pasar de los límites de la forma en algunos casos. En el caso de los ajustes radiales, un valor de ajuste de 1.0 corresponde al ancho de la forma. En el caso de ajustes angulares, el valor de ajuste se especifica en grados. La propiedad Item se aplica sólo a las formas que tienen ajustes Single de Lectura/Escritura.

Sintaxis

expresión.Item(Index)

expresión   Requerida. Expresión que devuelve un objeto Adjustments.

Index   Long requerida.El número de índice de la forma.

Comentarios

Los objetos AutoShapes, los conectores y WordArt pueden tener hasta ocho ajustes.


pares de coordenadas

Par de valores que representan las coordenadas X e Y de un punto que está almacenado en una matriz bidimensional que puede contener coordenadas de muchos puntos.

El siguiente ejemplo crea una matriz basada en uno, que contiene los pares de coordenadas 50, 150, 100, 200 y 150, 250. Observe que, al dimensionar la matriz, el tamaño de la primera dimensión es el número de puntos que desea incluir, y el tamaño de la segunda dimensión es dos; la primera posición de la dimensión es para la coordenada X y la segunda para la coordenada Y.

Dim matrizPC(1 to 3, 1 to 2)

matrizPC(1, 1) = 50	' Coordenada X del primer punto

matrizPC(1, 2) = 150	' Coordenada Y del primer punto

matrizPC(2, 1) = 100	' Coordenada X del segundo punto

matrizPC(2, 2) = 200	' Coordenada Y del segundo punto

matrizPC(3, 1) = 150	' Coordenada X del tercer punto

matrizPC(3, 2) = 250	' Coordenada Y del tercer punto


ejes X, Y y Z

Tres líneas perpendiculares entre sí que se utilizan para ubicar un punto en un sistema de coordenadas cartesianas. Observe que, en la capa de dibujo de Microsoft Office, el eje X cruza horizontalmente el documento y el eje Y verticalmente; el eje Z cruza perpendicular al plano del documento.


valor RGB

Valor devuelto por la función RGB; especifica un color como combinación de valores de rojo, verde y azul. La función RGB tiene la siguiente sintaxis:

RGB(red, green, blue)

Los argumentos especifican los componentes rojo, verde y azul del color como números enteros de 0 a 255.


forma predeterminada

Forma invisible que contiene las propiedades iniciales de las nuevas formas creadas.


Método Add (conjunto QueryTables)

Crea una tabla de consulta nueva. Devuelve un objeto QueryTable que representa la nueva tabla de consulta.

Sintaxis

expresión.Add(Connection, Destination, Sql)

expresión   Requerida. Una expresión que devuelve un objeto QueryTables.

Connection   Variant requerido. La fuente de datos de la tabla de consulta. Puede ser uno de los siguientes:

•	Una cadena que contiene una cadena de conexión ODBC.

•	Un objeto QueryTable del cual se copia inicialmente la información de la consulta, incluidos la cadena de conexión y el texto SQL, pero sin incluir el rango Destination. Si se especifica un objeto QueryTable se pasará por alto el argumento Sql.

•	Un objeto RecordSet DAO. Los datos se leen del conjunto de registros DAO. Microsoft Excel conservará el conjunto de registros DAO hasta que se elimine la tabla de consulta o hasta que se cambie la conexión. No se puede cambiar la tabla de consulta resultante.

•	Una consulta de Web. Una cadena en la forma “URL;<url>“, donde se requiere “URL;” pero no está ubicado y el resto de la cadena se utiliza para la URL de la consulta de Web.

•	Búsqueda de datos. Una cadena en la forma “FINDER;<ruta de acceso del archivo de búsqueda de datos>” donde se requiere “FINDER” pero no está ubicado. El resto de la cadena es la ruta de acceso y el nombre de un archivo de Búsqueda de datos (*.dqy o *.iqy). El archivo se lee al ejecutar el método Add; las llamadas posteriores a la propiedad Connection de la tabla de consulta devuelven cadenas que empiezan por “ODBC;” o “URL;”, según corresponda.

Destination   Range requerido. La celda de la esquina superior izquierda del rango de destino de la tabla de consulta (el rango en el que se situará la tabla de consulta). El rango de destino debe estar en la hoja de cálculo que contenga el objeto QueryTables especificado por expresión.

Sql   Variant opcional. La cadena de consulta SQL que se ejecutará en la fuente de datos de ODBC. Este argumento es opcional cuando se utiliza una fuente de datos ODBC (de no especificarse aquí, deberá establecerse utilizando la propiedad Sql de la tabla de consulta, antes de que ésta se actualice). Este argumento no puede utilizarse cuando se especifica como fuente de datos un objeto QueryTable o Recordset DAO.

Comentarios

Una consulta creada por este método no se ejecutará hasta que se llame al método Refresh.


Ejemplo del método Add (conjunto QueryTables)

Este ejemplo crea una nueva tabla de consulta.

cadenasql = "select Ventas96.totales from Ventas96 where beneficios < 5"

cadenacon = _

"ODBC;DSN=DatosVentas96;UID=Rep21;PWD=NUyHwYQI;Database=Ventas96"

With ActiveSheet.QueryTables.Add(Connection:=cadenacon, _

Destination:=Range("B1"), Sql:=cadenasql)

.Refresh

End With


Método CancelRefresh

Cancela todas las consultas en segundo plano de la tabla de consulta especificada. Utilice la propiedad Refreshing para saber si está en curso alguna consulta en segundo plano.

Sintaxis

expresión.CancelRefresh

expresión   Requerida. Una expresión que devuelve un objeto QueryTable.


Ejemplo del método CancelRefresh

Este ejemplo cancela una operación de actualización de una tabla de consulta.

With Worksheets(1).QueryTables(1)

    If .Refreshing Then .CancelRefresh

End With


Propiedad Connection

Devuelve o establece una cadena que contiene uno de los siguientes: valores de ODBC que permiten a Microsoft Excel conectarse con una fuente de datos ODBC; una URL que permite a Microsoft Excel conectarse con una fuente de datos de Web; o un archivo que especifica una base de datos o una consulta de Web. String de Lectura/Escritura.

Comentarios

Establecer la propiedad Connection no inicia de manera inmediata la conexión con la fuente de datos. Debe utilizar el método Refresh para establecer la conexión y recuperar los datos.

Para obtener más información acerca de la sintaxis de cadenas de conexión, vea el método Add.


Ejemplo de la propiedad Connection

Este ejemplo suministra nueva información de una conexión ODBC para la tabla de consulta uno.

Worksheets(1).QueryTables(1) _

.Connection:="ODBC;DSN=DatosVentas96;UID=Rep21;PWD=NUyHwYQI;"


Propiedad Destination

Devuelve la celda situada en la esquina superior izquierda del rango de destino de la tabla de consulta (rango en el que se situará la tabla de consulta resultante). El rango de destino debe estar en la hoja de cálculo que contenga el objeto QueryTable. Range de sólo lectura.


Ejemplo de la propiedad Destination

Este ejemplo se desplaza en la ventana activa hasta que la esquina superior izquierda de la tabla de consulta uno aparece en la esquina superior izquierda de la ventana.

Set d = Worksheets(1).QueryTables(1).Destination

With ActiveWindow

    .ScrollColumn = d.Column

    .ScrollRow = d.Row

End With


Propiedad FetchedRowOverflow

True si el número de filas que devuelve la última ejecución del método Refresh es mayor que el número de filas disponibles en la hoja de cálculo. Boolean de sólo lectura.


Ejemplo de la propiedad FetchedRowOverflow

Este ejemplo actualiza la tabla de consulta uno. Si el número de filas que devuelve la consulta es superior al número de filas disponibles en la hoja, se mostrará un mensaje de error.

With Worksheets(1).QueryTables(1)

    .Refresh

    If .FetchedRowOverflow Then

        MsgBox "Consulta demasiado grande: por favor defínala de nuevo."

    End If

End With


Propiedad FieldNames

True si los nombres de campo de la fuente de datos aparecen como encabezados de columna de los datos que se devuelven. El valor predeterminado es True. Boolean de Lectura/Escritura.


Ejemplo de la propiedad FieldNames

Este ejemplo configura la tabla de consulta uno para que no se muestren los nombres de campo.

Worksheets(1).QueryTables(1).FieldNames = False


Propiedad FillAdjacentFormulas

True si las fórmulas de la derecha de la tabla de consulta especificada se actualizan automáticamente siempre que se actualiza la tabla. Boolean de Lectura/Escritura.


Ejemplo de la propiedad FillAdjacentFormulas

Este ejemplo configura la tabla de consulta uno de modo que las fórmulas de su derecha se actualicen automáticamente siempre que se actualice la tabla.

Sheets("hoja1").QueryTables(1).FillAdjacentFormulas = True


Propiedad ODBCErrors

Devuelve un conjunto ODBCErrors que contiene todos los errores de ODBC generados por la operación de tabla dinámica o de tabla de consulta más reciente. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo objeto de un conjunto, vea Devolver un objeto de un conjunto.

Comentarios

Si se están ejecutando varias consultas a la vez, el conjunto ODBCErrors contendrá los errores de ODBC de la última consulta que finalice.


Ejemplo de la propiedad ODBCErrors

Este ejemplo actualiza la tabla de consulta uno y muestra los errores de ODBC ocurridos.

With Worksheets(1).QueryTables(1)

.Refresh

Set errs = Application.ODBCErrors

If errs.Count > 0 Then

Set r = .Destination.Cells(1)

r.Value = "Han ocurrido los siguientes errores:"

c = 0

For Each er In errs

c = c + 1

r.offset(c, 0).value = er.ErrorString

r.offset(c, 1).value = er.SqlState

Next

Else

MsgBox "Consulta completa: se han devuelto todos los registros."

End If

End With


Propiedad ODBCTimeout

Devuelve el tiempo límite de la consulta de ODBC, en segundos. El valor predeterminado es 45 segundos. Long de Lectura/Escritura.

Comentarios

El valor 0 (cero) indica un tiempo límite indefinido.


Ejemplo de la propiedad ODBCTimeout

Este ejemplo establece el tiempo límite de consulta de ODBC en 15 segundos.

Application.ODBCTimeout = 15


Propiedad Parameters

Devuelve un conjunto Parameters que representa los parámetros de la tabla de consulta. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo objeto de un conjunto, vea Devolver un objeto de un conjunto.


Ejemplo de la propiedad Parameters

Este ejemplo devuelve el conjunto Parameters de una consulta de parámetros ya existente. Si el primer parámetro utiliza el tipo de datos Characters, se indicará al usuario que sólo puede escribir caracteres en el cuadro de diálogo correspondiente.

With Sheets("hoja1").QueryTables(1).Parameters(1)

    If .DataType = xlParamTypeVarChar Then

        .SetParam xlPrompt, "Escriba únicamente un carácter"

    End If

End With


Propiedad PostText

Devuelve o establece la cadena que se emplea con el método Post de introducción de datos en un servidor Web para devolver datos de una consulta de Web. String de Lectura/Escritura.

Comentarios

Microsoft Excel incluye ejemplos de consultas de Web, que pueden modificarse cambiando el código HTML con el programa WordPad u otro editor de textos. Dichos ejemplos se encuentran en la carpeta Consultas de la carpeta en que instaló Microsoft Office.

Microsoft Office 97 Resource Kit contiene información acerca de cómo crear una consulta de Web. Para obtener más información acerca de cómo obtener Office Resource Kit, haga clic en [image].


Propiedad QueryTable

Devuelve un objeto QueryTable que representa la tabla de consulta que cruza al rango especificado. Es de sólo lectura.


Ejemplo de la propiedad QueryTable

Este ejemplo actualiza la tabla de consulta que cruza a la celda A10 de la hoja de cálculo uno.

Worksheets(1).Range("a10").QueryTable.Refresh


Propiedad QueryTables

Devuelve el conjunto QueryTables que representa todas las tablas de consulta de la hoja especificada. Es de sólo lectura.

Para obtener más información acerca de cómo devolver un solo objeto de un conjunto, vea Devolver un objeto de un conjunto..


Ejemplo de la propiedad QueryTables

Este ejemplo actualiza todas las tablas de consulta de la hoja uno.

For Each qt in Worksheets(1).QueryTables

qt.Refresh

Next

Este ejemplo configura la tabla de consulta uno de modo que las fórmulas de su derecha se actualicen automáticamente siempre que la tabla se actualice.

Sheets("hoja1").QueryTables(1).FillAdjacentFormulas = True


Propiedad Recordset

Devuelve o establece un objeto Recordset que se emplea como fuente de datos de la tabla de consulta especificada. Es de Lectura/Escritura.

Comentarios

Si esta propiedad se utiliza para sobrescribir un conjunto de registros ya existente, el cambio tendrá efecto cuando se ejecute el método Refresh.


Ejemplo de la propiedad Recordset

Este ejemplo cambia el objeto Recordset empleado con la tabla de consulta uno y después actualiza la tabla.

With Worksheets(1).QueryTables(1)

.Recordset = OpenDatabase("c:\Nwind.mdb").OpenRecordset("empleados")

.Refresh

End With


Propiedad Refreshing

True si está en curso una consulta en segundo plano para la tabla de consulta especificada. Boolean de Lectura/Escritura.

Comentarios

Utilice el método CancelRefresh para cancelar las consultas en segundo plano.


Ejemplo de la propiedad Refreshing

Este ejemplo muestra un cuadro de mensaje si hay una consulta en segundo plano para la tabla de consulta uno.

With Worksheets(1).QueryTables(1)

    If .Refreshing Then

        MsgBox "La consulta se está actualizando: espere"

    Else

        .Refresh BackgroundQuery := False

        .ResultRange.Select

    End If

End With


Propiedad RefreshStyle

Devuelve o establece cómo se agregan o eliminan filas de la hoja de cálculo especificada para que se incluya el número de filas de un conjunto de registros devuelto por una consulta. Long de Lectura/Escritura.

Puede ser una de las siguientes constantes xlCellInsertionMode:

Constante	Descripción
xlOverwriteCells	No se agregan celdas nuevas a la hoja de cálculo. Los datos de las celdas contiguas se sobrescriben para que incluyan los desbordamientos.
xlInsertDeleteCells	Se insertan o eliminan filas parciales para que coincidan con el número exacto de filas necesarias del nuevo conjunto de registros.
xlInsertEntireRows	Si es necesario se insertan filas enteras para incluir los desbordamientos. No se agregan celdas o filas de la hoja de cálculo.


Ejemplo de la propiedad RefreshStyle

Este ejemplo agrega una tabla de consulta a la Hoja1. La propiedad RefreshStyle agrega filas a la hoja de cálculo cuando se necesitan para incluir los resultados.

Dim qt As QueryTable

Set qt = Sheets("hoja1").QueryTables _

.Add(Connection:="Finder,c:\miarchivo.dqy", _

Destination:=Range("hoja1!a1"))

With qt

    .RefreshStyle = xlInsertEntireRows

    .Refresh

End With


Propiedad ResultRange

Devuelve un objeto Range que representa el área de la hoja de cálculo ocupada por la tabla de consulta especificada. Es de sólo lectura.

Comentarios

El rango no incluye la fila de nombre de campo o la columna de número de fila.


Ejemplo de la propiedad ResultRange

Este ejemplo suma los datos de la primera columna de la tabla de consulta uno. La suma de la primera columna se muestra debajo del rango de datos.

Set c1 = Sheets("hoja1").QueryTables(1).ResultRange.Columns(1)

c1.Name = "Columna1"

c1.End(xlDown).Offset(2, 0).Formula = "=suma(Columna1)"


Propiedad RowNumbers

True si los números de fila se agregan como la primera columna de la tabla de consulta especificada. Boolean de Lectura/Escritura.

Comentarios

Establecer esta propiedad como True no hace que aparezcan inmediatamente los números de fila. Los números de fila aparecerán la próxima vez que se actualice la tabla de consulta y se volverán a configurar cada vez que se actualice la tabla.


Ejemplo de la propiedad RowNumbers

Este ejemplo agrega números de fila y nombres de campo a la tabla de consulta.

With Worksheets(1).QueryTables("ExternalData1")

    .RowNumbers = True

    .FieldNames = True

    .Refresh

End With


Propiedad SavePassword

True si la información de contraseña de una cadena de conexión ODBC se guarda junto con la consulta especificada. False si la contraseña se elimina. Boolean de Lectura/Escritura.

Comentarios

Esta propiedad afecta únicamente a las consultas de ODBC.


Ejemplo de la propiedad SavePassword

Este ejemplo hace que la información de contraseña se elimine de la cadena de conexión de ODBC siempre que se guarde la tabla de consulta uno.

Worksheets(1).QueryTables(1).SavePassword = False


Propiedad Sql

Devuelve o establece la cadena de conexión SQL empleada con la fuente de datos de ODBC especificada. String de Lectura/Escritura.

Comentarios

Esta propiedad admite la gramática completa de ODBC Data Manipulation Language (DML), incluidos los caracteres comodín, y los procedimientos almacenados que devuelven datos. La propiedad no admite enunciados del Idioma de definición de datos (DDL).


Ejemplo de la propiedad Sql

Este ejemplo cambia la cadena de consulta SQL de la tabla de consulta uno y después actualiza la tabla.

With Worksheets(1).QueryTables(1)

.Sql = "selecciona 96Sales.totals de 96Sales donde los beneficios < 5"

.Refresh

End With


Propiedad SqlState

Devuelve el error de estado de SQL. String de sólo lectura.

Comentarios

Para obtener una explicación del error específico, vea la documentación de SQL.


Ejemplo de la propiedad SqlState

Este ejemplo actualiza la tabla de consulta uno y muestra los errores de ODBC ocurridos.

With Worksheets(1).QueryTables(1)

.Refresh

Set errs = Application.ODBCErrors

If errs.Count > 0 Then

Set r = .Destination.Cells(1)

r.Value = "Han ocurrido los siguientes errores:"

c = 0

For Each er In errs

c = c + 1

r.offset(c, 0).value = er.ErrorString

r.offset(c, 1).value = er.SqlState

Next

Else

MsgBox "Consulta completa: se han devuelto todos los registros."

End If

End With


Propiedad PromptString

Devuelve la frase que solicita al usuario el valor de un parámetro en una consulta de parámetros. String de sólo lectura.


Ejemplo de la propiedad PromptString

Este ejemplo modifica la cadena de petición de parámetros en la tabla de consulta uno.

With Worksheets(1).QueryTables(1).Parameters(1)

.SetParam xlPrompt, "Por favor " & .PromptString

End With


Método SetParam

Define un parámetro para la tabla de consulta especificada.

Sintaxis

expresión.SetParam(Type, Value)

expresión   Requerida. Una expresión que devuelve un objeto Parameter.

Type   Long requerido. El tipo de parámetro. Puede ser una de las siguientes constantes XlParameterType:

Constante	Descripción
xlConstant	Utiliza el valor especificado por el argumento Value.
xlPrompt	Muestra un cuadro de diálogo que solicita el valor al usuario. El argumento Value especifica el texto que se muestra en el cuadro de diálogo.
xlRange	Utiliza el valor de la celda de la esquina superior izquierda del rango. El argumento Value especifica un objeto Range.
Value   Variant requerido. El valor del parámetro especificado, según se muestra en la descripción del argumento Type.


Ejemplo del método SetParam

Este ejemplo cambia el enunciado SQL de la tabla de consulta uno. La cláusula “(ciudad=?)” indica que la consulta es de parámetros y el ejemplo establece el valor de ciudad como la constante “Sevilla”.

Set qt = Sheets("hoja1").QueryTables(1)

qt.Sql = "SELECT * FROM autores  WHERE (ciudad=?)"

Set param1 = qt.Parameters.Add("Parámetro Ciudad", xlParamTypeVarChar)

param1.SetParam xlConstant, "Sevilla"

qt.Refresh

Este ejemplo establece el valor de ciudad como el valor de la celda A2 de la hoja de cálculo dos.

Set qt = Sheets("hoja1").QueryTables(1)

qt.Sql = "SELECT * FROM autores  WHERE (ciudad=?)"

Set param1 = qt.Parameters.Add("Parámetro Ciudad", xlParamTypeVarChar)

param1.SetParam xlRange, Range("hoja2!a1")

qt.Refresh


Propiedad SourceRange

Devuelve un objeto Range que representa la celda que contiene el valor del parámetro de consulta especificado. Es de sólo lectura.


Ejemplo de la propiedad SourceRange

Este ejemplo cambia el valor de la celda utilizada como rango fuente de la consulta.

Set qt = Sheets("hoja1").QueryTables(1)

Set param1 = qt.Parameters(1)

Set r = param1.SourceRange

r.Value = "Nueva York"

qt.Refresh


Método Add (conjunto Parameters)

Crea un parámetro de consulta nuevo. Devuelve un objeto Parameter que representa el nuevo parámetro de consulta.

Sintaxis

expresión.Add(Name, DataType)

expresión   Requerida. Una expresión que devuelve un objeto Parameters.

Name   String requerida. El nombre del parámetro especificado. Debe coincidir con la cláusula del parámetro en el enunciado SQL.

DataType   Variant opcional. El tipo de datos del parámetro. Puede ser una de las siguientes constantes XlParameterDataType:

xlParamTypeBigInt xlParamTypeBinary xlParamTypeBit xlParamTypeChar xlParamTypeDate xlParamTypeDecimal xlParamTypeDouble xlParamTypeFloat xlParamTypeInteger xlParamTypeLongVarBinary	xlParamTypeNumeric xlParamTypeLongVarChar xlParamTypeReal xlParamTypeSmallInt xlParamTypeTime xlParamTypeTimeStamp xlParamTypeTinyInt xlParamTypeUnknown xlParamTypeVarBinary xlParamTypeVarChar
Estos valores corresponden con tipos de datos de ODBC. Indican el tipo de valor que espera recibir el controlador de ODBC. Microsoft Excel y el controlador de ODBC restringen el valor del parámetro dado en Microsoft Excel al tipo de datos correcto para el controlador.


Ejemplo del método Add (conjunto Parameters)

Este ejemplo cambia el enunciado SQL de la tabla de consulta uno. La cláusula “(ciudad=?)” indica que la consulta es de parámetros y el valor de ciudad se establece como la constante “Sevilla”.

Set qt = Sheets("hoja1").QueryTables(1)

qt.Sql = "SELECT * FROM autores  WHERE (ciudad=?)"

Set param1 = qt.Parameters.Add("Parámetro Ciudad", xlParamTypeVarChar)

param1.SetParam xlConstant, "Sevilla"

qt.Refresh


RefreshAll Method

Actualiza todas las tablas de consulta y tablas dinámicas del libro especificado.

Sintaxis

expresión.RefreshAll

expresión   Requerida. Una expresión que devuelve un objeto Workbook.


RefreshAll Method Example

Este ejemplo actualiza todas las tablas de consulta y tablas dinámicas del libro tres. Las tablas de consulta y tablas dinámicas cuyo valor de la propiedad BackgroundQuery sea True se actualizarán en segundo plano.

Workbooks(3).RefreshAll


Propiedad TablesOnlyFromHTML

True si solamente se leen las tablas HTML del documento cuando se actualiza una tabla de consulta. False si se lee el documento HTML completo cuando se actualiza una tabla de consulta. Esta propiedad solamente tiene efecto si la tabla de consulta utiliza una conexión URL y la consulta de Web devuelve un documento HTML. Boolean de Lectura/Escritura.


Ejemplo de la propiedad TablesOnlyFromHTML

Este ejemplo configura la tabla de consulta uno de manera que sólo se actualicen las tablas de un documento HTML.

Worksheets(1).QueryTables(1).TablesOnlyFromHTML = True


Propiedad EnableEditing

True si el usuario puede modificar la tabla de consulta especificada. False si el usuario sólo puede actualizar la tabla de consulta. Boolean de Lectura/Escritura.


Ejemplo de la propiedad EnableEditing

Este ejemplo configura la tabla de consulta uno de manera que el usuario no pueda modificarla.

Worksheets(1).QueryTables(1).EnableEditing = False


Objeto Parameter

Representa un solo parámetro empleado en una consulta de parámetros. El objeto Parameter es miembro del conjunto Parameters.

Uso del objeto Parameter

Utilice Parameters(index) para devolver un solo objeto Parameter, donde index es el número del parámetro. El ejemplo siguiente modifica la cadena de petición del parámetro uno.

With Worksheets(1).QueryTables(1).Parameters(1)

.SetParam xlPrompt, "Por favor " & .PromptString

End With


Objeto Parameters

Un conjunto de objetos Parameter para la tabla de consulta especificada. Cada objeto Parameter representa un solo parámetro de consulta. Cada tabla de consulta contiene un conjunto Parameters, pero el conjunto estará vacío a menos que la tabla utilice una consulta de parámetros.

Uso del conjunto Parameters

Utilice la propiedad Parameters para devolver el conjunto Parameters. El ejemplo siguiente muestra el número de parámetros de la tabla de consulta uno.

MsgBox Workbooks(1).ActiveSheet.QueryTables(1).Parameters.Count

Utilice el método Add para crear un parámetro nuevo de una tabla de consulta. El ejemplo siguiente cambia el enunciado SQL de la tabla de consulta uno. La cláusula “(ciudad=?)” indica que la consulta es de parámetros y el valor de ciudad se establece como la constante “Sevilla”.

Set qt = Sheets("hoja1").QueryTables(1)

qt.Sql = "SELECT * FROM autores  WHERE (ciudad=?)"

Set param1 = qt.Parameters.Add("Parámetro Ciudad", xlParamTypeVarChar)

param1.SetParam xlConstant, "Sevilla"

qt.Refresh

No puede utilizar el método Add en una tabla de consulta de una conexión URL. Para las tablas de consulta de conexión URL, Microsoft Excel crea los parámetros basándose en las propiedades Connection y PostText.


Objeto ODBCError

Representa un error de ODBC generado por la consulta de ODBC más reciente. El objeto ODBCError es miembro del conjunto ODBCErrors. Si la consulta de ODBC se ejecuta sin errores, el conjunto ODBCErrors estará vacío. Los errores del conjunto se indexan en el orden en que los genera la fuente de datos de ODBC.

Uso del objeto ODBCError

Utilice ODBCErrors(index) para devolver un solo objeto ODBCError, donde index es el número de índice del error. El ejemplo siguiente actualiza la tabla de consulta uno y muestra el primer error de ODBC que se produce.

With Worksheets(1).QueryTables(1)

.Refresh

If Application.ODBCErrors.Count > 0 Then

Set er = Application.ODBCErrors(1)

MsgBox "Han ocurrido los siguientes errores:" &

er.ErrorString & " : " & er.SqlState

Else

MsgBox "Consulta completa: se han devuelto todos los registros."

End If

End With


Objeto ODBCErrors

Un conjunto de objetos ODBCError. Cada objeto ODBCError representa un error devuelto por la consulta de ODBC más reciente. Si la consulta de ODBC se ejecuta sin errores, el conjunto ODBCErrors estará vacío. Los errores del conjunto se indexan en el orden en que los genera la fuente de datos de ODBC. No pueden agregarse miembros al conjunto.

Uso del conjunto ODBCErrors

Utilice la propiedad ODBCErrors para devolver el conjunto ODBCErrors. El ejemplo siguiente actualiza la tabla de consulta uno y muestra los errores de ODBC ocurridos.

With Worksheets(1).QueryTables(1)

.Refresh

Set errs = Application.ODBCErrors

If errs.Count > 0 Then

Set r = .Destination.Cells(1)

r.Value = "Han ocurrido los siguientes errores:"

c = 0

For Each er In errs

c = c + 1

r.offset(c, 0).value = er.ErrorString

r.offset(c, 1).value = er.SqlState

Next

Else

MsgBox "Consulta completa: se han devuelto todos los registros."

End If

End With


Objeto QueryTable

Representa una tabla de hoja de cálculo creada a partir de los datos devueltos de una fuente de datos externa, por ejemplo, un servidor SQL o una base de datos de Microsoft Access. El objeto QueryTable es miembro del conjunto QueryTables.

Uso del objeto QueryTable

Utilice QueryTables(índice) para devolver un solo objeto QueryTable, donde índice es el número de índice de la tabla de consulta. El ejemplo siguiente configura la tabla de consulta uno de modo que las fórmulas de su derecha se actualicen automáticamente siempre que la tabla se actualice.

Sheets("hoja1").QueryTables(1).FillAdjacentFormulas = True


Objeto QueryTables

Un conjunto de objetos QueryTable. Cada objeto QueryTable representa una tabla de hoja de cálculo creada a partir de los datos de una fuente de datos externa.

Uso del conjunto QueryTables

Utilice la propiedad QueryTables para devolver el conjunto QueryTables. El ejemplo siguiente muestra el número de tablas de consulta de la hoja activa.

MsgBox ActiveSheet.QueryTables.Count

Utilice el método Add para crear una nueva tabla de consulta y agregarla al conjunto QueryTables. El ejemplo siguiente crea una tabla de consulta nueva.

Dim qt As QueryTable

cadenasql = "select Ventas96.totales from Ventas96 where beneficios < 5"

connstring = _

"ODBC;DSN=DatosVentas96;UID=Rep21;PWD=NUyHwYQI;Database=Ventas96"

With ActiveSheet.QueryTables.Add(Connection:=cadenacon, _

Destination:=Range("B1"), Sql:=cadenasql)

.Refresh

End With


Objeto AddIn

Representa una sola macro automática, tanto si está instalada como si no. El objeto AddIn es un elemento del conjunto AddIns. El conjunto AddIns contiene una lista de todas las macros automáticas disponibles en Microsoft Excel, independientemente de si están instaladas. Esta lista corresponde a lista que se muestra en el cuadro de diálogo Macros automáticas (menú Herramientas).

Uso del objeto Addin

Para devolver un solo objeto AddIn, use AddIns(índice), donde índice es el título de la macro automática o su número de índice. El ejemplo siguiente instala la macro automática Herramientas para análisis.

AddIns("Herramientas para análisis").Installed = True

No confunda el título de la macro automática, que aparece en el cuadro de diálogo Macros automáticas, con su nombre, que es el nombre de archivo de la macro. Debe escribir el título de la macro automática correctamente, tal como se muestra en el cuadro de diálogo Macros automáticas, aunque no es necesario que coincidan las letras mayúsculas y minúsculas.

El número de índice representa la posición de la macro automática en la lista que aparece en el cuadro Macros automáticas disponibles del cuadro de diálogo Macros automáticas. El ejemplo siguiente crea una lista de propiedades específicas de las macros automáticas disponibles.

With Worksheets("Hoja1")

.Rows(1).Font.Bold = True

.Range("a1:d1").Value = _

Array("Nombre", "Nombre completo", "Título", "Instalada")

For i = 1 To AddIns.Count

.Cells(i + 1, 1) = AddIns(i).Name

.Cells(i + 1, 2) = AddIns(i).FullName

.Cells(i + 3, 1) = AddIns(i).Title

.Cells(i + 1, 4) = AddIns(i).Installed

Next

.Range("a1").CurrentRegion.Columns.AutoFit

End With

Comentarios

El método Add agrega una macro automática a la lista de macros automáticas disponibles, pero no instala la macro. Defina la propiedad Installed de una macro automática como True para instalarla. Para instalar una macro que no aparece en la lista de macros automáticas disponibles, primero debe usar el método Add y después establecer la propiedad Installed. Puede hacerlo en un solo paso, como se muestra en el ejemplo siguiente (tenga en cuenta que, con el método Add se usa el nombre de la macro automática, no su título).

AddIns.Add("genérica.xll").Installed = True

Para devolver una referencia al libro correspondiente a una macro automática cargada, use Workbooks(índice), donde índice es el nombre de archivo de la macro automática (no su título). Debe usar el nombre de archivo porque las macros automáticas cargadas normalmente no aparecen en el conjunto Workbooks. Este ejemplo establece la variable lb como el libro de Mimacro.xla.

Set lb = Workbooks("mimacro.xla")

El ejemplo siguiente establece la variable lb como el libro de la macro automática Herramientas para análisis.

Set lb = Workbooks(AddIns("Herramientas para análisis").Name)

Si la propiedad Installed devuelve True, pero las llamadas a funciones de la macro automática siguen fallando, es posible que la macro automática no esté cargada. Esto se debe a que el objeto Addin representa la existencia y el estado de instalado de la macro automática, pero no el contenido real del libro de la macro automática. Para garantizar que una macro automática instalada está cargada, abra el libro de la macro. El ejemplo siguiente abre el libro de la macro automática llamada "Mi macro automática" si no está presente ya en el conjunto Workbooks.

On Error Resume Next	' desactiva la verificación de errores

Set lbMiMacro = Workbooks(Addins("Mi macro automática").Name)

lastError = Err

On Error GoTo 0	' restablece la verificación de errores

If lastError <> 0 Then

' el libro de la macro automática no está abierto. Ábralo manualmente.

Set lbMiMacro = Workbooks.Open(Addins("Mi macro automática").FullName)

End If


Objeto de conjunto AddIns

Un conjunto de objetos AddIn que representa todas las macros automáticas disponibles en Microsoft Excel, con independencia de si están instaladas. Esta lista corresponde a lista que se muestra en el cuadro de diálogo Macros automáticas (menú Herramientas).

Uso del conjunto Addins

Use el método AddIns para devolver el conjunto AddIns. El ejemplo siguiente crea una lista con los nombres y estados de instalado de todas las macros automáticas disponibles.

Sub MostrarMacrosAuto()

    Worksheets("Hoja1").Activate

    rw = 1

    For Each mcraut In Application.AddIns

        Worksheets("Hoja1").Cells(rw, 1) = mcraut.Name

        Worksheets("Hoja1").Cells(rw, 2) = mcraut.Installed

        rw = rw + 1

    Next

End Sub

Use el método Add para agregar una macro automática a la lista de macros automáticas disponibles. El método Add agrega una macro automática a la lista, pero no instala la macro. Defina la propiedad Installed de la macro automática como True para instalarla. Para instalar una macro que no aparece en la lista de macros automáticas disponibles, primero debe usar el método Add y después establecer la propiedad Installed. Puede hacerlo en un solo paso, como se muestra en el ejemplo siguiente (tenga en cuenta que, con el método Add se usa el nombre de la macro automática, no su título).

AddIns.Add("genérica.xll").Installed = True

Para devolver un solo objeto AddIn, use AddIns(índice), donde índice es el título de la macro automática o su número de índice. El ejemplo siguiente instala la macro automática Herramientas para análisis.

AddIns("Herramientas para análisis").Installed = True

No confunda el título de la macro automática, que aparece en el cuadro de diálogo Macros automáticas, con su nombre, que es el nombre de archivo de la macro. Debe escribir el título de la macro automática correctamente, tal como se muestra en el cuadro de diálogo Macros automáticas, aunque no es necesario que coincidan las letras mayúsculas y minúsculas.


Objeto Application

Representa la aplicación completa Microsoft Excel. El objeto Application contiene:

•	Valores y opciones de toda la aplicación (por ejemplo, muchas de las opciones del cuadro de diálogo Opciones, en el menú Herramientas).

•	Métodos que devuelven objetos de nivel superior, como ActiveCell, ActiveSheet, etc.

Uso del objeto Application

Use la propiedad Application para devolver el objeto Application. El ejemplo siguiente aplica la propiedad Windows al objeto Application.

Application.Windows("libro1.xls").Activate

El ejemplo siguiente crea un objeto hoja de cálculo de Microsoft Excel en otra aplicación y, a continuación, abre un libro en Microsoft Excel.

Set xl = CreateObject("Excel.Hoja")

xl.Application.Workbooks.Open "nuevolib.xls"

Comentarios

Muchas propiedades y métodos que devuelven los objetos de interfaz de usuario más frecuentes, como la celda activa (propiedad ActiveCell) pueden emplearse sin el calificador de objeto Application. Por ejemplo, en lugar de escribir Application.ActiveCell.Font.Bold = True, puede escribir ActiveCell.Font.Bold = True.


AddIn, Assistant, AutoCorrect, Chart, CommandBars, Debug, Dialog, RecentFiles, VBE, Window, Worksheet, WorksheetFunction, Workbook


Objeto de conjunto Areas

Un conjunto de las áreas, o bloques de celdas contiguas, de una selección. No existe un objeto Area singular; los elementos individuales del conjunto Areas son objetos Range. El conjunto Areas contiene un objeto Range por cada rango de celdas discretas y contiguas de una selección. Si la selección contiene una sola área, el conjunto Areas contendrá un único objeto Range que corresponderá a esa selección.

Uso del conjunto Areas

Use la propiedad Areas para devolver el conjunto Areas. El ejemplo siguiente borra la selección actual si ésta contiene más de un área.

If Selection.Areas.Count <> 1 Then Selection.Clear

Para devolver un solo objeto Range del conjunto, use Areas(índice), donde índice es el número de índice del área. Los números de índice corresponden al orden en que se han seleccionado las áreas. El ejemplo siguiente desactiva el primer área de la selección actual si ésta contiene más de un área.

If Selection.Areas.Count <> 1 Then

Selection.Areas(1).Clear

End If

Algunas operaciones no pueden realizarse en más de un área a la vez de la misma selección; debe ejecutar un bucle en las áreas individuales de la selección y ejecutar las operaciones en cada área por separado. El siguiente ejemplo ejecuta la operación llamada “miOperación” en el rango seleccionado si la selección contiene una sola área; de lo contrario, el ejemplo ejecuta miOperación en cada área individual de la selección.

Set rangoAUsar = Selection

If rangoAUsar.Areas.Count = 1 Then

    miOperación rangoAUsar

Else

    For Each áreaSencilla in rangoAUsar.Areas

        miOperación áreaSencilla

    Next

End If


Border, Characters, Font, Interior, Name, SoundNote, Style


Objeto de conjunto Axes

Un conjunto de todos los objetos Axis del gráfico especificado.

Uso del conjunto Axes

Use el método Axes para devolver el conjunto Axes. El ejemplo siguiente muestra el número de ejes del gráfico incrustado uno en la hoja de cálculo uno.

With Worksheets(1).ChartObjects(1).Chart

    MsgBox .Axes.Count

End With

Use Axes(tipo, grupo), donde tipo es el tipo de eje y grupo es el grupo de ejes, para devolver un solo objeto Axis. Tipo puede ser una de las siguientes constantes XlAxisType: xlCategory, xlSeries o xlValue. Grupo puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. Para obtener más información, vea el método Axes.

El ejemplo siguiente establece el texto del título del eje de categorías de la hoja de gráficos llamada "Gráfico1".

With Charts("Gráfico1").Axes(xlCategory)

    .HasTitle = True

    .AxisTitle.Caption = "1994"

End With


Objeto Axis

Representa un solo eje de un gráfico. El objeto Axis es elemento del conjunto Axes.

Uso del objeto Axis

Use Axes(tipo, grupo), donde tipo es el tipo de eje y grupo es el grupo de ejes, para devolver un solo objeto Axis. Tipo puede ser una de las siguientes constantes XlAxisType: xlCategory, xlSeries o xlValue. Grupo puede ser una de las siguientes constantes XlAxisGroup: xlPrimary o xlSecondary. Para obtener más información, vea el método Axes.

El ejemplo siguiente establece el texto del título del eje de categorías de la hoja de gráficos llamada "Gráfico1".

With Charts("Gráfico1").Axes(xlCategory)

    .HasTitle = True

    .AxisTitle.Caption = "1994"

End With


Objeto AxisTitle

Representa el título de un eje de un gráfico.

Uso del objeto AxisTitle

Use la propiedad AxisTitle para devolver el objeto AxisTitle. El ejemplo siguiente activa el gráfico incrustado uno, establece el texto del título del eje de valores, define la fuente como Bookman 10 puntos y aplica a la palabra "millones" formato de cursiva.

Worksheets("Hoja1").ChartObjects(1).Activate

With ActiveChart.Axes(xlValue)

    .HasTitle = True

    With .AxisTitle

        .Caption = "Ingresos (millones)"

        .Font.Name = "bookman"

        .Font.Size = 10

        .Characters(10, 8).Font.Italic = True

    End With

End With

Comentarios

El objeto AxisTitle no existe y no es posible usarlo a menos que la propiedad HasTitle del eje sea True.


Border, Characters, Font, Interior


Objeto Border

Representa el borde de un objeto.

Uso del objeto Border

La mayoría de los objetos con borde (todos salvo los objetos Range y Style) tienen un borde que se trata como una sola entidad, con independencia de los lados que tenga. El borde completo debe devolverse como una sola unidad. Use la propiedad Border para devolver el objeto Border de este tipo de objeto. El ejemplo siguiente activa la hoja de gráficos llamada "Gráfico1", coloca un borde de rayas alrededor del área del gráfico activo y un borde punteado alrededor del área de trazado.

Charts("Gráfico1").Activate

With ActiveChart

    .ChartArea.Border.LineStyle = xlDash

    .PlotArea.Border.LineStyle = xlDot

End With

Los objetos Range y Style tienen cuatro bordes discretos (izquierdo, derecho, superior e inferior) que pueden devolverse por separado o como grupo. Use la propiedad Borders para devolver el conjunto Borders, que contiene los cuatro bordes. El ejemplo siguiente agrega un borde doble a la celda A1 de la hoja de cálculo uno.

Worksheets(1).Range("a1").Borders.LineStyle = xlBorderStyleDouble

Para devolver un solo objeto Border, use Borders(índice), donde índice identifica al borde. El siguiente ejemplo establece el color del borde inferior de las celdas A1:G1.

Worksheets("Hoja1").Range("a1:g1"). _

    Borders(xlEdgeBottom).Color = RGB(255, 0, 0)

Índice puede ser una de las siguientes constantes XlBorderType: xlInsideHorizontal, xlInsideVertical, xlDiagonalDown, xlDiagonalUp, xlEdgeBottom, xlEdgeLeft, xlEdgeRight o xlEdgeTop.


Axis, AxisTitle, ChartArea, ChartObject, ChartObjects, ChartTitle, DataLabel, DataLabels, DownBars, DropLines, ErrorBars, Floor, Gridlines, HiLoLines, Legend, LegendKey, OLEObject, OLEObjects, PlotArea, Point, Series, SeriesLines, Trendline, UpBars, Walls


Objeto de conjunto Borders

Un conjunto de cuatro objetos Border que representan los cuatro bordes de un objeto Range o Style.

Uso del conjunto Borders

Use la propiedad Borders para devolver el conjunto Borders, que contiene los cuatro bordes. El ejemplo siguiente agrega un borde doble a la celda A1 de la hoja de cálculo uno.

Worksheets(1).Range("a1").Borders.LineStyle = xlBorderStyleDouble

Para devolver un solo objeto Border, use Borders(índice), donde índice identifica al borde. El siguiente ejemplo establece en rojo el color del borde inferior de las celdas A1:G1.

Worksheets("Hoja1").Range("a1:g1"). _

    Borders(xlEdgeBottom).Color = RGB(255, 0, 0)

Índice puede ser una de las siguientes constantes XlBorderType: xlInsideHorizontal, xlInsideVertical, xlDiagonalDown, xlDiagonalUp, xlEdgeBottom, xlEdgeLeft, xlEdgeRight o xlEdgeTop.

Comentarios

Sólo es posible establecer las propiedades de un borde individual con los objetos Range y Style. Otros objetos con borde, como casillas de verificación y áreas de gráficos, tienen un borde que se trata como una sola entidad, independientemente de los lados que tenga. Para estos objetos, deberá devolver y establecer las propiedades del borde completo de una sola vez. Para obtener más información, vea el objeto Border.


Range, Style


Objeto Characters

Representa los caracteres de un objeto que contiene texto. El objeto Characters permite modificar cualquier secuencia de caracteres que esté contenida en la cadena de texto completa.

Uso del objeto Characters

Para devolver un objeto Characters, use Characters(inicio; longitud), donde inicio es el número del primer carácter y longitud es el número de caracteres. El ejemplo siguiente agrega texto a la celda B1 y da formato de negrita a la segunda palabra.

With Worksheets("Hoja1").Range("b1")

    .Value = "Título nuevo"

    .Characters(5, 5).Font.Bold = True

End With

Comentarios

El método Characters sólo es necesario cuando se necesita cambiar parte del texto de un objeto sin afectar al resto (no se puede usar el método Characters para dar formato a una parte del texto si el objeto no admite texto enriquecido). Para cambiar todo el texto de una sola vez, puede aplicar el método o la propiedad correspondiente directamente al objeto. El ejemplo siguiente da formato de cursiva al contenido de la celda A5.

Worksheets("Hoja1").Range("a5").Font.Italic = True


AxisTitle, ChartTitle, DataLabel, Range


Objeto Chart

Representa un gráfico de una hoja de cálculo. El gráfico puede estar incrustado (contenido en un objeto ChartObject) o estar en otra hoja de gráficos.

Uso del objeto Chart

En esta sección se describen los siguientes métodos y propiedades para devolver un objeto Chart:

•	Propiedad Chart

•	Método Charts

•	Propiedad ActiveChart

•	Propiedad ActiveSheet

Propiedad Chart

Use la propiedad Chart para devolver un objeto Chart que representa el gráfico contenido en un objeto ChartObject. El ejemplo siguiente establece el diseño del área del gráfico incrustado uno de la hoja de cálculo llamada "Hoja1".

Worksheets("Hoja1").ChartObjects(1).Chart. _

    ChartArea.Interior.Pattern = xlLightDown

Método Charts

El conjunto Charts contiene un objeto Chart por cada hoja de gráficos de un libro. Para devolver un solo objeto Chart, use Chart(índice), donde índice es el nombre o número de índice de la hoja de gráficos. El ejemplo siguiente cambia el color de la serie uno de la hoja de gráficos uno.

Charts(1).SeriesCollection(1).Interior.Color = RGB(255, 0, 0)

El número de índice del gráfico representa la posición de la hoja de gráficos en la barra de etiquetas del libro. Charts(1) es el primer gráfico (en el extremo izquierdo) del libro; Charts(Charts.Count) es el último (en el extremo derecho). En el recuento de índice se incluyen todas las hojas de gráficos, aunque estén ocultas. El nombre de la hoja de gráficos se muestra en la etiqueta de libro del gráfico. Puede usar la propiedad Name para establecer o devolver el nombre del gráfico.

El ejemplo siguiente mueve el gráfico llamado "Ventas" al final del libro activo.

Charts("ventas").Move after:=Sheets(Sheets.Count)

El objeto Chart también es un elemento del conjunto Sheets. El conjunto Sheets contiene todas las hojas del libro (hojas de gráficos y hojas de cálculo). Para devolver un sola hoja, use Sheets(índice), donde índice es el nombre o número de índice de la hoja.

Propiedad ActiveChart

Si un gráfico es el objeto activo, puede usar la propiedad ActiveChart para hacer referencia a él. Una hoja de gráficos está activa si el usuario la ha seleccionado o bien si se ha activado con el método Activate. El ejemplo siguiente activa la hoja de gráficos uno y, a continuación, establece el tipo y el título del gráfico.

Charts(1).Activate

With ActiveChart

.Type = xlLine

.HasTitle = True

.ChartTitle.Text = "Ventas de enero"

End With

Un gráfico incrustado está activo si el usuario lo ha seleccionado o bien si el objeto ChartObject que lo contiene se ha activado con el método Activate. El ejemplo siguiente activa el gráfico incrustado uno de la hoja de cálculo uno y, a continuación, establece el tipo y el título del gráfico. Tenga en cuenta que, una vez activado el gráfico incrustado, el código del ejemplo será igual que en el ejemplo anterior. El uso de la propiedad ActiveChart permite escribir código de Visual Basic que puede hacer referencia a un gráfico incrustado o una hoja de gráficos, el que esté activo.

Worksheets(1).ChartObjects(1).Activate

ActiveChart.Type = xlLine

ActiveChart.HasTitle = True

ActiveChart.ChartTitle.Text = "Ventas de enero"

Propiedad ActiveSheet

Si una hoja de gráfico es la hoja activa, puede usar la propiedad ActiveSheet para hacer referencia a ella. El ejemplo siguiente usa el método Activate para activar la hoja de gráficos llamada "Gráfico1" y, a continuación, establece en azul el color interior de la serie uno del gráfico.

Charts("Gráfico1").Activate

ActiveSheet.SeriesCollection(1).Interior.ColorIndex = 5


Axis, ChartArea, ChartGroups, ChartObjects, ChartTitle, Corners, Floor, Legend, OLEObjects, PageSetup, PlotArea, SeriesCollection, Walls


Objeto ChartArea

Representa el área de un gráfico. El área de un gráfico 2D contiene los ejes, el título del gráfico, los títulos de los ejes y la leyenda. El área de un gráfico 3D contiene el título y la leyenda del gráfico; no incluye el área de trazado (el área que contiene el área del gráfico donde se trazan los datos). Para obtener más información acerca de cómo dar formato al área de trazado, vea el objeto PlotArea.

Uso del objeto ChartArea

Use la propiedad ChartArea para devolver el objeto ChartArea. El ejemplo siguiente establece el diseño del área del gráfico incrustado uno de la hoja de cálculo llamada "Hoja1".

Worksheets("Hoja1").ChartObjects(1).Chart. _

    ChartArea.Interior.Pattern = xlLightDown


Objeto ChartGroup

Representa una o varias series trazadas en un gráfico empleando el mismo formato. Un gráfico contiene uno o más grupos de gráficos, cada grupo de gráficos contiene una o más series y cada serie contiene uno o varios puntos. Por ejemplo, un gráfico individual podría contener un grupo de gráficos de líneas que contuviera todas las series trazadas usando el formato de gráficos de líneas, y un grupo de gráficos de barras que contuviera todas las series trazadas usando el formato de gráfico de barras. El objeto ChartGroup es elemento del conjunto ChartGroups.

Uso del objeto ChartGroup

Para devolver un solo objeto ChartGroup, use ChartGroups(índice), donde índice es el número de índice del grupo de gráficos. El ejemplo siguiente agrega líneas de unión al grupo de gráficos uno de la hoja de gráficos uno.

Charts(1).ChartGroups(1).HasDropLines = True

Si el gráfico está activado, puede usar la propiedad ActiveChart:

Charts(1).Activate

ActiveChart.ChartGroups(1).HasDropLines = True

Dado que el número de índice de un grupo de gráficos en particular puede cambiar si se modifica el formato de gráfico del grupo, puede ser conveniente usar uno de los métodos abreviados del grupo de gráficos con nombre para devolver un grupo de gráficos en concreto. El método PieGroups devuelve el conjunto de grupos de gráficos circulares de un gráfico, el método LineGroups devuelve el conjunto de grupos de gráficos de líneas, etc. Cada uno de estos métodos puede emplearse con un número de índice para devolver un objeto ChartGroup individual o bien sin número de índice para devolver un conjunto ChartGroups. Los siguientes métodos de grupos de gráficos están disponibles:

•	Método AreaGroups

•	Método BarGroups

•	Método ColumnGroups

•	Método DoughnutGroups

•	Método LineGroups

•	Método PieGroups


DownBars, DropLines, HiLoLines, SeriesCollection, SeriesLines, UpBars


Objeto de conjunto ChartGroups

Un conjunto de todos los objetos ChartGroup del gráfico especificado. Cada objeto ChartGroup representa una o más series trazadas en un gráfico empleando el mismo formato. Un gráfico contiene uno o más grupos de gráficos, cada grupo de gráficos contiene una o más series y cada serie contiene uno o varios puntos. Por ejemplo, un gráfico individual podría contener un grupo de gráficos de línea que contuviera todas las series trazadas usando el formato de gráficos de líneas, y un grupo de gráficos de barras que contuviera todas las series trazadas usando el formato de gráfico de barras.

Uso del conjunto ChartGroups

Use el método ChartGroups para devolver el conjunto ChartGroups. El ejemplo siguiente muestra el número de grupos de gráficos del gráfico incrustado uno en la hoja de cálculo uno.

MsgBox Worksheets(1).ChartObjects(1).Chart.ChartGroups.Count

Para devolver un solo objeto ChartGroup, use ChartGroups(índice), donde índice es el número de índice del grupo de gráficos. El ejemplo siguiente agrega líneas de unión al grupo de gráficos uno de la hoja de gráficos uno.

Charts(1).ChartGroups(1).HasDropLines = True

Si el gráfico está activado, puede usar ActiveChart:

Charts(1).Activate

ActiveChart.ChartGroups(1).HasDropLines = True

Dado que el número de índice de un grupo de gráficos en particular puede cambiar si se modifica el formato de gráfico del grupo, puede ser conveniente usar uno de los métodos abreviados del grupo de gráficos con nombre para devolver un grupo de gráficos en concreto. El método PieGroups devuelve el conjunto de grupos de gráficos circulares de un gráfico, el método LineGroups devuelve el conjunto de grupos de gráficos de líneas, etc. Cada uno de estos métodos puede emplearse con un número de índice para devolver un objeto ChartGroup individual o bien sin número de índice para devolver un conjunto ChartGroups. Los siguientes métodos de grupos de gráficos están disponibles:

•	Método AreaGroups

•	Método BarGroups

•	Método ColumnGroups

•	Método DoughnutGroups

•	Método LineGroups

•	Método PieGroups


Objeto ChartObject

Representa un gráfico incrustado en una hoja de cálculo. El objeto ChartObject actúa como contenedor de un objeto Chart. Las propiedades y los métodos del objeto ChartObject controlan el aspecto y el tamaño del gráfico incrustado en la hoja. El objeto ChartObject es elemento del conjunto ChartObjects. El conjunto ChartObjects contiene todos los gráficos incrustados de una hoja individual.

Uso del objeto ChartObject

Para devolver un solo objeto ChartObject, use ChartObjects(índice), donde índice es el nombre o número de índice del gráfico incrustado. El ejemplo siguiente establece el diseño del área del gráfico incrustado uno de la hoja de cálculo llamada "Hoja1".

Worksheets("Hoja1").ChartObjects(1).Chart. _

    ChartArea.Interior.Pattern = xlLightDown

El nombre del gráfico incrustado aparece en el cuadro Nombre cuando se selecciona el gráfico incrustado. Use la propiedad Name para establecer o devolver el nombre del objeto ChartObject. El ejemplo siguiente coloca bordes redondeados alrededor del gráfico incrustado llamado "Gráfico 1" en la hoja de cálculo "Hoja1".

Worksheets("Hoja1").ChartObjects("gráfico 1").RoundedCorners = True


Objeto de conjunto ChartObjects

Un conjunto de todos los objetos ChartObject de la hoja de gráficos, hoja de diálogo u hoja de cálculo especificada. Cada objeto ChartObject representa un gráfico incrustado. El objeto ChartObject actúa como contenedor de un objeto Chart. Las propiedades y los métodos del objeto ChartObject controlan el aspecto y el tamaño del gráfico incrustado en la hoja.

Uso del conjunto ChartObjects

Use el método ChartObjects para devolver el conjunto ChartObjects. El ejemplo siguiente elimina todos los gráficos incrustados de la hoja de cálculo llamada "Hoja1".

Worksheets("Hoja1").ChartObjects.Delete

Use el método Add para crear un nuevo gráfico incrustado vacío y agregarlo al conjunto. Use el método ChartWizard para agregar datos y dar formato al nuevo gráfico vacío. El ejemplo siguiente crea un nuevo gráfico incrustado y después agrega los datos de las celdas A1:A20 al gráfico de líneas.

Dim graf As ChartObject

Set graf = Worksheets("Hoja1").ChartObjects.Add(100, 30, 400, 250)

graf.Chart.ChartWizard source:=Worksheets("Hoja1").Range("a1:a20"), _

    gallery:=xlLine, title:="Gráfico nuevo"

Para devolver un solo objeto ChartObject, use ChartObjects(índice), donde índice es el nombre o número de índice del gráfico incrustado. El ejemplo siguiente establece el diseño del área del gráfico incrustado uno de la hoja de cálculo llamada "Hoja1".

Worksheets("Hoja1").ChartObjects(1).Chart. _

    ChartArea.Interior.Pattern = xlLightDown


Objeto de conjunto Charts

Un conjunto de todas las hojas de gráficos del libro especificado o activo. Cada hoja de gráficos está representada por un objeto Chart. No se incluyen los gráficos incrustados en hojas de cálculo o de diálogo. Para obtener más información acerca de gráficos incrustados, vea los objetos Chart o ChartObject.

Uso del conjunto Charts

Use la propiedad Charts para devolver el conjunto Charts. El ejemplo siguiente imprime todas las hojas de gráficos del libro activo.

Charts.PrintOut

Utilice el método Add para crear una nueva hoja de gráficos y agregarla al libro. El ejemplo siguiente agrega una nueva hoja de gráficos al libro activo y sitúa la hoja nueva inmediatamente después de la hoja de cálculo llamada "Hoja1".

Charts.Add after:=Worksheets("Hoja1")

Puede combinar el método Add con el método ChartWizard para agregar un nuevo gráfico que contenga datos de una hoja de cálculo. El ejemplo siguiente agrega un gráfico de líneas nuevo basado en las celdas A1:A20 de la hoja de cálculo llamada "Hoja1".

With Charts.Add

.ChartWizard source:=Worksheets("Hoja1").Range("a1:a20"), _

   	 gallery:=xlLine, title:="Datos de febrero"

End With

Para devolver un solo objeto Chart, use Charts(índice), donde índice es el nombre o número de índice de la hoja de gráficos. El ejemplo siguiente cambia a rojo el color de la serie uno de la hoja de gráficos uno.

Charts(1).SeriesCollection(1).Interior.Color = RGB(255, 0, 0)

El conjunto Sheets contiene todas las hojas del libro (hojas de gráficos y hojas de cálculo). Para devolver un sola hoja, use Sheets(índice), donde índice es el nombre o número de la hoja.


Objeto ChartTitle

Representa el título del gráfico.

Uso del objeto ChartTitle

Use la propiedad ChartTitle para devolver el objeto ChartTitle. El ejemplo siguiente agrega un título al gráfico incrustado uno de la hoja de cálculo llamada "Hoja1."

With Worksheets("Hoja1").ChartObjects(1).Chart

    .HasTitle = True

    .ChartTitle.Text = "Ventas de febrero"

End With

Comentarios

El objeto ChartTitle no existe y no es posible usarlo a menos que la propiedad HasTitle del gráfico sea True.


Objeto DataLabel

Representa el rótulo de datos de una línea de tendencia o un punto del gráfico. En una serie, el objeto DataLabel es elemento del conjunto DataLabels. El conjunto DataLabels contiene un objeto DataLabel por cada punto. Para una serie sin puntos definibles (por ejemplo, una serie de área), el conjunto DataLabels contiene un único objeto DataLabel.

Uso del objeto DataLabel

Para devolver un solo objeto DataLabel, use DataLabels(índice), donde índice es el número de índice del rótulo de datos. El ejemplo siguiente establece el formato numérico del quinto rótulo de datos de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno.

Worksheets(1).ChartObjects(1).Chart _

.SeriesCollection(1).DataLabels(5).NumberFormat = "0,000"

Use la propiedad DataLabel para devolver el objeto DataLabel de un solo punto. El ejemplo siguiente activa el rótulo de datos del segundo punto de la serie uno de la hoja de gráficos llamada "Gráfico1" y establece el texto del rótulo como "Sábado".

With Charts("gráfico1")

    With .SeriesCollection(1).Points(2)

        .HasDataLabel = True

        .DataLabel.Text = "Sábado"

    End With

End With

En una línea de tendencia, la propiedad DataLabel devuelve el texto mostrado con la línea de tendencia. Puede ser la ecuación, el valor R cuadrado o ambos (si se muestran los dos). El ejemplo siguiente establece el texto de la línea de tendencia para mostrar únicamente la ecuación y, a continuación, coloca el texto del rótulo de datos de la celda A1 de la hoja de cálculo llamada "Hoja1".

With Charts("gráfico1").SeriesCollection(1).Trendlines(1)

    .DisplayRSquared = False

    .DisplayEquation = True

    Worksheets("sheet1").Range("a1").Value = .DataLabel.Text

End With


Objeto de conjunto DataLabels

Un conjunto de todos los objetos DataLabel de la serie especificada. Cada objeto DataLabel representa un rótulo de datos de un punto o una línea de tendencia. Para una serie sin puntos definibles (como una serie de área), el conjunto DataLabels contiene un único rótulo de datos.

Uso del conjunto Datalabels

Use el método DataLabels para devolver el conjunto DataLabels. El ejemplo siguiente establece el formato numérico de los rótulo de datos de la serie uno de la hoja de gráficos uno.

With Charts(1).SeriesCollection(1)

    .HasDataLabels = True

    .DataLabels.NumberFormat = "##.##"

End With

Para devolver un solo objeto DataLabel, use DataLabels(índice), donde índice es el número de índice del rótulo de datos. El ejemplo siguiente establece el formato numérico del quinto rótulo de datos de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno.

Worksheets(1).ChartObjects(1).Chart _

.SeriesCollection(1).DataLabels(5).NumberFormat = "0,000"


Objeto Dialog

Representa un cuadro de diálogo incorporado de Microsoft Excel. El objeto Dialog es elemento del conjunto Dialogs. El conjunto Dialogs contiene todos los cuadros de diálogo incorporados de Microsoft Excel. No se pueden crear cuadros de diálogo incorporados nuevos ni agregarlos al conjunto. Lo único que puede hacerse con un objeto Dialog es emplearlo con el método Show para mostrar el cuadro de diálogo correspondiente.

Uso del objeto Dialog

Para devolver un solo objeto Dialog, use Dialogs(índice), donde índice es la constante incorporada que identifica al cuadro de diálogo. El ejemplo siguiente ejecuta el cuadro de diálogo incorporado Abrir (menú Archivo). El método Show devuelve True si Microsoft Excel abre un archivo correctamente o bien False si el usuario cancela el cuadro de diálogo.

dlgAnswer = Application.Dialogs(xlDialogOpen).Show

La biblioteca de objetos de Microsoft Excel Visual Basic incluye constantes incorporadas para numerosos cuadros de diálogo incorporados. Cada constante se forma con el prefijo "xlDialog" seguido del nombre del cuadro de diálogo. Por ejemplo, la constante del cuadro de diálogo Aplicar nombres es xlDialogApplyNames y la constante del cuadro de diálogo Buscar archivo es xlDialogFindFile. Estas siguientes constantes son elementos del tipo enumerado XlBuiltinDialog. Para obtener más información acerca de las constantes disponibles, vea Listas de argumentos de los cuadros de diálogo incorporados.


Objeto de conjunto Dialogs

Un conjunto de todos los objetos Dialog de la aplicación Microsoft Excel. Cada objeto Dialog representa un cuadro de diálogo incorporado. No se pueden crear cuadros de diálogo incorporados nuevos ni agregarlos al conjunto. Lo único que puede hacerse con un objeto Dialog es emplearlo con el método Show para mostrar el cuadro de diálogo correspondiente.

Uso del conjunto Dialogs

Use la propiedad Dialogs para devolver el conjunto Dialogs. El ejemplo siguiente muestra el número de cuadros de diálogo incorporados en Microsoft Excel disponibles.

MsgBox Application.Dialogs.Count

Para devolver un solo objeto Dialog, use Dialogs(índice), donde índice es la constante incorporada que identifica al cuadro de diálogo. El ejemplo siguiente ejecuta el cuadro de diálogo incorporado Abrir archivo.

dlgAnswer = Application.Dialogs(xlDialogOpen).Show

La biblioteca de objetos de Microsoft Excel Visual Basic incluye constantes incorporadas para numerosos cuadros de diálogo incorporados. Cada constante se forma con el prefijo "xlDialog" seguido del nombre del cuadro de diálogo. Por ejemplo, la constante del cuadro de diálogo Aplicar nombres es xlDialogApplyNames y la constante del cuadro de diálogo Buscar archivo es xlDialogFindFile. Estas siguientes constantes son elementos del tipo enumerado XlBuiltinDialog. Para obtener más información acerca de las constantes disponibles, vea Listas de argumentos de los cuadros de diálogo incorporados.


Objeto DownBars

Representa las barras descendentes de un grupo de gráficos. Las barras descendentes conectan puntos de la primera serie con valores más bajos de la última serie (las líneas bajan desde la primera serie). Sólo los grupos de líneas bidimensionales que contengan al menos dos series pueden tener barras descendentes. Este objeto no es un conjunto. Ningún objeto representa una barra descendente individual; las barras ascendentes y descendentes se activan para todos los puntos de un grupo de gráficos o bien se desactivan.

Uso del objeto DownBars

Use la propiedad DownBars para devolver el objeto DownBars. El ejemplo siguiente activa las barras ascendentes y descendentes para el grupo de gráficos uno del gráfico incrustado uno de la hoja de cálculo llamada "Hoja5". A continuación, el ejemplo establece como azul el color de las barras ascendentes y como rojo del de las barras descendentes.

With Worksheets("Hoja5").ChartObjects(1).Chart.ChartGroups(1)

    .HasUpDownBars = True

    .UpBars.Interior.Color = RGB(0, 0, 255)

    .DownBars.Interior.Color = RGB(255, 0, 0)

End With

Comentarios

Si la propiedad HasUpDownBars es False, la mayoría de las propiedades del objeto DownBars estarán desactivadas.


Objeto DropLines

Representa las líneas de unión de un grupo de gráficos. Las líneas de unión conectan los puntos del gráfico con el eje x. Solamente los gráficos de líneas y áreas pueden tener líneas de unión. Este objeto no es un conjunto. Ningún objeto representa una línea de unión individual; las líneas de unión se activan para todos los puntos de un grupo de gráficos o bien se desactivan.

Uso del objeto DropLines

Use la propiedad DropLines para devolver el objeto DropLines. El ejemplo siguiente activa las líneas de unión del grupo de gráficos uno del gráfico incrustado uno y, a continuación, establece en rojo el color de las líneas de unión.

Worksheets("Hoja1").ChartObjects(1).Activate

ActiveChart.ChartGroups(1).HasDropLines = True

ActiveChart.ChartGroups(1).DropLines.Border.ColorIndex = 3

Comentarios

Si la propiedad HasDropLines es False, se desactivarán la mayoría de las propiedades del objeto DropLines.


Objeto ErrorBars

Representa las barras de error de una serie del gráfico. Las barras de error indican el grado de incertidumbre de los datos del gráfico. Sólo pueden tener barras de error los grupos de áreas, barras, columnas, líneas y dispersión de un gráfico bidimensional. Sólo pueden tener barras de error X e Y las series de los grupos de dispersión. Este objeto no es un conjunto. Ningún objeto representa una barra de error individual; las barras de error X o Y se activan para todos los puntos de una serie o bien se desactivan.

Uso del objeto ErrorBars

Use la propiedad ErrorBars para devolver el objeto ErrorBars. El ejemplo siguiente activa las barras de error para la serie uno del gráfico incrustado uno y, a continuación, establece el estilo final para las barras de error.

Worksheets("Hoja1").ChartObjects(1).Activate

ActiveChart.SeriesCollection(1).HasErrorBars = True

ActiveChart.SeriesCollection(1).ErrorBars.EndStyle = xlNoCap

Comentarios

El método ErrorBar cambiar el formato y el tipo de las barras de error.


Objeto Floor

Representa el plano inferior de un gráfico 3D.

Uso del objeto Floor

Use la propiedad Floor para devolver el objeto Floor. El ejemplo siguiente establece en aguamarina el color del plano inferior del gráfico incrustado uno. El ejemplo fallará si el gráfico no es 3D.

Worksheets("Hoja1").ChartObjects(1).Activate

ActiveChart.Floor.Interior.Color = RGB(0, 255, 255)


Objeto Font

Contiene los atributos de fuente (nombre, tamaño, color, etc.) de un objeto.

Uso del objeto Font

Use la propiedad Font para devolver el objeto Font. El ejemplo siguiente da formato de negrita a las celdas A1:C5.

Worksheets("Hoja1").Range("a1:c5").Font.Bold = True

Si no desea dar el mismo formato a todo el texto contenido en una celda o un gráfico, use la propiedad Characters para devolver un subconjunto del texto.


AxisTitle, Characters, ChartArea, ChartTitle, DataLabel, DataLabels, Legend, LegendEntry, Range, Style, TickLabels


Objeto Gridlines

Representa las líneas de división principales o secundarias del eje de un gráfico. Las líneas de división extienden las marcas de graduación en el eje de un gráfico para permitir ver mejor los valores asociados con los marcadores de datos. Este objeto no es un conjunto. Ningún objeto representa una línea de división individual; se activan todas las líneas de división para un eje o bien se desactivan.

Uso del objeto Gridlines

Use la propiedad MajorGridlines para devolver el objeto GridLines que representa las líneas de división principales del eje. Use la propiedad MinorGridlines para devolver el objeto GridLines que representa las líneas de división secundarias. Es posible devolver a la vez las líneas de división principales y secundarias.

El ejemplo siguiente activa las líneas de división principales del eje de categorías de la hoja de gráficos llamada "Gráfico1" y, a continuación, da formato a las líneas de división como líneas de rayas azules.

With Charts("Gráfico1").Axes(xlCategory)

.HasMajorGridlines = True

.MajorGridlines.Border.Color = RGB(0, 0, 255)

.MajorGridlines.Border.LineStyle = xlDash

End With


Objeto HiLoLines

Representa las líneas de máximos y mínimos de un grupo de gráficos. Las líneas de máximos y mínimos conectan el punto máximo con el mínimo en todas las categorías del grupo de gráficos. Sólo pueden tener líneas de máximos y mínimos los grupos de líneas bidimensionales. Este objeto no es un conjunto. Ningún objeto representa una línea de máximo y mínimo individual; este tipo de líneas se activan para todos los puntos de un grupo de gráficos o bien se desactivan.

Uso del objeto HiLoLines

Use la propiedad HiLoLines para devolver el objeto HiLoLines. El ejemplo siguiente usa el método AutoFormat para crear un gráfico de cotizaciones de máximos, mínimos, cierre en el gráfico incrustado uno (el gráfico debe contener tres series) de la hoja de cálculo uno. A continuación, el ejemplo convierte en azul las líneas de máximos y mínimos.

Worksheets(1).ChartObjects(1).Activate

ActiveChart.AutoFormat gallery:=xlLine, format:=8

ActiveChart.ChartGroups(1).HiLoLines.Border.Color = RGB(0, 0, 255)

Comentarios

Si la propiedad HasHiLoLines es False, la mayoría de las propiedades del objeto HiLoLines estarán desactivadas.


Objeto Interior

Representa el interior de un objeto.

Uso del objeto Interior

Use la propiedad Interior para devolver el objeto Interior. El siguiente ejemplo establece en rojo el color del interior de la celda A1.

Worksheets("Hoja1").Range("a1").Interior.ColorIndex = 3


AxisTitle, ChartArea, ChartObject, ChartObjects, ChartTitle, DataLabel, DataLabels, DownBars, FormatCondition, Floor, Legend, LegendKey, OLEObject, OLEObjects, PlotArea, Point, Range, Series, Style, UpBars, Walls


Objeto Legend

Representa la leyenda de un gráfico. Cada gráfico puede tener una sola leyenda. El objeto Legend contiene uno o varios objetos LegendEntry; cada objeto LegendEntry contiene un objeto LegendKey.

Uso del objeto Legend

Use la propiedad Legend para devolver el objeto Legend. El ejemplo siguiente establece en negrita el estilo de fuente de la leyenda del gráfico incrustado uno de la hoja de cálculo uno.

Worksheets(1).ChartObjects(1).Chart.Legend.Font.Bold = True

Comentarios

La leyenda del gráfico no estará visible a menos que la propiedad HasLegend sea True. Si esta propiedad es False, fallarán las propiedades y los métodos del objeto Legend.


Objeto de conjunto LegendEntries

Un conjunto de todos los objetos LegendEntry de la leyenda de gráfico especificada. Cada entrada de leyenda consta de dos partes: el texto de la entrada, que es el nombre de la serie o línea de tendencia correspondiente a la entrada de leyenda; y el marcador de entrada, que conecta visualmente la entrada de leyenda con la serie o línea de tendencia correspondiente del gráfico. Las propiedades de formato del marcador de entrada y su serie o línea de tendencia correspondiente están contenidas en el objeto LegendKey.

Uso del conjunto LegendEntries

Use el método LegendEntries para devolver el conjunto LegendEntries. El ejemplo siguiente ejecuta un bucle en el conjunto de entradas de leyenda del gráfico incrustado uno y cambia el color de cada fuente.

With Worksheets("Hoja1").ChartObjects(1).Chart.Legend

    For i = 1 To .LegendEntries.Count

        .LegendEntries(i).Font.ColorIndex = 5

    Next

End With

Para devolver un solo objeto LegendEntry, use LegendEntries(índice), donde índice es el número de índice de la entrada de leyenda. No es posible devolver entradas de leyenda por nombre.

El número de índice representa la posición de la entrada en la leyenda. LegendEntries(1) está en la parte superior de la leyenda; LegendEntries(LegendEntries.Count) está en la parte inferior. El ejemplo siguiente cambia a cursiva el estilo de fuente del texto de la entrada de leyenda que está en la parte superior de la leyenda (suele ser la leyenda de la serie uno) en el gráfico incrustado uno.

Worksheets("Hoja1").ChartObjects(1).Chart _

    .Legend.LegendEntries(1).Font.Italic = True


Objeto LegendEntry

Representa una entrada de leyenda de un gráfico. El objeto LegendEntry es un elemento del conjunto LegendEntries. El conjunto LegendEntries contiene todos los objetos LegendEntry de la leyenda.

Cada entrada de leyenda consta de dos partes: el texto de la entrada, que es el nombre de la serie correspondiente a la entrada de leyenda; y un marcador de entrada, que conecta visualmente la entrada de leyenda con la serie o línea de tendencia correspondiente del gráfico. Las propiedades de formato del marcador de entrada y su serie o línea de tendencia correspondiente están contenidas en el objeto LegendKey.

No se puede cambiar el texto de una entrada de leyenda. Los objetos LegendEntry admiten formato de fuente y pueden eliminarse. No se admite formato de diseño para líneas de leyenda. La posición y el tamaño de las entradas son fijos.

Uso del objeto LegendEntry

Para devolver un solo objeto LegendEntry, use LegendEntries(índice), donde índice es el número de índice de la entrada de leyenda. No es posible devolver entradas de leyenda por nombre.

El número de índice representa la posición de la entrada en la leyenda. LegendEntries(1) está en la parte superior de la leyenda y LegendEntries(LegendEntries.Count) está en la parte inferior. El ejemplo siguiente cambia la fuente del texto de la entrada de leyenda que está en la parte superior de la leyenda (suele ser la leyenda de la serie uno) en la hoja de cálculo llamada “Hoja1”.

Worksheets("Hoja1").ChartObjects(1).Chart _

    .Legend.LegendEntries(1).Font.Italic = True

Comentarios

No hay una forma directa de devolver la serie o la línea de tendencia correspondiente a la entrada de leyenda.

Después de eliminar las entradas de leyenda, el único modo de restaurarlas consiste en eliminar y volver a crear la leyenda que las contenía, estableciendo la propiedad HasLegend del gráfico como False y, a continuación, otra vez como True.


Objeto LegendKey

Representa una clave de la leyenda de un gráfico. Cada clave de leyenda es un gráfico que conecta visualmente una entrada de leyenda con su serie o línea de tendencia asociada en el gráfico. La clave de leyenda está conectada con su serie o línea de tendencia asociada de tal modo que, al cambiar el formato de una, cambie automáticamente el formato de la otra.

Uso del objeto LegendKey

Use la propiedad LegendKey para devolver el objeto LegendKey. El ejemplo siguiente cambia el color del fondo del marcador de la entrada de leyenda de la parte superior de la leyenda del gráfico incrustado uno en la hoja de cálculo llamada “Hoja1”. De este modo se cambia simultáneamente el formato de todos los puntos de la serie correspondiente a esta entrada de leyenda. La serie asociada debe admitir marcadores de datos.

Worksheets("Hoja1").ChartObjects(1).Chart _

.Legend.LegendEntries(1).LegendKey.MarkerBackgroundColorIndex = 5


Objeto Mailer

Representa el formulario de PowerTalk para un libro. Este objeto sólo está disponible en Macintosh, con la ampliación del sistema PowerTalk instalada.

Uso del objeto Mailer

Use la propiedad Mailer para devolver el objeto Mailer. El ejemplo siguiente establece la propiedad Subject del formulario adjunto al libro activo.

ActiveWorkbook.HasMailer = True

ActiveWorkbook.Mailer.Subject = "Este es el libro."


Objeto Name

Representa un nombre definido para un rango de celdas. Los nombres pueden ser incorporados, como Base_de_datos, Área_de_impresión y Auto_abrir, o personalizados.

Objetos Application, Workbook y Worksheet

El objeto Name es elemento del conjunto Names para los objetos Application,Workbook y Worksheet. Para devolver un solo objeto Name, use Names(índice), donde índice es el nombre definido o número de índice del nombre.

El número de índice indica la posición del nombre dentro del conjunto. Los nombres de sitúan en orden alfabético, de la A a la Z, y no distinguen el uso de mayúsculas o minúsculas (es el mismo orden que en los cuadros de diálogo Definir nombre y Aplicar nombres, que aparecen cuando se hace clic en el comando Nombre del menú Insertar). El ejemplo siguiente muestra la referencia de celda del primer nombre del conjunto de la aplicación.

MsgBox Names(1).RefersTo

El ejemplo siguiente elimina el nombre "miRangoOrden" del libro activo.

ActiveWorkbook.Names("miRangoOrden").Delete

Utilice la propiedad Name para devolver o establecer el texto del propio nombre. El ejemplo siguiente cambia el nombre del primer objeto Name del libro activo.

Names(1).Name = "valores_bolsa"

Objetos Range

Aunque un objeto Range puede tener más de un nombre, no hay un conjunto Names para el objeto Range. Use Name con un objeto Range para devolver el primer nombre de la lista de nombres (ordenados alfabéticamente) que tiene asignada el rango. El ejemplo siguiente establece la propiedad Visible del primer nombre asignado a las celdas A1:B1 de la hoja de cálculo uno.

Worksheets(1).Range("a1:b1").Name.Visible = False


Objeto de conjunto Names

Un conjunto de todos los objetos Name del libro o la aplicación. Cada objeto Name representa un nombre definido para un rango de celdas. Los nombres pueden ser incorporados, como Base_de_datos, Área_de_impresión y Auto_abrir, o personalizados.

Uso del conjunto Names

Use la propiedad Names para devolver el conjunto Names. El ejemplo siguiente crea una lista de todos los nombres del libro activo, así como las direcciones a las que hacen referencia.

Set nms = ActiveWorkbook.Names

Set hoja = Worksheets(1)

For r = 1 To nms.Count

    hoja.Cells(r, 2).Value = nms(r).Name

    hoja.Cells(r, 3).Value = nms(r).RefersToRange.Address

Next

Use el método Add para crear un nombre y agregarlo al conjunto. El ejemplo siguiente crea un nombre nuevo que hace referencia a las celdas A1:C20 de la hoja de cálculo llamada "Hoja1."

Names.Add Name:="prueba", RefersTo:="=sheet1!$a$1:$c$20"

El argumento RefersTo debe especificarse en notación de estilo A1, incluidos signos de dólar ($) donde corresponda. Por ejemplo, si la celda A10 está seleccionada en la Hoja1 y se define un nombre usando el argumento RefersTo "=hoja1!A1:B1", el nuevo nombre en realidad hará referencia a las celdas A10:B10 (puesto que se ha especificado una referencia relativa). Para especificar una referencia absoluta, use "=hoja1!$A$1:$B$1".

Para devolver un solo objeto Name, use Names(índice), donde índice es el nombre definido o número de índice del nombre. El ejemplo siguiente elimina el nombre "miRangoOrden" del libro activo

ActiveWorkbook.Names("miRangoOrden").Delete


Objeto Outline

Representa un esquema de una hoja de cálculo.

Uso del objeto Outline

Use la propiedad Outline para devolver un objeto Outline. El ejemplo siguiente configura el esquema de la Hoja4 de modo que sólo se muestre el primer nivel.

Worksheets("Hoja4").Outline.ShowLevels 1


Objeto PageSetup

Representa la descripción de la configuración de página. El objeto PageSetup contiene todos los atributos de configuración de página (margen izquierdo, margen inferior, tamaño de papel, etc.) en forma de propiedades.

Uso del objeto PageSetup

Use la propiedad PageSetup para devolver un objeto PageSetup. El ejemplo siguiente establece la orientación como horizontal y, a continuación, imprime la hoja de cálculo.

With Worksheets("Hoja1")

.PageSetup.Orientation = xlLandscape

.PrintOut

End With

La instrucción With hace que resulte más sencillo y rápido establecer varias propiedades al mismo tiempo. El ejemplo siguiente establece todos los márgenes de la hoja de cálculo uno.

With Worksheets(1).PageSetup

    .LeftMargin = Application.InchesToPoints(0,5)

    .RightMargin = Application.InchesToPoints(0,75)

    .TopMargin = Application.InchesToPoints(1,5)

    .BottomMargin = Application.InchesToPoints(1)

    .HeaderMargin = Application.InchesToPoints(0,5)

    .FooterMargin = Application.InchesToPoints(0,5)

End With


Chart, Worksheet


Objeto Pane

Representa una sección de una ventana. Los objetos Pane sólo existen para las hojas de cálculo y las hojas de macros de Excel 4.0. El objeto Pane es un elemento del conjunto Panes. El conjunto Panes contiene todas las secciones que aparecen en una sola ventana.

Uso del objeto Pane

Para devolver un solo objeto Pane, use Panes(índice), donde índice es el número de índice de la sección. El ejemplo siguiente divide la ventana en la que se muestra la hoja de cálculo uno y, a continuación, se desplaza en la sección de la esquina inferior izquierda hasta que la fila cinco está en la parte superior de la sección.

Worksheets(1).Activate

ActiveWindow.Split = True

ActiveWindow.Panes(3).ScrollRow = 5


Objeto de conjunto Panes

Un conjunto de todos los objetos Pane mostrados en la ventana especificada. Los objetos Pane sólo existen para las hojas de cálculo y las hojas de macros de Excel 4.0.

Uso del conjunto Panes

Use la propiedad Panes para devolver el conjunto Panes. El ejemplo siguiente inmoviliza las secciones de la ventana activa si ésta contiene más de una sección.

If ActiveWindow.Panes.Count > 1 Then ActiveWindow.FreezePanes = True

Para devolver un solo objeto Pane, use Panes(índice), donde índice es el número de índice de la sección. El ejemplo siguiente se desplaza en la sección superior izquierda de la ventana donde se muestra Hoja1.

Worksheets("Hoja1").Activate

Windows(1).Panes(1).LargeScroll down:=1


Objeto PivotField

Representa un campo de una tabla dinámica. El objeto PivotField es un elemento del conjunto PivotFields. El conjunto PivotFields contiene todos los objetos campo de una tabla dinámica, incluidos los campos ocultos.

Uso del objeto PivotField

Para devolver un solo objeto PivotField, use PivotFields(índice), donde índice es el nombre o número de índice del campo de tabla dinámica. El ejemplo siguiente convierte el campo Año en un campo de filas de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").Orientation = xlRowField

En algunos casos puede ser más sencillo usar una de las propiedades que devuelven un subconjunto de los campos de tabla dinámica. Están disponibles las siguientes propiedades:

•	Propiedad ColumnFields

•	Propiedad DataFields

•	Propiedad HiddenFields

•	Propiedad PageFields

•	Propiedad RowFields

•	Propiedad VisibleFields


Objeto de conjunto PivotFields

Un conjunto de todos los objetos PivotField de una tabla dinámica.

Uso del conjunto PivotFields

Use el método PivotFields para devolver el conjunto PivotFields. El ejemplo siguiente enumera los campos de la tabla dinámica uno de la Hoja3.

With Worksheets("hoja3").PivotTables(1)

    For i = 1 To .PivotFields.Count

        MsgBox .PivotFields(i).Name

    Next

End With

Para devolver un solo objeto PivotField, use PivotFields(índice), donde índice es el nombre o número de índice del campo de tabla dinámica. El ejemplo siguiente convierte el campo Año en un campo de filas de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").Orientation = xlRowField

En algunos casos puede ser más sencillo usar una de las propiedades que devuelven un subconjunto de los campos de tabla dinámica. Los siguientes métodos de acceso están disponibles:

•	Propiedad ColumnFields

•	Propiedad DataFields

•	Propiedad HiddenFields

•	Propiedad PageFields

•	Propiedad RowFields

•	Propiedad VisibleFields


Objeto PivotItem

Representa un elemento de un campo de tabla dinámica. Los elementos son las entradas de datos individuales de una categoría de campo. El objeto PivotItem es un elemento del conjunto PivotItems. El conjunto PivotItems contiene todos los elementos de un objeto PivotField.

Uso del objeto PivotItem

Para devolver un solo objeto PivotItem, use PivotItems(índice), donde índice es el nombre o número de índice del elemento de tabla dinámica. El ejemplo siguiente oculta todas las entradas de la tabla dinámica uno de Hoja3 que contienen “1998” en el campo Año.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").PivotItems("1998").Visible = False


Objeto de conjunto PivotItems

Un conjunto de todos los objetos PivotItem de un campo de tabla dinámica. Los elementos son las entradas de datos individuales de una categoría de campo.

Uso del conjunto PivotItems

Use el método PivotItems para devolver el conjunto PivotItems. El ejemplo siguiente crea una lista enumerada de los nombres y elementos de los campos de tabla dinámica que contienen los campos de la tabla dinámica uno de Hoja4.

Worksheets("hoja4").Activate

With Worksheets("hoja3").PivotTables(1)

    c = 1

    For i = 1 To .PivotFields.Count

        r = 1

        Cells(r, c) = .PivotFields(i).Name

        r = r + 1

        For x = 1 To .PivotFields(i).PivotItems.Count

            Cells(r, c) = .PivotFields(i).PivotItems(x).Name

            r = r + 1

        Next

        c = c + 1

    Next

End With

Para devolver un solo objeto PivotItem, use PivotItems(índice), donde índice es el nombre o número de índice del elemento de tabla dinámica. El ejemplo siguiente oculta todas las entradas de la tabla dinámica uno de Hoja3 que contienen “1998” en el campo Año.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").PivotItems("1998").Visible = False


Objeto PivotTable

Representa una tabla dinámica de una hoja de cálculo. El objeto PivotTable es un elemento del conjunto PivotTables. El conjunto PivotTables contiene todos los objetos PivotTable de una hoja individual.

Uso del objeto PivotTable

Para devolver un solo objeto PivotTable, use PivotTables(índice), donde índice es el nombre o número de índice de la tabla dinámica. El ejemplo siguiente convierte el campo llamado “Año” en un campo de filas de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").Orientation = xlRowField

Comentarios

Puesto que la programación de tablas dinámicas puede ser complicada, normalmente será más fácil grabar las acciones de PivotTable y después revisar el código grabado. Para grabar una macro, señale a Macro en el menú Herramientas y haga clic en Grabar nueva macro.


Objeto de conjunto PivotTables

Un conjunto de todos los objetos PivotTable de la hoja de cálculo especificada.

Uso del conjunto PivotTables

Use el método PivotTables para devolver el conjunto PivotTables. El ejemplo siguiente muestra el número de tablas dinámicas de Hoja3.

MsgBox Worksheets("hoja3").PivotTables.Count

Use el método PivotTableWizard para crear una nueva tabla dinámica y agregarla al conjunto. El ejemplo siguiente crea una nueva tabla dinámica a partir de una base de datos de Microsoft Excel (contenida en el rango A1:C100).

ActiveSheet.PivotTableWizard xlDatabase, Range("A1:C100")

Para devolver un solo objeto PivotTable, use PivotTables(índice), donde índice es el nombre o número de índice de la tabla dinámica. El ejemplo siguiente convierte el campo Año en un campo de filas de la tabla dinámica uno de la Hoja3.

Worksheets("Hoja3").PivotTables(1) _

    .PivotFields("año").Orientation = xlRowField

Comentarios

Puesto que la programación de tablas dinámicas puede ser complicada, normalmente será más fácil grabar las acciones de PivotTable y después revisar el código grabado. Para grabar una macro, señale a Macro en el menú Herramientas y haga clic en Grabar nueva macro.


Objeto PlotArea

Representa el área de trazado de un gráfico. Es el área en que se trazan los datos de un gráfico. El área de trazado de un gráfico 2D contiene los marcadores de datos, rótulos de datos, líneas de división y elementos opcionales del gráfico situados en el área de gráfico. El área de trazado de un gráfico 3D contiene los elementos anteriores más los planos, plano inferior, ejes, títulos de los ejes y rótulos de las marcas de graduación del gráfico.

El área de trazado está rodeada por el área de gráfico. El área de un gráfico 2D contiene los ejes, el título del gráfico, los títulos de los ejes y la leyenda. El área de un gráfico 3D contiene el título del gráfico y la leyenda. Para obtener más información acerca de cómo dar formato al área de gráfico, vea el objeto ChartArea.

Uso del objeto PlotArea

Use la propiedad PlotArea para devolver un objeto PlotArea. El ejemplo siguiente activa la hoja de gráficos llamada "Gráfico1", coloca un borde de rayas alrededor del área del gráfico activo y un borde punteado alrededor del área de trazado.

Charts("Gráfico1").Activate

With ActiveChart

    .ChartArea.Border.LineStyle = xlDash

    .PlotArea.Border.LineStyle = xlDot

End With


Objeto Point

Representa un solo punto de una serie de un gráfico. El objeto Point es un elemento del conjunto Points. El conjunto Points contiene todos los puntos de una serie.

Uso del objeto Point

Para devolver un solo objeto Point, use Points(índice), donde índice es el número de índice del punto. Los puntos de una serie están numerados de izquierda a derecha. Points(1) es el punto del extremo izquierdo y Points(Points.Count)es el del extremo derecho. El ejemplo siguiente establece el estilo de marcador del tercer punto de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno. La serie especificada debe ser de líneas, dispersión o radial 2D.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Points(3).MarkerStyle = xlDiamond


Objeto de conjunto Points

Un conjunto de todos los objetos Point de la serie especificada en un gráfico.

Uso del conjunto Points

Use el método Points para devolver el conjunto Points. El ejemplo siguiente agrega un rótulo de datos al último punto de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno.

Dim pts As Points

Set pts = Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Points

pts(pts.Count).ApplyDataLabels type:=xlShowValue

Para devolver un solo objeto Point, use Points(índice), donde índice es el número de índice del punto. Los puntos de una serie están numerados de izquierda a derecha. Points(1) es el punto del extremo izquierdo y Points(Points.Count) es el del extremo derecho. El ejemplo siguiente establece el estilo de marcador del tercer punto de la serie uno en el gráfico incrustado uno de la hoja de cálculo uno. La serie especificada debe ser de líneas, dispersión o radial 2D.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Points(3).MarkerStyle = xlDiamond


Objeto Range

Representa una celda, una fila, una columna, una selección de celdas que contienen uno o más bloques contiguos de celdas o un rango 3D.

Uso del objeto Range

En esta sección se describen los siguientes métodos y propiedades para devolver un objeto Range:

•	Propiedad Range

•	Propiedad Cells

•	Range y Cells

•	Propiedad Offset

•	Método Union

Propiedad Range

Use Range(arg), donde arg asigna un nombre al rango, para devolver un objeto Range que represente una sola celda o un rango de celdas. El ejemplo siguiente coloca el valor de la celda A1 en la celda A5.

Worksheets("Hoja1").Range("A5").Value = _

    Worksheets("Hoja1").Range("A1").Value

El ejemplo siguiente llena el rango A1:H8 con números aleatorios estableciendo la fórmula de cada celda del rango. La propiedad Range, si se emplea sin un calificador de objeto (un objeto colocado a la izquierda del punto), devuelve un rango de la hoja activa. Si la hoja activa no es una hoja de cálculo, este método fallará. Use el método Activate para activar una hoja de cálculo antes de usar la propiedad Range sin un calificador de objeto explícito.

Worksheets("Hoja1").Activate

Range("A1:H8").Formula = "=aleatorio()"	'El rango está en la hoja activa

El ejemplo siguiente borra el contenido del rango llamado “Criterios”.

Worksheets(1).Range("criterios").ClearContents

Si usa un argumento de texto para la dirección del rango, deberá especificar la dirección en notación de estilo A1 (no podrá usar la notación F1C1).

Propiedad Cells

Use Cells(fila; columna), donde fila es el índice de fila y columna es el índice de columna, para devolver una sola celda. El ejemplo siguiente establece en 24 el valor de la celda A1.

Worksheets(1).Cells(1, 1).Value = 24

El ejemplo siguiente establece la fórmula de la celda A2.

ActiveSheet.Cells(2, 1).Formula = "=suma(b1:b5)"

Aunque también puede usar Range("A1") para devolver la celda A1, en algunas ocasiones la propiedad Cells puede ser más conveniente, ya que permite usar una variable para la fila o la columna. El ejemplo siguiente crea encabezados de fila y columna en la Hoja1. Tenga en cuenta que, después de activar la hoja de cálculo, puede usar la propiedad Cells sin una declaración explícita de hoja (devuelve una celda de la hoja activa).

Sub SetUpTable()

Worksheets("Hoja1").Activate

For elAño = 1 To 5

Cells(1, elAño + 1).Value = 1990 + elAño

Next elAño

'

For elSemestre = 1 To 4

Cells(elSemestre + 1, 1).Value = "Q" & elSemestre

Next elSemestre

End Sub

Aunque podría usar funciones de cadena de Visual Basic para modificar las referencias de estilo A1, es mucho más sencillo (y una mejor práctica de programación) usar la notación Cells(1, 1).

Para devolver parte de un rango use expresión.Cells(fila; columna), donde expresión es una expresión que devuelve un objeto Range y fila y columna son relativas a la esquina superior izquierda del rango. El ejemplo siguiente establece la fórmula de la celda C5.

Worksheets(1).Range("c5:c10").Cells(1, 1).Formula = "=aleatorio()"

Range y Cells

Para devolver un objeto Range use Range(celda1; celda2), donde celda1 y celda2 son objetos Range que especifican las celdas inicial y final. El ejemplo siguiente establece el estilo de línea de los bordes de las celdas 1:J10.

With Worksheets(1)

    .Range(.Cells(1, 1), .Cells(10, 10)).Borders.LineStyle = xlThick

End With

Observe el punto delante de cada propiedad Cells. El punto es necesario si el resultado del enunciado With precedente se aplica a la propiedad Cells, en cuyo caso, se indica que las celdas están en la hoja de cálculo uno (sin el punto, la propiedad Cells devolvería las celdas de la hoja activa).

Propiedad Offset

Use Offset(fila; columna), donde fila y columna son los desplazamientos de fila y columna, para devolver un rango con un desplazamiento específico con respecto a otro. El ejemplo siguiente selecciona la celda situada tres filas debajo y una columna a la derecha de la celda de la esquina superior izquierda de la selección actual. No se puede seleccionar una celda que no esté en la hoja activa, por lo que primero deberá activar la hoja.

Worksheets("hoja1").Activate  'no se puede seleccionar si la hoja no es la activa

Selection.Offset(3, 1).Range("a1").Select

Método Union

Use Union(rango1, rango2, ...) para devolver rangos de varias áreas, es decir, rangos compuestos por dos o más bloques contiguos de celdas. El ejemplo siguiente crea un objeto definido como la unión de los rangos A1:B2 y C3:D4 y, a continuación, selecciona el rango definido.

Dim r1 As Range, r2 As Range, miRangoMultiÁrea As Range

Worksheets("Hoja1").Activate

Set r1 = Range("A1:B2")

Set r2 = Range("C3:D4")

Set miRangoMultiÁrea = Union(r1, r2)

miRangoMultiÁrea.Select

La propiedad Areas es muy útil para trabajar con selecciones que contienen varias áreas. Divide una selección de varias áreas en objetos Range individuales y después devuelve los objetos en forma de conjunto. Puede usar la propiedad Count del conjunto devuelto para comprobar una selección que contiene varias áreas, como se muestra en el siguiente ejemplo.

Sub NoMultiAreaSelection()

númeroDeÁreasSeleccionadas = Selection.Areas.Count

If númeroDeÁreasSeleccionadas > 1 Then

MsgBox "No puede ejecutar este comando " & _

"en selecciones de varias áreas"

End If

End Sub


Areas, Borders, Characters, Font, Interior, Name, Style


Objeto RoutingSlip

Representa la lista de distribución de un libro. La lista de distribución se emplea para enviar un libro a través del sistema de correo electrónico.

Uso del objeto RoutingSlip

Use la propiedad RoutingSlip para devolver el objeto RoutingSlip. El ejemplo siguiente establece el estilo de entrega de la lista de distribución adjunta al libro activo. Para obtener un ejemplo más detallado, vea la propiedad RoutingSlip.

ActiveWorkbook.HasRoutingSlip = True

ActiveWorkbook.RoutingSlip.Delivery = xlOneAfterAnother

Comentarios

El objeto RoutingSlip no existe y no es posible usarlo a menos que la propiedad HasRoutingSlip del libro sea True.


Objeto Scenario

Representa un escenario de una hoja de cálculo. Un escenario es un grupo de valores de entrada (denominados celdas cambiantes) que tienen nombre y se guardan. El objeto Scenario es un elemento del conjunto Scenarios. El conjunto Scenarios contiene todos los escenarios definidos de una hoja de cálculo.

Uso del objeto Scenario

Para devolver un solo objeto Scenario, use Scenarios(índice), donde índice es el nombre o número de índice del escenario. El ejemplo siguiente muestra el escenario llamado “Típico” de la hoja de cálculo “Opciones”.

Worksheets("opciones").Scenarios("típico").Show


Objeto de conjunto Scenarios

Un conjunto de todos los objetos Scenario de la hoja de cálculo especificada. Un escenario es un grupo de valores de entrada (denominados celdas cambiantes) que tienen nombre y se guardan.

Uso del conjunto Scenarios

Use el método Scenarios para devolver el conjunto Scenarios. El ejemplo siguiente crea un resumen de los escenarios de la hoja de cálculo “Opciones”, usando las celdas J10 y J20 como celdas de resultado.

Worksheets("opciones").Scenarios.CreateSummary _

    resultCells:=Worksheets("opciones").Range("j10,j20")

Use el método Add para crear un nuevo escenario y agregarlo al conjunto. El ejemplo siguiente agrega un escenario nuevo llamado “Típico” a la hoja de cálculo “Opciones”. El nuevo escenario tiene dos celdas cambiantes, A2 y A12, con los valores 55 y 60, respectivamente.

Worksheets("opciones").Scenarios.Add name:="Típico", _

    changingCells:=Worksheets("opciones").Range("A2,A12"), _

    values:=Array("55", "60")

Para devolver un solo objeto Scenario, use Scenarios(índice), donde índice es el nombre o número de índice del escenario. El ejemplo siguiente muestra el escenario llamado “Típico” de la hoja de cálculo “Opciones”.

Worksheets("opciones").Scenarios("típico").Show


Objeto Series

Representa una serie de un gráfico. El objeto Series es un elemento del conjunto SeriesCollection.

Uso del objeto Series

Para devolver un solo objeto Series, use SeriesCollection(índice), donde índice es el nombre o número de índice de la serie. El ejemplo siguiente establece el color interior de la primera serie del gráfico incrustado uno de Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart. _

    SeriesCollection(1).Interior.Color = RGB(255, 0, 0)

El número de índice de la serie indica el orden en que las series se agregaron al gráfico. SeriesCollection(1) es la primera serie que se agregó al gráfico y SeriesCollection(SeriesCollection.Count) es la última.


Objeto de conjunto SeriesCollection

Un conjunto de todos los objetos Series del gráfico o grupo de gráficos especificado.

Uso del conjunto SeriesCollection

Use el método SeriesCollection para devolver el conjunto SeriesCollection. El ejemplo siguiente agrega los datos de las celdas C1:C10 de la hoja de cálculo uno a una serie ya existente en el conjunto de series del gráfico incrustado uno.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection.Extend Worksheets(1).Range("c1:c10")

Use el método Add para crear una nueva serie y agregarla al gráfico. El ejemplo siguiente agrega los datos de las celdas A1:A19 como una nueva serie de la hoja de gráficos llamada “Gráfico1”.

Charts("Gráfico1").SeriesCollection.Add _

    source:=Worksheets("hoja1").Range("a1:a19")

Para devolver un solo objeto Series, use SeriesCollection(índice), donde índice es el nombre o número de índice de la serie. El ejemplo siguiente establece el color interior de la primera serie del gráfico incrustado uno de Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart. _

    SeriesCollection(1).Interior.Color = RGB(255, 0, 0)


Objeto SeriesLines

Representa las líneas de series de un grupo de gráficos. Las líneas de series conectan los valores de datos de cada serie. Sólo pueden tener líneas de series los grupos de gráficos de columnas o barras bidimensionales apiladas. Este objeto no es un conjunto. Ningún objeto representa una línea de serie individual; las líneas de series se activan para todos los puntos de un grupo de gráficos o bien se desactivan.

Uso del objeto SeriesLines

Use la propiedad SeriesLines para devolver un objeto SeriesLines. El ejemplo siguiente agrega líneas de series al grupo de gráficos uno del gráfico incrustado uno de la hoja de cálculo uno (el gráfico debe ser de columnas o barras bidimensionales apiladas).

With Worksheets(1).ChartObjects(1).Chart.ChartGroups(1)

    .HasSeriesLines = True

    .SeriesLines.Border.Color = RGB(0, 0, 255)

End With

Comentarios

Si la propiedad HasSeriesLines es False, la mayoría de las propiedades del objeto SeriesLines estarán desactivadas.


Objeto de conjunto Sheets

Un conjunto de todas las hojas del libro especificado o activo. El conjunto Sheets puede contener objetos Chart o Worksheet.

El conjunto Sheets es útil cuando se desean obtener hojas de cualquier tipo. Si necesita trabajar con hojas de un solo tipo, vea el tema del objeto correspondiente a ese tipo de hojas.

Uso del conjunto Sheets

Use la propiedad Sheets para devolver el conjunto Sheets. El ejemplo siguiente imprime todas las hojas del libro activo.

Sheets.PrintOut

Use el método Add para crear una nueva hoja y agregarla al conjunto. El ejemplo siguiente agrega dos hojas de gráficos al libro activo, situándolas después de la hoja dos del libro.

Sheets.Add type:=xlChart, count:=2, after:=Sheets(2)

Para devolver un solo objeto Chart o Worksheet, use Sheets(índice), donde índice es el nombre o número de índice de la hoja. El ejemplo siguiente activa la hoja llamada “hoja1”.

Sheets("Hoja1").Activate

Use Sheets(matriz) para especificar varias hojas. El ejemplo siguiente mueve las hojas llamadas "Hoja4" y "Hoja5" al principio del libro.

Sheets(Array("Hoja4", "Hoja5")).Move before:=Sheets(1)


Objeto SoundNote

This object should not be used. Sound notes have been removed from Microsoft Excel.


Objeto Style

Representa la descripción de un estilo para un rango. El objeto Style contiene todos los atributos de estilo (fuente, formato numérico, alineación, etc.) en forma de propiedades. Existen varios estilos incorporados, como Normal, Moneda y Porcentaje. El uso del objeto Style es el modo más rápido y eficaz para cambiar las propiedades de formato de varias celdas a la vez.

Para el objeto Workbook, el objeto Style es un elemento del conjunto Styles. El conjunto Styles contiene todos los estilos definidos para el libro.

Uso del objeto Style

Use la propiedad Style para devolver un objeto Style empleado con un objeto Range. El ejemplo siguiente aplica el estilo Porcentaje a las celdas A1:A10 de Hoja1.

Worksheets("hoja1").Range("a1:a10").Style.Name = "porcentaje"

Puede cambiar el aspecto de una celda cambiando las propiedades del estilo aplicado a dicha celda. Sin embargo, recuerde que al cambiar una propiedad de estilo se verán afectadas las celdas que ya tengan el formato de ese estilo.

Para devolver un solo objeto Style del conjunto Styles del libro, use Styles(índice), donde índice es el nombre o número de índice del estilo. El ejemplo siguiente cambia el estilo Normal del libro activo por el valor de la propiedad Bold del estilo.

ActiveWorkbook.Styles("Normal").Font.Bold = True

Los estilos se ordenan alfabéticamente por nombre. El número de índice del estilo representa la posición del estilo especificado en la lista ordenada de nombres de estilo. Styles(1) es el primer estilo de la lista alfabética y Styles(Styles.Count) es el último.

Para obtener más información acerca de cómo crear y modificar un estilo, vea el objeto Styles.


Range, Workbook


Objeto de conjunto Styles

Un conjunto de todos los objetos Style del libro especificado o activo. Cada objeto Style representa la descripción de un estilo de un rango. El objeto Style contiene todos los atributos de estilo (fuente, formato numérico, alineación, etc.) en forma de propiedades. Existen varios estilos incorporados, como Normal, Moneda y Porcentaje, que aparecen en el cuadro Nombre de estilo del cuadro de diálogo Estilo (menú Formato).

Uso del conjunto Styles

Use la propiedad Styles para devolver el conjunto Styles. El ejemplo siguiente crea una lista de nombres de estilo de la hoja de cálculo uno del libro activo.

For i = 1 To ActiveWorkbook.Styles.Count

    Worksheets(1).Cells(i, 1) = ActiveWorkbook.Styles(i).Name

Next

Use el método Add para crear un estilo nuevo y agregarlo al conjunto. El ejemplo siguiente crea un nuevo estilo basado en estilo Normal, modifica el borde y la fuente y, a continuación, aplica el nuevo estilo a las celdas A25:A30.

With ActiveWorkbook.Styles.Add(name:="bookman borde superior")

.Borders(xlTop).LineStyle = xlDouble

.Font.Bold = True

.Font.Name = "bookman"

End With

Worksheets(1).Range("a25:a30").Style = "bookman borde superior"

Para devolver un solo objeto Style del conjunto Styles del libro, use Styles(índice), donde índice es el nombre o número de índice del estilo. El ejemplo siguiente cambia el estilo Normal del libro activo por el valor de su propiedad Bold.

ActiveWorkbook.Styles("Normal").Font.Bold = True


Objeto TickLabels

Representa los rótulos de marcas de graduación asociados a las marcas de graduación de un eje de gráfico. Este objeto no es un conjunto. Ningún objeto representa un rótulo de marca de graduación individual; deben devolverse todos los rótulos como una sola unidad.

El texto de los rótulos de marca de graduación del eje de categorías proviene del nombre de la categoría asociada al gráfico. El texto predeterminado de los rótulos de marca de graduación del eje de categorías es el número que indica la posición de la categoría con respecto al extremo izquierdo del eje. Para cambiar el número de marcas de graduación sin rótulo entre los rótulos de las marcas, es necesario cambiar la propiedad TickLabelSpacing del eje de categorías.

El texto de los rótulos de marcas de graduación del eje de valores se calcula basándose en las propiedades MajorUnit, MinimumScale y MaximumScale del eje de valores. Para cambiar el texto de los rótulos del eje de valores, debe cambiar los valores de dichas propiedades.

Uso del objeto TickLabels

Use la propiedad TickLabels para devolver el objeto TickLabels. El ejemplo siguiente establece el formato numérico de los rótulos de marcas de graduación del eje de valores en el gráfico incrustado uno de Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart _

    .Axes(xlValue).TickLabels.NumberFormat = "0,00"


Objeto Trendline

Representa una línea de tendencia de un gráfico. Una línea de tendencia muestra la tendencia, o sentido, de los datos de una serie. El objeto Trendline es un elemento del conjunto Trendlines. El conjunto Trendlines contiene todos los objetos Trendline de una serie individual.

Uso del objeto Trendline

Para devolver un solo objeto Trendline, use Trendlines(índice), donde índice es el número de índice de la línea de tendencia. El ejemplo siguiente cambia el tipo de línea de tendencia de la primera serie del gráfico incrustado uno de la hoja de cálculo uno. Si la serie no tiene línea de tendencia, el ejemplo fallará.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Trendlines(1).Type = xlMovingAvg

El número de índice representa el orden en que se agregaron las líneas de tendencia a la serie. Trendlines(1) es la primera línea de tendencia que se agregó a la serie y Trendlines(Trendlines.Count) es la última.


Objeto de conjunto Trendlines

Un conjunto de todos los objetos Trendline de la serie especificada. Cada objeto Trendline representa una línea de tendencia de un gráfico. Una línea de tendencia muestra la tendencia, o sentido, de los datos de una serie.

Uso del conjunto Trendlines

Use el método Trendlines para devolver el conjunto Trendlines. El ejemplo siguiente muestra el número de líneas de tendencia de la serie uno de Gráfico1.

MsgBox Charts(1).SeriesCollection(1).Trendlines.Count

Use el método Add para crear una línea de tendencia nueva y agregarla a la serie. El ejemplo siguiente agrega una línea de tendencia lineal a la primera serie del gráfico incrustado uno en Hoja1.

Worksheets("Hoja1").ChartObjects(1).Chart.SeriesCollection(1) _

    .Trendlines.Add type:=xlLinear, name:="Tendencia lineal"

Para devolver un solo objeto Trendline, use Trendlines(índice), donde índice es el número de índice de la línea de tendencia. El ejemplo siguiente cambia el tipo de línea de tendencia de la primera serie del gráfico incrustado uno de la hoja de cálculo uno. Si la serie no tiene línea de tendencia, el ejemplo fallará.

Worksheets(1).ChartObjects(1).Chart. _

    SeriesCollection(1).Trendlines(1).Type = xlMovingAvg

El número de índice representa el orden en que se agregaron las líneas de tendencia a la serie. Trendlines(1) es la primera línea de tendencia que se agregó a la serie y Trendlines(Trendlines.Count) es la última.


Objeto UpBars

Representa las barras ascendentes de un grupo de gráficos. Las barras ascendentes conectan los puntos de la serie uno con valores superiores de la última serie del grupo de gráficos (las líneas suben desde la serie uno). Sólo los grupos de líneas 2D que contienen al menos dos series pueden tener barras ascendentes. Este objeto no es un conjunto. Ningún objeto representa una barra ascendente individual; las barras ascendentes se activan para todos los puntos de un grupo de gráficos o bien se desactivan.

Uso del objeto UpBars

Use la propiedad UpBars para devolver el objeto UpBars. El ejemplo siguiente activa las barras ascendentes y descendentes para el grupo de gráficos uno del gráfico incrustado uno en Hoja5. A continuación, el ejemplo establece como azul el color de las barras ascendentes y como rojo el de las barras descendentes.

With Worksheets("hoja5").ChartObjects(1).Chart.ChartGroups(1)

    .HasUpDownBars = True

    .UpBars.Interior.Color = RGB(0, 0, 255)

    .DownBars.Interior.Color = RGB(255, 0, 0)

End With

Comentarios

Si la propiedad HasUpDownBars es False, la mayoría de las propiedades del objeto UpBars estarán desactivadas.


Objeto Walls

Representa los planos de un gráfico 3D. Este objeto no es un conjunto. Ningún objeto representa un plano individual; deben devolverse todos los planos como una sola unidad.

Uso del objeto Walls

Use la propiedad Walls para devolver el objeto Walls. El ejemplo siguiente establece el diseño de los planos del gráfico incrustado uno en Hoja1. El ejemplo fallará si el gráfico no es 3D.

Worksheets("Hoja1").ChartObjects(1).Chart _

    .Walls.Interior.Pattern = xlGray75


Objeto Window

Representa una ventana. Muchas de las características de las hojas de cálculo, como las barras de desplazamiento y las líneas de división, en realidad son propiedades de la ventana. El objeto Window es un elemento del conjunto Windows. El conjunto Windows del objeto Application contiene todas las ventanas de la aplicación, mientras que el conjunto Windows del objeto Workbook sólo contiene las ventanas del libro especificado.

Uso del objeto Window

Para devolver un solo objeto Windows, use Windows(índice), donde índice es el nombre o número de índice de la ventana. El ejemplo siguiente maximiza la ventana activa.

Windows(1).WindowState = xlMaximized

Tenga en cuenta que la ventana activa siempre es Windows(1).

El epígrafe de la ventana es el texto que se muestra en la barra de título de la parte superior de la ventana cuando no está maximizada. El epígrafe también se muestra en la lista de archivos abiertos, en la parte inferior del menú Ventana. Use la propiedad Caption para establecer o devolver el epígrafe de la ventana. Al cambiar el epígrafe de la ventana no cambia el nombre del libro. El ejemplo siguiente desactiva las líneas de división de las celdas en el libro que se muestra en la ventana Libro1.xls:1.

Windows("libro1.xls:1").DisplayGridlines = False


Objeto de conjunto Windows

Un conjunto de todos los objetos Window de Microsoft Excel. El conjunto Windows del objeto Application contiene todas las ventanas de la aplicación, mientras que el conjunto Windows del objeto Workbook sólo contiene las ventanas del libro especificado.

Uso del conjunto Windows

Use la propiedad Windows para devolver el conjunto Windows. El ejemplo siguiente organiza en cascada todas las ventanas que se muestran actualmente en Microsoft Excel.

Windows.Arrange arrangeStyle:=xlCascade

Use el método NewWindow para crear una ventana nueva y agregarla al conjunto. El ejemplo siguiente crea una nueva ventana para el libro activo.

ActiveWorkbook.NewWindow

Para devolver un solo objeto Windows, use Windows(índice), donde índice es el nombre o número de índice de la ventana. El ejemplo siguiente maximiza la ventana activa.

Windows(1).WindowState = xlMaximized

Tenga en cuenta que la ventana activa siempre es Windows(1).


Objeto Workbook

Representa un libro de Microsoft Excel. El objeto Workbook es un elemento del conjunto Workbooks. El conjunto Workbooks contiene todos los objetos Workbook abiertos actualmente en Microsoft Excel.

Uso del objeto Workbook

En esta sección se describen las siguientes propiedades para devolver un objeto Workbook:

•	Propiedad Workbooks

•	Propiedad ActiveWorkbook

•	Propiedad ThisWorkbook

Propiedad Workbooks

Para devolver un solo objeto Workbooks, use Workbooks(índice), donde índice es el nombre o número de índice del libro. El ejemplo siguiente activa el libro uno.

Workbooks(1).Activate

El número de índice representa el orden en que se abrieron o crearon los libros. Workbooks(1) es el primer libro que se creó y Workbooks(Workbooks.Count) es el último. Al activar un libro no cambia su número de índice. En el recuento de índice se incluyen todos los libros, aunque estén ocultos.

La propiedad Name devuelve el nombre del libro. No se puede establecer el nombre usando esta propiedad; si necesita cambiarlo, use el método SaveAs para guardar el libro con un nombre distinto. El ejemplo siguiente activa Hoja1 del libro llamado “Aparatos.xls” (que ya debe estar abierto en Microsoft Excel).

Workbooks("aparatos.xls").Worksheets("Hoja1").Activate

Propiedad ActiveWorkbook

La propiedad ActiveWorkbook devuelve el libro activo. El ejemplo siguiente establece el nombre del autor del libro activo.

ActiveWorkbook.Author = "Juan Díaz"

Propiedad ThisWorkbook

La propiedad ThisWorkbook devuelve el libro donde se ejecuta el código de Visual Basic. En la mayoría de los casos, coincide con el libro activo. No obstante, si el código de Visual Basic forma parte de una macro automática, la propiedad ThisWorkbook no devolverá el libro activo. En este caso, el libro activo será el libro que llame a la macro automática, mientras la propiedad ThisWorkbook devolverá el libro de la macro automática.

Si desea crear una macro automática a partir del código de Visual Basic, deberá usar la propiedad ThisWorkbook para calificar cualquier enunciado que deba ejecutarse en el libro que se compile como macro automática.


Charts, Mailer, Names, PageSetup, RoutingSlip, Styles, Windows, Worksheets


Objeto de conjunto Workbooks

Un conjunto de todos los objetos Workbook abiertos actualmente en la aplicación Microsoft Excel.

Uso del conjunto Workbooks

Use la propiedad Workbooks para devolver el conjunto Workbooks. El ejemplo siguiente cierra todos los libros abiertos.

Workbooks.Close

Use el método Add para crear un nuevo libro vacío y agregarlo al conjunto. El ejemplo siguiente agrega un libro nuevo vacío a Microsoft Excel.

Workbooks.Add

Use el método Open para abrir un archivo. Así creará un libro nuevo para el archivo abierto. El ejemplo siguiente abre el archivo Matriz.xls como un libro de sólo lectura.

Workbooks.Open fileName:="matriz.xls", readOnly:=True

Para obtener más información acerca de cómo usar un solo objeto Workbook, vea el objeto Workbook.


Objeto Worksheet

Representa una hoja de cálculo. El objeto Worksheet es un elemento del conjunto Worksheets. El conjunto Worksheets contiene todos los objetos Worksheet de un libro.

Uso del objeto Worksheet

En esta sección se describen las siguientes propiedades para devolver un objeto Worksheet:

•	Propiedad Worksheets

•	Propiedad ActiveSheet

Propiedad Worksheets

Para devolver un solo objeto Worksheet, use Worksheets(índice), donde índice es el nombre o número de índice de la hoja de cálculo. El ejemplo siguiente oculta la hoja de cálculo uno del libro activo.

Worksheets(1).Visible = False

El número de índice de la hoja de cálculo representa la posición de la hoja en la barra de etiquetas del libro. Worksheets(1) es la primera hoja (en el extremo izquierdo) del libro y Worksheets(Worksheets.Count) es la última. En el recuento de índice se incluyen todos las hojas, aunque estén ocultas.

El nombre de la hoja de cálculo aparece en la etiqueta de la hoja de cálculo. Use la propiedad Name para establecer o devolver el nombre de la hoja de cálculo. El ejemplo siguiente protege los escenarios de Hoja1.

Worksheets("hoja1").Protect password:="drowssap", scenarios:=True

El objeto Worksheet también es un elemento del conjunto Sheets. El conjunto Sheets contiene todas las hojas del libro (hojas de gráficos y hojas de cálculo).

Propiedad ActiveSheet

Si una hoja de cálculo es la hoja activa, puede usar la propiedad ActiveSheet para hacer referencia a ella. El ejemplo siguiente usa el método Activate para activar la hoja de cálculo Hoja 1, establece la orientación de página como horizontal y, a continuación, imprime la hoja de cálculo.

Worksheets("Hoja1").Activate

ActiveSheet.PageSetup.Orientation = xlLandscape

ActiveSheet.PrintOut


ChartObjects, OLEObjects, Outline, PageSetup, PivotTables, Range, Scenarios


Objeto de conjunto Worksheets

Un conjunto de todos los objetos Worksheet del libro especificado o activo. Cada objeto Worksheet representa una hoja de cálculo.

Uso del conjunto Worksheets

Use la propiedad Worksheets para devolver el conjunto Worksheets. El ejemplo siguiente mueve todas las hojas de cálculo al final del libro.

Worksheets.Move after:=Sheets(Sheets.Count)

Use el método Add para crear una nueva hoja de cálculo y agregarla al conjunto. El ejemplo siguiente agrega dos nuevas hojas de cálculo antes de la hoja uno del libro activo.

Worksheets.Add count:=2, before:=Sheets(1)

Para devolver un solo objeto Worksheet, use Worksheets(índice), donde índice es el nombre o número de índice de la hoja de cálculo. El ejemplo siguiente oculta la hoja de cálculo uno del libro activo.

Worksheets(1).Visible = False

El objeto Worksheet también es un elemento del conjunto Sheets. El conjunto Sheets contiene todas las hojas del libro (hojas de gráficos y hojas de cálculo).


Objeto CalculatedFields

Devuelve un conjunto PivotField que representa todos los campos calculados de la tabla dinámica especificada. Por ejemplo, una tabla dinámica que contiene los campos Ingresos y Gastos podría tener un campo calculado denominado “Ganancias” que se defina como la diferencia entre los dos campos anteriores.

Utilizar el conjunto CalculatedFields

Utilice el método CalculatedFields para devolver el conjunto CalculatedFields. El siguiente ejemplo elimina los campos calculados de la tabla dinámica uno.

For Each campo in Worksheets(1).PivotTables("Tabla1").CalculatedFields

campo.Delete

Next

Utilice CalculatedFields(index), donde index es el nombre o número de índice del campo especificado, para devolver un único objeto PivotField del conjunto CalculatedFields.


Objeto CalculatedItems

Un conjunto de objetos PivotItem que representa todos los campos calculados de la tabla dinámica especificada. Por ejemplo, una tabla dinámica que contiene los elementos Enero, Febrero y Marzo, podría tener un campo calculado denominado “PrimerTrimestre” que se definiría como la suma de las cantidades asociadas a los tres campos anteriores.

Utilizar el conjunto CalculatedItems

Utilice el método CalculatedItems para obtener el conjunto CalculatedItems. El siguiente ejemplo crea una lista con los elementos calculados de la tabla dinámica uno y con sus fórmulas.

Set tablaDin = Worksheets(1).PivotTables(1)

For Each elem In tablaDin.PivotFields("Ventas").CalculatedItems

fila = fila + 1

With Worksheets(2)

.Cells(fila, 1).Value = elem.Name

.Cells(fila, 2).Value = elem.Formula

End With

Next

Utilice CalculatedFields(index), donde index es el nombre o número de índice del campo especificado, para devolver un único objeto PivotField del conjunto CalculatedFields.


Objeto Comment

Representa un comentario de celda. El objeto Comment es miembro del conjunto Comments.

Utilizar el objeto Comment

Utilice la propiedad Comment para obtener un objeto Comment. El siguiente ejemplo cambia el texto del comentario de la celda E5.

Worksheets(1).Range("E5").Comment.Text "revisado el " & Date

Para obtener un único comentario del conjunto Comments, utilice Comments(index), donde index es el número de índice del comentario. El siguiente ejemplo oculta el comentario dos de la hoja de cálculo uno.

Worksheets(1).Comments(2).Visible = False

Utilice el método AddComment para agregar un comentario a un rango. El siguiente ejemplo agrega un comentario a la celda E5 de la hoja de cálculo uno.

With Worksheets(1).Range("e5").AddComment

.Visible = False

.Text "revisado el " & Date

End With


Objeto Comments

Un conjunto de comentarios de celda. Cada comentario está representado por un objeto Comment.

Utilizar el conjunto Comments

Utilice la propiedad Comments para obtener el conjunto Comments. El siguiente ejemplo oculta todos los comentarios de la hoja de cálculo uno.

Set comentarios = Worksheets(1).Comments

For Each c In comentarios

c.Visible = False

Next

Utilice el método AddComment para agregar un comentario a un rango. El siguiente ejemplo agrega un comentario a la celda E5 de la hoja de cálculo uno.

With Worksheets(1).Range("e5").AddComment

.Visible = False

.Text "revisado el " & Date

End With

Para obtener un único comentario del conjunto Comments, utilice Comments(index), donde index es el número de índice del comentario. El siguiente ejemplo oculta el comentario dos de la hoja de cálculo uno.

Worksheets(1).Comments(2).Visible = False


Objeto CustomView

Una vista personalizada de un libro. El objeto CustomView es miembro del conjunto CustomViews.

Utilizar el objeto CustomView

Utilice CustomViews(index), donde index es el nombre o número de índice de la vista personalizada, para obtener un objeto CustomView. El siguiente ejemplo muestra la vista personalizada “Inventario actual”.

ThisWorkbook.CustomViews("Inventario actual").Show


Objeto CustomViews

Un conjunto de vistas personalizadas de libro. Cada vista está representada por un objeto CustomView.

Utilizar el conjunto CustomViews

Utilice la propiedad CustomViews para obtener el conjunto CustomViews. Utilice el método Add para crear una nueva vista personalizada y agregarla al conjunto CustomViews. El siguiente ejemplo crea una vista personalizada llamada “Resumen”.

ActiveWorkbook.CustomViews.Add "Resumen", True, True


Objeto DataTable

Representa una tabla de datos de un gráfico.

Utilizar el objeto DataTable

Utilice la propiedad DataTable para obtener un objeto DataTable. El siguiente ejemplo agrega una tabla de datos con un borde de contorno al gráfico incrustado uno.

With Worksheets(1).ChartObjects(1).Chart

.HasDataTable = True

.DataTable.HasBorderOutline = True

End With


Objeto HPageBreak

Representa un salto de página horizontal. El objeto HPageBreak es miembro del conjunto HPageBreaks.

Utilizar el objeto HPageBreak

Utilice HPageBreaks(index), donde index es el nombre o número de índice del salto de página, para obtener un objeto HPageBreak. El siguiente ejemplo cambia la ubicación del salto de página horizontal uno.

Worksheets(1).HPageBreaks(1).Location = Worksheets(1).Range("e5")


Objeto HPageBreaks

Un conjunto de saltos de página horizontales. Cada salto de página horizontal está representado por un objeto HPageBreak.

Utilizar el conjunto HPageBreaks

Utilice la propiedad HPageBreaks para obtener el conjunto HPageBreaks. Utilice el método Add para agregar un salto de página horizontal. El siguiente ejemplo agrega un salto de página horizontal encima de la celda activa.

ActiveSheet.HPageBreaks.Add Before:=ActiveCell


Objeto VPageBreak

Representa un salto de página vertical. El objeto VPageBreak es miembro del conjunto VPageBreaks.

Utilizar el objeto VPageBreak

Utilice VPageBreaks(index), donde index es el nombre o número de índice del salto de página, para obtener un objeto VPageBreak. El siguiente ejemplo cambia la ubicación del salto de página vertical uno.

Worksheets(1).VPageBreaks(1).Location = Worksheets(1).Range("e5")


Objeto de conjunto VPageBreaks

Un conjunto de saltos de página verticales. Cada salto de página vertical está representado por un objeto VPageBreak.

Utilizar el conjunto VPageBreaks

Utilice la propiedad VPageBreaks para obtener el conjunto VPageBreaks. Utilice el método Add para agregar un salto de página vertical. El siguiente ejemplo agrega un salto de página vertical a la izquierda de la celda activa.

ActiveSheet.VPageBreaks.Add Before:=ActiveCell


Objeto Hyperlink

Representa un hipervínculo. El objeto Hyperlink es miembro del conjunto Hyperlinks.

Utilizar el objeto Hyperlink

Utilice la propiedad Hyperlink para obtener el hipervínculo de una forma (una forma sólo puede tener un único hipervínculo). El siguiente ejemplo activa el hipervínculo de la forma uno.

Worksheets(1).Shapes(1).Hyperlink.Follow NewWindow:=True

Un rango o una hoja de cálculo pueden tener más de un hipervínculo. Para devolver un solo objeto Hyperlink, utilice Hyperlinks(index), donde index es el número de índice del hipervínculo. El siguiente ejemplo activa el hipervínculo dos del rango A1:B2.

Worksheets(1).Range("A1:B2").Hyperlinks(2).Follow


Range, Shape, Worksheet


Objeto de conjunto Hyperlinks

Representa el conjunto de hipervínculos de una hoja de cálculo o de un rango. Cada hipervínculo está representado por un objeto Hyperlink.

Utilizar el conjunto Hyperlinks

Utilice la propiedad Hyperlinks para obtener el conjunto Hyperlinks. El siguiente ejemplo recorre los hipervínculos de la hoja de cálculo uno, en busca de un vínculo que contenga la palabra “Microsoft”.

For Each h in Worksheets(1).Hyperlinks

If Instr(h.Name, "Microsoft") <> 0 Then h.Follow

Next

Utilice el método Add para crear un hipervínculo y agregarlo al conjunto Hyperlinks. El siguiente ejemplo crea un nuevo hipervínculo para la celda E5.

With Worksheets(1)

.Hyperlinks.Add .Range("E5"), "http://www.ejemplo.com"

End With


Range, Worksheet


Objeto LeaderLines

Representa las líneas guía de un gráfico. Las líneas guía conectan rótulos de datos con puntos de datos. Este objeto no es un conjunto. No existe ningún objeto que represente una línea guía individual.

Utilizar el objeto LeaderLines

Utilice la propiedad LeaderLines para obtener el objeto LeaderLines. El siguiente ejemplo agrega rótulos de datos y líneas guía azules a la serie uno del gráfico uno.

With Worksheets(1).ChartObjects(1).Chart.SeriesCollection(1)

.HasDataLabels = True

.DataLabels.Position = xlLabelPositionBestFit

.HasLeaderLines = True

.LeaderLines.Border.ColorIndex = 5

End With


Objeto RecentFile

Representa un archivo de la lista de archivos recientemente utilizados. El objeto RecentFile es un miembro del conjunto RecentFiles.

Utilizar el objeto RecentFile

Para devolver un solo objeto RecentFile, utilice RecentFiles(index), donde index es el número de índice del archivo. El siguiente ejemplo abre el archivo dos de la lista de archivos recientemente utilizados.

Application.RecentFiles(2).Open


Objeto RecentFiles

Representa la lista de archivos recientemente utilizados. Cada archivo está representado por un objeto RecentFile.

Utilizar el conjunto RecentFiles

Utilice la propiedad RecentFiles para obtener el conjunto RecentFiles. El siguiente ejemplo establece el número máximo de archivos en la lista de archivos recientemente utilizados.

Application.RecentFiles.Maximum = 6


Objeto PivotCache

Representa la memoria caché de una tabla dinámica. El objeto PivotCache es un miembro del conjunto PivotCaches.

Utilizar el objeto PivotCache

Utilice el método PivotCache para obtener el objeto PivotCache asociado a una tabla dinámica (cada tabla dinámica tiene una única memoria caché). El siguiente ejemplo tiene como efecto que la tabla dinámica uno se actualice cada vez que se abra su archivo.

Worksheets(1).PivotTables(1).PivotCache.RefreshOnFileOpen = True

Utilice PivotCaches(index), donde index es el número de índice de la caché, para obtener un objeto PivotCache del conjunto PivotCaches de un libro. El siguiente ejemplo actualiza la memoria caché uno.

ActiveWorkbook.PivotCaches(1).Refresh


PivotTable, Workbook


Objeto PivotCaches

Representa el conjunto de memorias caché de tabla dinámica en un libro. Cada memoria caché está representada por un objeto PivotCache .

Utilizar el conjunto PivotCaches

Utilice el método PivotCaches para obtener el conjunto PivotCaches. El siguiente ejemplo establece la propiedad RefreshOnFileOpen para todas las memorias caché del libro activo.

For Each caché In ActiveWorkbook.PivotCaches

caché.RefreshOnFileOpen = True

Next


Objeto PivotFormula

Representa una fórmula que se utiliza para calcular resultados en una tabla dinámica.

Utilizar el objeto PivotFormula

Utilice PivotFormulas(index), donde index es el número de índice de la fórmula o la cadena de texto a la izquierda de la fórmula, para obtener el objeto PivotFormula. El siguiente ejemplo modifica el número de índice de la fórmula uno, de manera que se resuelva después de la fórmula dos.

Worksheets(1).PivotTables(1).PivotFormulas(1).Index = 2


Objeto PivotFormulas

Representa el conjunto de fórmulas de una tabla dinámica. Cada fórmula está representada por un objeto PivotFormula.

Utilizar el conjunto PivotFormulas

Utilice el método PivotFormulas para obtener el conjunto PivotFormulas. El siguiente ejemplo crea una lista con las fórmulas de la tabla dinámica uno.

For Each fórmula in ActiveSheet.PivotTables(1).PivotFormulas

Cells(fila, 1).Value = fórmula.Formula

fila = fila + 1

Next


Objeto LinkFormat

Contiene las propiedades de un objeto OLE vinculado.

Utilizar el objeto LinkFormat

Utilice la propiedad LinkFormat para obtener el objeto LinkFormat. El siguiente ejemplo actualiza un objeto OLE del conjunto Shapes.

Worksheets(1).Shapes(1).LinkFormat.Update

Si el objeto Shape no representa un objeto vinculado, la propiedad LinkFormat falla.


Objeto OLEFormat

Contiene las propiedades de un objeto OLE.

Utilizar el objeto OLEFormat

Utilice la propiedad OLEFormat para obtener el objeto OLEFormat. El siguiente ejemplo activa un objeto OLE del conjunto Shapes.

Worksheets(1).Shapes(1).OLEFormat.Activate

Si el objeto Shape no representa un objeto vinculado o incrustado, la propiedad OLEFormat falla.


Objeto Validation

Representa la validación de datos para un rango de hoja de cálculo.

Utilizar el objeto Validation

Utilice la propiedad Validation para obtener el objeto Validation. El siguiente ejemplo cambia la validación de datos para la celda E5.

Range("e5").Validation _

.Modify xlValidateList, xlValidAlertStop, "=$A$1:$A$10"

Utilice el método Add para agregar validación de datos a un rango y crear un nuevo objeto Validation. El siguiente ejemplo agrega validación de datos a la celda E5.

With Range("e5").Validation

.Add Type:=xlValidateWholeNumber, _

AlertStyle:=xlValidAlertInformation, Minimum:="5", Maximum:="10"

.InputTitle = "Enteros"

.ErrorTitle = "Enteros"

.InputMessage = "Escriba un número entero entre cinco y diez"

.ErrorMessage = "Debe escribir un número entre cinco y diez"

End With


Objeto ControlFormat

Contiene las propiedades de un control de Microsoft Excel.

Utilizar el objeto ControlFormat

Utilice la propiedad ControlFormat para obtener el objeto ControlFormat. El siguiente ejemplo establece el rango de datos para un control de tipo cuadro de lista en la hoja de cálculo uno.

Worksheets(1).Shapes(1).ControlFormat.ListFillRange = "A1:A10"

Si la forma no es un control, la propiedad ControlFormat falla y si el control no es un cuadro de lista, falla la propiedad ListFillRange.


Objeto FormatCondition

Representa un formato condicional. El objeto FormatCondition es un miembro del conjunto FormatConditions. El conjunto FormatConditions puede contener hasta tres formatos condicionales para un rango dado.

Utilizar el objeto FormatCondition

Utilice FormatConditions(index), donde index es el número de índice del formato condicional, para obtener un objeto FormatCondition. El siguiente ejemplo establece las propiedades de un formato condicional existente para las celdas E1:E10.

With Worksheets(1).Range("e1:e10").FormatConditions(1)

    With .Borders

        .LineStyle = xlContinuous

        .Weight = xlThin

        .ColorIndex = 6

    End With

    With .Font

        .Bold = True

        .ColorIndex = 3

    End With

End With

Comentarios

Utilice el método Add para crear un nuevo formato condicional. Si se intenta crear más de tres formatos condicionales para un mismo rango, el método Add falla. Si un rango ya tiene tres formatos, puede utilizar el método Modify para modificar uno de ellos. También puede eliminar un de los formatos utilizando el método Delete y, después, utilizar el método Add para crear un nuevo formato.

Utilice las propiedades Font, Border e Interior del objeto FormatCondition para controlar la apariencia de las celdas con formato. Algunas de las propiedades de estos objetos no son compatibles con el modelo de objetos del formato condicional. En la siguiente tabla se muestran aquellas propiedades que se pueden aplicar a un formato condicional.

Objeto	Propiedades
Font	Bold Color ColorIndex: FontStyle Italic Strikethrough Underline Los estilos de subrayado para contabilidad no se pueden utilizar.
Border	Bottom Color Left Right Style Se pueden utilizar los siguientes estilos de borde (ninguno de los demás estilos es compatible): xlNone, xlSolid, xlDash, xlDot, xlDashDot, xlDashDotDot, xlGray50, xlGray75 y xlGray25. Top Weight Se pueden utilizar los siguientes grosores de borde (ninguno de los demás grosores es compatible): xlWeightHairline y xlWeightThin.
Interior	Color ColorIndex Pattern PatternColorIndex


Objeto FormatConditions

Representa el conjunto de formatos condicionales de un rango. El conjunto FormatConditions puede contener hasta un máximo de tres formatos condicionales.  Cada formato está representado por un objeto FormatCondition.

Utilizar el conjunto FormatConditions

Utilice la propiedad FormatConditions para obtener un objeto FormatConditions. Utilice el método Add para crear un nuevo formato condicional y utilice el método Modify para modificar un formato condicional existente.

El siguiente ejemplo agrega un formato condicional a las celdas E1:E10.

With Worksheets(1).Range("e1:e10").FormatConditions _

        .Add(xlCellValue, xlGreater, "=$a$1")

    With .Borders

        .LineStyle = xlContinuous

        .Weight = xlThin

        .ColorIndex = 6

    End With

    With .Font

        .Bold = True

        .ColorIndex = 3

    End With

End With

Comentarios

Si se intenta crear más de tres formatos condicionales para un mismo rango, el método Add falla. Si un rango ya tiene tres formatos, puede utilizar el método Modify para modificar uno de ellos. También puede eliminar un de los formatos utilizando el método Delete y, después, utilizar el método Add para crear un nuevo formato.

Para obtener más información acerca de los formatos condicionales, véase el objeto FormatCondition.


Objeto AutoCorrect

Contiene los atributos de Autocorrección de Microsoft Excel (uso de mayúsculas en nombres de días, corrección de dos mayúsculas iniciales, lista de corrección automática, etc.).

Utilizar el objeto AutoCorrect

Utilice la propiedad AutoCorrect para obtener el objeto AutoCorrect. El siguiente ejemplo tiene como efecto que Excel corrija aquellas palabras que comiencen con dos mayúsculas consecutivas.

With Application.AutoCorrect

.TwoInitialCapitals = True

.ReplaceText = True

End With


Objeto Corners

Representa las esquinas de un gráfico 3D. Este objeto no es un conjunto.

Utilizar el objeto Corners

Utilice la propiedad Corners para obtener el objeto Corners. El siguiente ejemplo selecciona las esquinas del gráfico uno.

Charts(1).Corners.Select

La propiedad Corners fallará si el gráfico no es 3D.


Objeto OLEObject

Representa un control ActiveX o un objeto OLE (incrustado o vinculado) en una hoja de cálculo. El objeto OLEObject es miembro del conjunto OLEObjects. El conjunto OLEObjects contiene todos los objetos OLE de una hoja.

Utilizar el objeto OLEObject

Para obtener un solo objeto OLEObject, utilice OLEObjects(index), donde index es el nombre o número de índice del objeto. El siguiente ejemplo elimina el objeto OLE uno de la Hoja1.

Worksheets("Hoja1").OLEObjects(1).Delete

El siguiente ejemplo elimina el objeto OLE “Cuadro1”.

Worksheets("Hoja1").OLEObjects("Cuadro1").Delete

Comentarios

Las propiedades y métodos del objeto OLEObject están duplicadas en cada control ActiveX de una hoja de cálculo. Esto permite que el código de Visual Basic pueda obtener acceso a dichas propiedades utilizando el nombre del control. El siguiente ejemplo selecciona el control de tipo casilla de verificación llamado “MiCasilla”, lo alinea con la celda activa y después lo activa.

With MiCasilla

.Value = True

.Top = ActiveCell.Top

.Activate

End With

Para obtener más información consulte Utilizar controles ActiveX en hojas.


Chart, Worksheet


Objeto de conjunto OLEObjects

Un conjunto de todos los objetos OLEObject de la hoja de cálculo especificada. Cada objeto OLEObject representa un control ActiveX o un objeto OLE (incrustado o vinculado).

Utilizar el conjunto OLEObjects

Utilice el método OLEObjects para obtener el conjunto OLEObjects. El siguiente ejemplo oculta todos los objetos OLE de la hoja de cálculo uno.

Worksheets(1).OLEObjects.Visible = False

Utilice el método Add para crear un nuevo objeto OLE y agregarlo al conjunto OLEObjects. El siguiente ejemplo crea un nuevo objeto OLE que representa el archivo de mapa de bits DIBUJO.BMP y lo agrega a la hoja de cálculo uno.

Worksheets(1).OLEObjects.Add FileName:="dibujo.bmp"

El siguiente ejemplo crea un nuevo control ActiveX (un cuadro de lista) y lo agrega a la hoja de cálculo uno.

Worksheets(1).OLEObjects.Add ClassType:="Forms.ListBox.1"

Para obtener más información, consulte Usar controles ActiveX en hojas.


Objeto Adjustments

Contiene un conjunto de valores de ajuste para la Autoforma, el objeto WordArt o el conector especificados. Cada valor de ajuste representa una manera en que puede ajustarse un controlador. Debido a que algunos controladores pueden ajustarse de dos maneras, por ejemplo, horizontal o verticalmente, una forma puede tener más valores que controladores de ajuste. Una forma puede tener hasta ocho ajustes.

Usar el objeto Adjustments

Utilice la propiedad Adjustments para devolver el objeto Adjustments. Utilice Adjustments(index), donde index es el número de índice del valor de ajuste, para devolver un solo valor de ajuste.

Diferentes formas tienen diferentes números de valor de ajuste, diferentes tipos de ajuste cambian la geometría de una forma de diferentes maneras y diferentes tipos de ajuste tienen diferentes rangos de valores válidos. Por ejemplo, la siguiente ilustración muestra cómo cada uno de los cuatro valores de ajuste de una llamada de flecha a la derecha contribuye a la definición de la geometría de la llamada.

Nota   Debido a que cada forma ajustable tiene un conjunto diferente de ajustes, la mejor manera de verificar el comportamiento de los mismos para una forma específica es crear manualmente la forma, realizar los ajustes con la grabadora de macros activada y, a continuación, examinar el código grabado.

La siguiente tabla resume los rangos de valores de ajuste válidos para los diferentes tipos de ajuste. En la mayoría de los casos, si se especifica un valor que está fuera del rango de valores válidos, se asignará al ajuste el valor válido más próximo.

Tipo de ajuste	Valores válidos
Lineal (horizontal o vertical)	Generalmente el valor 0.0 representa el lado izquierdo o superior de la forma, y el valor 1.0 representa el lado derecho o inferior. Los valores válidos corresponden a ajustes válidos que pueden realizarse manualmente a la forma. Por ejemplo, si solamente se puede desplazar manualmente un controlador de ajuste hasta la mitad de la forma, el valor máximo del ajuste correspondiente será 0.5. Para formas como conectores y llamadas, donde los valores 0.0 y 1.0 representan los límites del rectángulo definido por los puntos de inicio y de final de la línea del conector o de la llamada, los números negativos y los números mayores que 1.0 son valores válidos.
Radial	Un valor de ajuste de 1.0 corresponde al ancho de la forma. El valor máximo es 0.5 o la mitad de la forma.
Angular	Los valores se expresan en grados. Si especifica un valor fuera del rango de –180 a 180, se normalizará para que esté dentro del rango.
El siguiente ejemplo agrega una llamada de flecha a la derecha a miDocumento y establece los valores de ajuste de la llamada. Observe que, aunque la forma sólo tiene tres controladores de ajuste, se pueden realizar cuatro ajustes. Los ajustes tres y cuatro corresponden al controlador situado entre la punta y el cuerpo de la flecha.

Set miDocumento = Worksheets(1)

Set rac = miDocumento.Shapes.AddShape(msoShapeRightArrowCallout, 10, 10, 250, 190)

With rac.Adjustments

    .Item(1) = 0.5    'ajusta el ancho del cuadro de texto

    .Item(2) = 0.15   'ajusta el ancho de la punta de flecha

    .Item(3) = 0.8    'ajusta la longitud de la punta de flecha

    .Item(4) = 0.4    'ajusta el ancho del cuerpo de la flecha

End With


Objeto CalloutFormat

Contiene las propiedades y métodos que se aplican a llamadas de línea.

Usar el objeto CalloutFormat

Utilice la propiedad Callout para obtener el objeto CalloutFormat. El siguiente ejemplo especifica los siguientes atributos para la forma tres, una llamada de línea, en miDocumento: la llamada tendrá una barra de énfasis vertical que separa el texto de la línea de la llamada; el ángulo entre la línea de la llamada y el lado del cuadro de texto de la misma será 30 grados; no existe un borde alrededor del texto de la llamada; la línea de la llamada se adjuntará a la parte superior del cuadro de texto de la misma y contendrá dos segmentos. Para que este ejemplo funcione, la forma tres debe ser una llamada.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Callout

    .Accent = True

    .Angle = msoCalloutAngle30

    .Border = False

    .PresetDrop msoCalloutDropTop

    .Type = msoCalloutThree

End With


Objeto ConnectorFormat

Contiene las propiedades y métodos que se aplican a los conectores. Un conector es una línea que adjunta dos formas por unos puntos denominados sitios de conexión. Si se reorganizan las formas que están conectadas, la geometría del conector se ajustará automáticamente para que las formas permanezcan conectadas.

Usar el objeto ConnectorFormat

Utilice la propiedad ConnectorFormat para obtener un objeto ConnectorFormat. Utilice los métodos BeginConnect y EndConnect para adjuntar el final del conector a otras formas del documento. Utilice el método RerouteConnections para buscar automáticamente la ruta más corta entre las dos formas unidas por el conector. Utilice la propiedad Connector para comprobar si una forma es un conector.

Observe que, al agregar un conector al conjunto Shapes, se asigna un tamaño y una posición, pero estos se ajustan automáticamente al adjuntar el principio y el final del conector a otras formas del conjunto. Por tanto, si desea adjuntar un conector a otras formas, la posición y el tamaño iniciales especificados no se consideran. Asimismo, al adjuntar el conector se especifican los sitios de conexión de una forma, pero si después se utiliza el método RerouteConnections, pueden cambiar los sitios de conexión, sin considerar la elección original.

El siguiente ejemplo agrega dos rectángulos a miDocumento y los conecta con un conector curvado.

Set miDocumento = Worksheets(1)

Set s = miDocumento.Shapes

Set primerRect = s.AddShape(msoShapeRectangle, 100, 50, 200, 100)

Set segundoRect = s.AddShape(msoShapeRectangle, 300, 300, 200, 100)

Setc c = s.AddConnector(msoConnectorCurve, 0, 0, 0, 0)

With c.ConnectorFormat

    .BeginConnect ConnectedShape:=primerRect, ConnectionSite:=1

    .EndConnect ConnectedShape:=segundoRect, ConnectionSite:=1

    c.RerouteConnections

End With

Comentarios

Los sitios de conexión generalmente se numeran de acuerdo con las reglas que se indican en la siguiente tabla.

Tipo de forma	Esquema de numeración del sitio de conexión
Autoformas, WordArt, imágenes y objetos OLE	Los sitios de conexión se numeran comenzando por la parte superior y continuando en sentido contrario a las agujas del reloj.
Formas libres	Los sitios de conexión son los vértices, y corresponden a los números de los mismos.
Para averiguar qué número corresponde a cada sitio de conexión en una forma compleja, puede experimentar con la forma mientras el grabador de macros está activado y, a continuación, examinar el código grabado, o puede crear una forma, seleccionarla y, a continuación ejecutar el siguiente ejemplo. Este código numerará cada sitio de conexión y adjuntará un conector a cada uno.

Set formaprin = ActiveWindow.Selection.ShapeRange(1)

With formaprin

    bx = .Left + .Width + 50

    by = .Top + .Height + 50

End With

With ActiveSheet

    For j = 1 To formaprin.ConnectionSiteCount

        With .Shapes.AddConnector(msoConnectorStraight, bx, by, bx + 50, by + 50)

            .ConnectorFormat.EndConnect formaprin, j

            .ConnectorFormat.Type = msoConnectorElbow

            .Line.ForeColor.RGB = RGB(255, 0, 0)

            l = .Left

            t = .Top

        End With

        With .Shapes.AddTextbox(msoTextOrientationHorizontal, l, t, 36, 14)

            .Fill.Visible = False

            .Line.Visible = False

            .TextFrame.Characters.Text = j

        End With

    Next j

End With


Objeto de conjunto GroupShapes

Representa las formas individuales de una forma agrupada. Cada forma está representada por un objeto Shape. Al utilizar el método Item con este objeto, puede trabajar con formas individuales de un grupo sin necesidad de desagruparlos.

Usar el conjunto GroupShapes

Utilice la propiedad GroupItems para devolver el conjunto GroupShapes. Utilice GroupItems(index), donde index es el número de la forma individual dentro de la forma agrupada, para devolver una forma individual del conjunto GroupShapes. El siguiente ejemplo agrega tres triángulos a miDocumento, los agrupa, establece un color para todo el grupo y, a continuación, cambia el color sólo del segundo triángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes

    .AddShape(msoShapeIsoscelesTriangle, 10, 10, 100, 100).Name = "formaUno"

    .AddShape(msoShapeIsoscelesTriangle, 150, 10, 100, 100).Name = "formaDos"

    .AddShape(msoShapeIsoscelesTriangle, 300, 10, 100, 100).Name = "formaTres"

    With .Range(Array("formaUno", "formaDos", "formaTres")).Group

        .Fill.PresetTextured msoTextureBlueTissuePaper

        .GroupItems(2).Fill.PresetTextured msoTextureGreenMarble

    End With

End With


Objeto LineFormat

Representa el formato de línea y de punta de flecha. Para una línea, el objeto LineFormat contiene la información del formato de la línea en sí; para una forma con un borde, este objeto contiene la información de formato del borde de la forma.

Usar el objeto LineFormat

Utilice la propiedad Line para obtener el objeto LineFormat. El siguiente ejemplo agrega una línea discontinua azul a miDocumento. Hay una elipse corta y estrecha al principio de la línea y un triángulo largo y ancho al final.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddLine(100, 100, 200, 300).Line

    .DashStyle = msoLineDashDotDot

    .ForeColor.RGB = RGB(50, 0, 128)

    .BeginArrowheadLength = msoArrowheadShort

    .BeginArrowheadStyle = msoArrowheadOval

    .BeginArrowheadWidth = msoArrowheadNarrow

    .EndArrowheadLength = msoArrowheadLong

    .EndArrowheadStyle = msoArrowheadTriangle

    .EndArrowheadWidth = msoArrowheadWide

End With


Objeto PictureFormat

Contiene las propiedades y métodos que se aplican a imágenes y objetos OLE. El objeto LinkFormat contiene las propiedades y métodos que se aplican sólo a objetos OLE vinculados. El objeto OLEFormat contiene las propiedades y métodos que se aplican a objetos OLE, estén o no vinculados.

Usar el objeto PictureFormat

Utilice la propiedad PictureFormat para obtener el objeto PictureFormat. El siguiente ejemplo establece el brillo, el contraste y la transformación de color de la forma uno de miDocumento y recorta 18 puntos la parte inferior de la forma. Para que este ejemplo funcione, la forma uno debe ser una imagen o un objeto OLE.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).PictureFormat

    .Brightness = 0.3

    .Contrast = 0.7

    .ColorType = msoPictureGrayScale

    .CropBottom = 18


Objeto ShadowFormat

Representa el formato de sombra de una forma.

Usar el objeto ShadowFormat

Utilice la propiedad Shadow para devolver el objeto ShadowFormat. El siguiente ejemplo agrega un rectángulo sombreado a miDocumento. La sombra azul semitransparente se desplaza 5 puntos a la derecha del rectángulo y 3 puntos hacia arriba.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 50, 50, 100, 200).Shadow

    .ForeColor.RGB = RGB(0, 0, 128)

    .OffsetX = 5

    .OffsetY = -3

    .Transparency = 0.5

    .Visible = True

End With


Objeto Shape

Representa un objeto de la capa de dibujo, por ejemplo, una Autoforma, una forma libre, un objeto OLE o una imagen. El objeto Shape es un miembro del conjunto Shapes. El conjunto Shapes contiene todas las formas de una diapositiva.

Note   Existen tres objetos que representan formas: el conjunto Shapes, que representa todas las formas de un documento; el conjunto ShapeRange, que representa un subconjunto especificado de las formas de un documento (por ejemplo, un objeto ShapeRange podría representar las formas uno y cuatro del documento, o todas las formas seleccionadas del documento); y el objeto Shape, que representa una forma individual de un documento. Si desea trabajar con varias formas al mismo tiempo o con formas de la selección, utilice el conjunto ShapeRange. Para obtener información general acerca de cómo trabajar con una forma individual o con más de una forma a la vez, vea Trabajar con formas (objetos de dibujo).

Usar el objeto Shape

Esta sección describe cómo:

•	Devolver una forma existente.

•	Devolver una forma de la selección.

•	Devolver las formas adjuntas a los finales de un conector.

•	Devolver una forma libre recién creada.

•	Devolver una única forma de un grupo.

•	Devolver un grupo de formas recién creado.

Devolver una forma existente

Utilice Shapes(index), donde index es el nombre o número de índice de la forma, para devolver un objeto Shape que representa una forma. El siguiente ejemplo voltea horizontalmente la forma uno y la forma denominada "Rectángulo1" de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).Flip msoFlipHorizontal

miDocumento.Shapes("Rectángulo 1").Flip msoFlipHorizontal

A cada forma se le asigna un nombre predeterminado al agregarlo al conjunto Shapes. Para asignar a la forma un nombre más significativo, utilice la propiedad Name. El siguiente ejemplo agrega un rectángulo a miDocumento, le asigna el nombre "Cuadrado rojo" y, a continuación, establece el color de primer plano y el estilo de línea.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 144, 144, 72, 72)

    .Name = "Cuadrado rojo"

    .Fill.ForeColor.RGB = RGB(255, 0, 0)

    .Line.DashStyle = msoLineDashDot

End With

Devolver una forma de la selección

Utilice Selection.ShapeRange(index), donde index es el nombre o número de índice de la forma, para devolver un objeto Shape que representa una forma de la selección. El siguiente ejemplo establece el relleno de la primera forma de la selección en la ventana activa, suponiendo que existe al menos una forma en la selección.

ActiveWindow.Selection.ShapeRange(1).Fill.ForeColor.RGB = RGB(255, 0, 0)

Devolver las formas adjuntas a los finales de un conector

Para devolver un objeto Shape que representa una de las formas adjuntas por un conector, utilice las propiedades BeginConnectedShape o EndConnectedShape.

Devolver una forma libre recién creada

Utilice los métodos BuildFreeform y AddNodes para definir la geometría de una nueva forma libre, y utilice el método ConvertToShape para crear la forma libre y devolver el objeto Shape que la representa.

Devolver una única forma de un grupo

Utilice GroupItems(index), donde index es el nombre o número de índice de la forma, para devolver un objeto Shape que representa una forma de una forma agrupada.

Devolver un grupo de formas recién creado

Utilice los métodos Group o Regroup para agrupar un rango de formas y devolver un único objeto Shape que representa el nuevo grupo formado. Después de formar el grupo, puede trabajar con él de la misma manera que con cualquier otra forma.


Objeto de conjunto ShapeRange

Representa un rango de formas, que es un conjunto de formas de un documento. Un rango de formas puede contener una única forma o todas las formas del documento. Para crear un rango de formas, puede incluir las formas que desee, elegidas entre todas las formas del documento o de la selección. Por ejemplo, puede crear un conjunto ShapeRange que contenga las tres primeras formas, todas las formas seleccionadas o todas las formas libres de un documento.

Para obtener información general acerca de cómo trabajar con una forma individual o con más de una forma a la vez, vea Trabajar con formas (objetos de dibujo).

Usar el conjunto ShapeRange

Esta sección describe cómo:

•	Devolver un conjunto de formas especificadas por nombre o por número de índice.

•	Devolver todas o algunas formas seleccionadas de un documento.

Devolver un conjunto de formas especificadas por nombre o por número de índice

Para devolver un conjunto ShapeRange que represente un conjunto de formas de un documento utilice Shapes.Range(index), donde index es el nombre o número de índice de la forma o una matriz que contenga los nombres o números de índice de las formas. Puede utilizar la función Array para construir una matriz de nombres o números de índice. El siguiente ejemplo establece la trama de relleno de las formas uno y tres de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.Range(Array(1, 3)).Fill.Patterned msoPatternHorizontalBrick

El siguiente ejemplo establece la trama de relleno de las formas denominadas "Elipse 4" y "Rectángulo 5" de miDocumento.

Set miDocumento = Worksheets(1)

Set miRango = miDocumento.Shapes.Range(Array("Elipse 4", "Rectángulo 5"))

miRango.Fill.Patterned msoPatternHorizontalBrick

Aunque se puede utilizar la propiedad Range para devolver cualquier número de formas o diapositivas, es más sencillo utilizar el método Item si sólo desea devolver un único miembro del conjunto. Por ejemplo, Shapes(1) es más sencillo que Shapes.Range(1).

Devolver todas o algunas formas seleccionadas de un documento

Utilice la propiedad ShapeRange del objeto Selection para devolver todas las formas de la selección. El siguiente ejemplo establece el color de primer plano del relleno de todas las formas de la selección en la ventana uno, suponiendo que existe al menos una forma en la selección.

Windows(1).Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 0, 255)

Utilice Selection.ShapeRange(index), donde index es el nombre o número de índice de la forma, para devolver un único objeto de la selección. El siguiente ejemplo establece el color de primer plano del relleno de la forma dos del conjunto de formas seleccionadas en la ventana uno, suponiendo que existen al menos dos formas en la selección.

Windows(1).Selection.ShapeRange(2).Fill.ForeColor.RGB = RGB(255, 0, 255)


Objeto ShapeNode

Representa la geometría y las propiedades de edición de la geometría de los nodos, en una forma libre definida por el usuario. Los nodos incluyen los vértices entre los segmentos de la forma libre y los puntos de control de los segmentos curvados. El objeto ShapeNode es un miembro del conjunto ShapeNodes. El conjunto ShapeNodes contiene todos los nodos de una forma libre.

Usar el objeto ShapeNode

Para devolver un solo objeto ShapeNode, utilice Nodes(index), donde index es el número de índice del nodo. Si el nodo uno de la forma tres de miDocumento es una esquina, el siguiente ejemplo lo convierte en un punto suave. Para que este ejemplo funcione, la forma tres debe ser una forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Nodes(1).EditingType = msoEditingCorner Then

        .Nodes.SetEditingType 1, msoEditingSmooth

    End If

End With


Objeto de conjunto ShapeNodes

Conjunto de todos los objetos ShapeNode de la forma libre especificada. Cada objeto ShapeNode representa un nodo entre dos segmentos de una forma libre o un punto de control de un segmento curvado de una forma libre. Puede crear una forma libre manualmente o utilizando los métodos BuildFreeform y ConvertToShape.

Usar el conjunto ShapeNodes

Utilice la propiedad Nodes para devolver el conjunto ShapeNodes. El siguiente ejemplo elimina el nodo cuatro de la forma tres de miDocumento. Para que este ejemplo funcione, la forma tres debe ser una forma libre con, al menos, cuatro nodos.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(3).Nodes.Delete 4

Utilice el método Insert para crear un nuevo nodo y agregarlo al conjunto ShapeNodes. El siguiente ejemplo agrega un nodo suave con un segmento curvado después del nodo cuatro de la forma tres en miDocumento. Para que este ejemplo funcione, la forma tres debe ser una forma libre con, al menos, cuatro nodos.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3).Nodes

    .Insert 4, msoSegmentCurve, msoEditingSmooth, 210, 100

End With

Para devolver un solo objeto ShapeNode, utilice Nodes(index), donde index es el número de índice del nodo. Si el nodo uno de la forma tres de miDocumento es una esquina, el siguiente ejemplo lo convierte en un punto suave. Para que este ejemplo funcione, la forma tres debe ser una forma libre.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(3)

    If .Nodes(1).EditingType = msoEditingCorner Then

        .Nodes.SetEditingType 1, msoEditingSmooth

    End If

End With


Objeto TextEffectFormat

Contiene las propiedades y métodos que se aplican a objetos WordArt.

Usar el objeto TextEffectFormat

Utilice la propiedad TextEffect para obtener el objeto TextEffectFormat. El siguiente ejemplo establece el nombre y el formato de fuente de la forma uno de miDocumento. Para que este ejemplo funcione, la forma uno debe ser un objeto WordArt.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes(1).TextEffect

    .FontName = "Courier New"

    .FontBold = True

    .FontItalic = True

End With


Objeto ThreeDFormat

Representa el formato 3D de una forma.

Usar el objeto ThreeDFormat

Utilice la propiedad ThreeD para obtener el objeto ThreeDFormat. El siguiente ejemplo agrega una elipse a miDocumento y, a continuación, especifica que la extrusión de la elipse tendrá una profundidad de 50 puntos y será morada.

Set miDocumento = Worksheets(1)

Set miForma = miDocumento.Shapes.AddShape(msoShapeOval, 90, 90, 90, 40)

With miForma.ThreeD

    .Visible = True

    .Depth = 50

    .ExtrusionColor.RGB = RGB(255, 100, 255)    ' Valor RGB para el morado

End With

Comentarios

No se puede aplicar el formato 3D a determinados tipos de formas, como formas biseladas o con rutas que contengan varias interrupciones. La mayoría de las propiedades y métodos del objeto ThreeDFormat para dichas formas fallarán.


Objeto FreeformBuilder

Representa la geometría de una forma libre mientras se genera.

Usar el objeto FreeformBuilder

Utilice el método BuildFreeform para devolver un objeto FreeformBuilder. Utilice el método AddNodes para agregar nodos a la forma libre. Utilice el método ConvertToShape para crear la forma definida en el objeto FreeformBuilder y agregarlo al conjunto Shapes. El siguiente ejemplo agrega una forma libre con cuatro segmentos a miDocumento.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.BuildFreeform(msoEditingCorner, 360, 200)

    .AddNodes msoSegmentCurve, msoEditingCorner, 380, 230, 400, 250, 450, 300

    .AddNodes msoSegmentCurve, msoEditingAuto, 480, 200

    .AddNodes msoSegmentLine, msoEditingAuto, 480, 400

    .AddNodes msoSegmentLine, msoEditingAuto, 360, 200

    .ConvertToShape

End With


Objeto ColorFormat

Representa el color de un objeto de un solo color, el color de primer plano o de fondo de un objeto con relleno degradado o entramado, o el color del puntero. Pueden establecerse los colores en un valor rojo, verde y azul explícito, mediante la propiedad RGB, o en un color de la combinación de colores, mediante la propiedad SchemeColor.

Usar el objeto ColorFormat

Utilice una de las propiedades enumeradas en la siguiente tabla para devolver un objeto ColorFormat.

Para devolver un objeto ColorFormat que represente esto	Utilice esta propiedad	Con este objeto
Color de relleno de fondo (utilizado en un relleno con sombra o entramado)	BackColor	FillFormat
Color de relleno de primer plano, o simplemente el color de relleno en un relleno opaco	ForeColor	FillFormat
Color de la línea de fondo (utilizado en una línea de entramado)	BackColor	LineFormat
Color de la línea de primer plano, o simplemente el color de la línea en una línea opaca	ForeColor	LineFormat
Color de sombra	ForeColor	ShadowFormat
Color de los lados de un objeto extruido	ExtrusionColor	ThreeDFormat
Utilice la propiedad RGB para establecer un color en un valor rojo, verde y azul explícito. El siguiente ejemplo agrega un rectángulo a miDocumento y, a continuación, establece el color de primer plano y un degradado para el relleno del rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 90, 90, 90, 50).Fill

    .ForeColor.RGB = RGB(128, 0, 0)

    .BackColor.RGB = RGB(170, 170, 170)

    .TwoColorGradient msoGradientHorizontal, 1

End With


Objeto de conjunto Shapes

Conjunto de todos los objetos Shape de la hoja especificada. Cada objeto Shape representa un objeto de la capa de dibujo, por ejemplo, una Autoforma, una forma libre, un objeto OLE o una imagen.

Nota   Si desea trabajar con un subconjunto de las formas de un documento, por ejemplo, hacer algo sólo con las Autoformas o sólo con las formas seleccionadas, debe crear un conjunto ShapeRange que contenga las formas con las que desea trabajar. Para obtener información general acerca de cómo trabajar con una forma individual o con más de una forma a la vez, vea Trabajar con formas (objetos de dibujo).

Usar el conjunto Shapes

Utilice la propiedad Shapes para devolver el conjunto Shapes. El siguiente ejemplo selecciona todas las formas de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.SelectAll

Nota   Si desea hacer algo, como eliminar o establecer una propiedad, con todas las formas de una hoja al mismo tiempo, selecciónelas y, a continuación, utilice la propiedad ShapeRange en la selección para crear un objeto ShapeRange que contenga todas las formas de la hoja; a continuación, aplique la propiedad o método adecuado al objeto ShapeRange.

Utilice Shapes(index), donde index es el nombre o número de índice de la forma, para devolver un único objeto Shape. El siguiente ejemplo establece una sombra preestablecida para el relleno de la forma uno de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes(1).Fill.PresetGradient msoGradientHorizontal, 1, msoGradientBrass

Para devolver un conjunto ShapeRange que represente un subconjunto de formas del conjunto Shapes, utilice Shapes.Range(index), donde index es el nombre o número de índice de la forma o una matriz que contenga los nombres o números de índice de las formas. El siguiente ejemplo establece la trama de relleno de las formas uno y tres de miDocumento.

Set miDocumento = Worksheets(1)

miDocumento.Shapes.Range(Array(1, 3)).Fill.Patterned msoPatternHorizontalBrick


Objeto TextFrame

Representa el marco de texto de un objeto Shape. Contiene el texto del marco así como las propiedades y métodos que controlan la alineación y fijación del marco de texto.

Usar el objeto TextFrame

Utilice la propiedad TextFrame para obtener el objeto TextFrame. El siguiente ejemplo agrega un rectángulo a miDocumento, agrega texto al rectángulo y, a continuación, establece los márgenes del marco del texto.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 0, 0, 250, 140).TextFrame

    .Characters.Text = "Texto de prueba"

    .MarginBottom = 10

    .MarginLeft = 10

    .MarginRight = 10

    .MarginTop = 10

End With


marco de texto

Área de una forma que puede contener texto.


Objeto FillFormat

Representa el formato de relleno de una forma. Una forma puede tener un relleno opaco, degradado, con textura, entramado, con imagen o semitransparente.

Usar el objeto FillFormat

Utilice la propiedad Fill para devolver un objeto FillFormat. El siguiente ejemplo agrega un rectángulo a miDocumento y, a continuación, establece el color y el degradado del relleno del rectángulo.

Set miDocumento = Worksheets(1)

With miDocumento.Shapes.AddShape(msoShapeRectangle, 90, 90, 90, 80).Fill

    .ForeColor.RGB = RGB(0, 128, 128)

    .OneColorGradient msoGradientHorizontal, 1, 1

End With

Comentarios

Muchas de las propiedades del objeto FillFormat son de sólo lectura. Para establecer una de estas propiedades, debe aplicar el método correspondiente.


Adjustments, CalloutFormat, ConnectorFormat, FillFormat, GroupShapes, LineFormat, LinkFormat, OLEFormat, PictureFormat, ShadowFormat, ShapeNodes, ShapeRange, TextEffectFormat, TextFrame, ThreeDFormat


FillFormat, LineFormat, ShadowFormat, ThreeDFormat


Adjustments, CalloutFormat, ConnectorFormat, FillFormat, GroupShapes, LineFormat, LinkFormat, OLEFormat, PictureFormat, ShadowFormat, Shape, ShapeNodes, ShapeRange, TextEffectFormat, TextFrame, ThreeDFormat


Objeto WorksheetFunction

Utilizado como contenedor de las funciones de hoja de cálculo de Microsoft Excel que pueden llamarse desde Visual Basic.

Usar el objeto WorksheetFunction

Utilice la propiedad WorksheetFunction para obtener el objeto WorksheetFunction. El siguiente ejemplo muestra el resultado de aplicar la función de hoja de cálculo Min al rango A1:A10.

Set miRango = Worksheets("Hoja1").Range("A1:C10")

respuesta = Application.WorksheetFunction.Min(miRango)

MsgBox respuesta

Comentarios

En anteriores versiones de Microsoft Excel, las funciones de hoja de cálculo estaban contenidas en el objeto Application.


Objeto ChartColorFormat

Se utiliza únicamente con gráficos. Representa el color de un objeto de un color o el color de primer plano o de fondo de un objeto con relleno degradado o entramado.

Usar el objeto ChartColorFormat

Utilice una de las propiedades enumeradas en la siguiente tabla para devolver un objeto ChartColorFormat.

Para devolver un objeto ChartColorFormat que represente esto	Utilice esta propiedad	Con este objeto
Color de relleno de fondo (utilizado en un relleno con sombra o entramado)	BackColor	ChartFillFormat
Color de relleno de primer plano, o simplemente el color de relleno en un relleno opaco	ForeColor	ChartFillFormat


Objeto ChartFillFormat

Se utiliza únicamente con gráficos. Representa el formato de relleno de elementos de gráficos.

Usar el objeto ChartFillFormat

Utilice la propiedad Fill para obtener el objeto ChartFillFormat. El siguiente ejemplo establece el color de primer plano, de fondo, y el degradado para el relleno de área del gráfico uno.

With Charts(1).ChartArea.Fill

.Visible = True

.ForeColor.SchemeColor = 15

.BackColor.SchemeColor = 17

.TwoColorGradient Style:=msoGradientHorizontal, Variant:=1

End With


AxisTitle, ChartArea, ChartTitle, DataLabel, DataLabels, DownBars, Floor, Legend, LegendKey, PlotArea, Point, Series, Shape, ShapeRange, UpBars, Walls


Objeto Phonetic

Este objeto no se utiliza en la versión inglesa para EE.UU. de Microsoft Excel.


Objeto DocumentProperty de Microsoft Excel

Cada libro tiene un conjunto de propiedades de documento integradas y un conjunto de propiedades de documento personalizadas. Cada conjunto queda representado por un objeto DocumentProperties que contiene cada conjunto objetos individuales DocumentProperty.

Utilice la propiedad BuiltinDocumentProperties para devolver un conjunto de propiedades de documento integradas y utilice la propiedad CustomDocumentProperties para devolver el conjunto de propiedades de documento personalizadas. Utilice la propiedad Item para devolver un solo miembro del conjunto.

En el ejemplo siguiente se establece el valor de la propiedad de documento integrada como "Título".

ActiveWorkbook.BuiltinDocumentProperties.Item("Título") _

.Value = "Resultado de las ventas"


Objeto de conjunto DocumentProperties de Microsoft Excel

Cada libro tiene un conjunto de propiedades de documento integradas y un conjunto de propiedades de documento personalizadas. Cada conjunto queda representado por un objeto DocumentProperties que contiene cada conjunto objetos individuales DocumentProperty.

Utilice la propiedad BuiltinDocumentProperties para devolver un conjunto de propiedades de documento integradas y utilice la propiedad  CustomDocumentProperties para devolver el conjunto de propiedades de documento personalizadas.

En el ejemplo siguiente se insertan los nombres de las propiedades de documento integradas en una lista en la hoja uno.

fl = 1

Worksheets(1).Activate

For Each p In ActiveWorkbook.BuiltinDocumentProperties

    Cells(fl, 1).Value = p.Name

    fl = fl + 1

Next