constante valor descripciónlas teclas de 0 a 9 son las mismas que sus equivalentes ascii de 0 a 9:...

909
Calendar (constantes) Las siguientes constantes se pueden utilizar en cualquier sitio del código en lugar de los valores reales: Constante Valor Descripción vbCalGreg 0 Indica que se utiliza el calendario gregoriano. vbCalHijri 1 Indica que se utiliza el calendario Hijri.

Upload: others

Post on 13-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Calendar(constantes)

Lassiguientesconstantessepuedenutilizarencualquiersitiodelcódigoenlugardelosvaloresreales:

Constante Valor DescripciónvbCalGreg 0 Indicaqueseutilizael

calendariogregoriano.vbCalHijri 1 Indicaqueseutilizael

calendarioHijri.

Page 2: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdeatributodearchivo

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstantes.

Constante Valor DescripciónNormal 0 Archivonormal.Noseestablecenatributos.ReadOnly 1 Archivodesólolectura.Elatributoesde

lectura/escritura.Hidden 2 Archivooculto.Elatributoesdelectura/escritura.System 4 Archivodesistema.Elatributoesde

lectura/escritura.Volume 8 Etiquetadevolumendelaunidaddedisco.El

atributoesdesólolectura.Directory 16 Carpetaodirectorio.Elatributoesdesólolectura.Archive 32 Elarchivocambiódesdelaúltimacopiade

seguridad.Elatributoesdelectura/escritura.Alias 64 Vínculoométodoabreviado.Elatributoesdesólo

lectura.Compressed 128 Archivocomprimido.Elatributoesdesólolectura.

Page 3: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdecarpetasespeciales

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstantes.

Constante Valor DescripciónWindowsFolder 0 LacarpetaWindowscontienearchivosinstalados

porelsistemaoperativoWindows.SystemFolder 1 Lacarpetadelsistemacontieneunidadesde

dispositivo,bibliotecasyfuentes.TemporaryFolder 2 LacarpetaTempseutilizaparaalmacenar

archivostemporales.SurutaseencuentraenlavariabledelentornoTMP.

Page 4: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdecolor

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbBlack 0x0 NegrovbRed 0xFF RojovbGreen 0xFF00 VerdevbYellow 0xFFFF AmarillovbBlue 0xFF0000 AzulvbMagenta 0xFF00FF MagentavbCyan 0xFFFF00 CiánvbWhite 0xFFFFFF Blanco

Page 5: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdecolordelsistema

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbScrollBars 0x80000000 Colordelabarrade

desplazamientovbDesktop 0x80000001 ColordelescritoriovbActiveTitleBar 0x80000002 Colordelabarradetítulo

delaventanaactivavbInactiveTitleBar 0x80000003 Colorofthetitlebarfor

theinactivewindowvbMenuBar 0x80000004 Colordelabarradetítulo

delaventanainactivavbWindowBackground 0x80000005 Colordelaventanade

fondovbWindowFrame 0x80000006 Colordelmarcodela

ventanavbMenuText 0x80000007 Colordeltextoenlos

menúsvbWindowText 0x80000008 Colordeltextoenlas

Page 6: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ventanasvbTitleBarText 0x80000009 Colordeltextoenel

título,cuadrocontroldetamañoyflechadedesplazamiento

vbActiveBorder 0x8000000A Colordelbordedelaventanaactiva

vbInactiveBorder 0x8000000B Colordelbordedelaventanainactiva

vbApplicationWorkspace 0x8000000C Colordefondodelasaplicacionesdeinterfazdedocumentosmúltiples(MDI)

vbHighlight 0x8000000D Colordefondodeloselementosseleccionadosenuncontrol

vbHighlightText 0x8000000E Colordeltextodeloselementosseleccionadosenuncontrol

vbButtonFace 0x8000000F Colordelsombreadoenlacaradelosbotonesdecomando

vbButtonShadow 0x80000010 Colordelsombreadoenelbordedelosbotonesdecomando

vbGrayText 0x80000011 Textoatenuado(desactivado)

vbButtonText 0x80000012 Colordeltextoenbotonespresionados

vbInactiveCaptionText 0x80000013 Colordeltextoenuntítuloinactivo

vb3DHighlight 0x80000014 Colorderesalteparaelementosmostradosen3D

vb3DDKShadow 0x80000015 Colordesombramás

Page 7: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

oscuraparaelementosmostradosen3D

vb3DLight 0x80000016 Segundocolormásbrillanteen3Ddespuésdevb3Dhighlight

vbInfoText 0x80000017 ColordeltextoenlaInformaciónsobreherramientas

vbInfoBackground 0x80000018 ColordefondoenlaInformaciónsobreherramientas

Page 8: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdecomparación

LassiguientesconstantesestándefinidasenlabibliotecadetiposdeVisualBasicparaAplicacionesysepuedenutilizarencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbUseCompareOption -1 Realizaunacomparaciónusandola

configuracióndelainstrucciónOptionCompare.

vbBinaryCompare 0 Realizaunacomparaciónbinaria.vbTextCompare 1 Realizaunacomparacióntextual.vbDatabaseCompare 2 EnMicrosoftAccess(sóloWindows),

realizaunacomparaciónbasándoseenlainformacióncontenidaensubasededatos.

Page 9: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdecódigodeteclas

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbKeyLButton 0x1 Botónizquierdodelmouse(ratón)vbKeyRButton 0x2 Botónderechodelmouse(ratón)vbKeyCancel 0x3 TeclaCancelarvbKeyMButton 0x4 BotónizquierdodelmousevbKeyBack 0x8 TeclaRetrocesovbKeyTab 0x9 TeclaTabvbKeyClear 0xC TeclaSuprvbKeyReturn 0xD TeclaEntrarvbKeyShift 0x10 TeclaMayúsvbKeyControl 0x11 TeclaCtrlvbKeyMenu 0x12 TeclaMenúvbKeyPause 0x13 TeclaPausavbKeyCapital 0x14 TeclaBloqMayúsvbKeyEscape 0x1B TeclaEscvbKeySpace 0x20 TeclaBarraespaciadora

Page 10: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbKeyPageUp 0x21 TeclaRePágvbKeyPageDown 0x22 TeclaAvPágvbKeyEnd 0x23 TeclaFinvbKeyHome 0x24 TeclaIniciovbKeyLeft 0x25 TeclaFlechaizquierdavbKeyUp 0x26 TeclaFlechaarribavbKeyRight 0x27 TeclaFlechaderechavbKeyDown 0x28 TeclaFlechaabajovbKeySelect 0x29 TeclaSeleccionarvbKeyPrint 0x2A TeclaImprPantvbKeyExecute 0x2B TeclaEjecutarvbKeySnapshot 0x2C TeclaImprPantvbKeyInsert 0x2D TeclaInsertvbKeyDelete 0x2E TeclaSuprvbKeyHelp 0x2F TeclaAyudavbKeyNumlock 0x90 TeclaBloqNum

LasteclasdeAaZsonlasmismasquesusequivalentesASCIIdeAaZ:

Constante Valor DescripciónvbKeyA 65 TeclaAvbKeyB 66 TeclaBvbKeyC 67 TeclaCvbKeyD 68 TeclaDvbKeyE 69 TeclaEvbKeyF 70 TeclaFvbKeyG 71 TeclaGvbKeyH 72 TeclaHvbKeyI 73 TeclaIvbKeyJ 74 TeclaJvbKeyK 75 TeclaKvbKeyL 76 TeclaL

Page 11: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbKeyM 77 TeclaMvbKeyN 78 TeclaNvbKeyO 79 TeclaOvbKeyP 80 TeclaPvbKeyQ 81 TeclaQvbKeyR 82 TeclaRvbKeyS 83 TeclaSvbKeyT 84 TeclaTvbKeyU 85 TeclaUvbKeyV 86 TeclaVvbKeyW 87 TeclaWvbKeyX 88 TeclaXvbKeyY 89 TeclaYvbKeyZ 90 TeclaZ

Lasteclasde0a9sonlasmismasquesusequivalentesASCIIde0a9:

Constante Valor DescripciónvbKey0 48 Tecla0vbKey1 49 Tecla1vbKey2 50 Tecla2vbKey3 51 Tecla3vbKey4 52 Tecla4vbKey5 53 Tecla5vbKey6 54 Tecla6vbKey7 55 Tecla7vbKey8 56 Tecla8vbKey9 57 Tecla9

Lassiguientesconstantesrepresentanteclaseneltecladonumérico:

Page 12: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constante Valor DescripciónvbKeyNumpad0 0x60 Tecla0vbKeyNumpad1 0x61 Tecla1vbKeyNumpad2 0x62 Tecla2vbKeyNumpad3 0x63 Tecla3vbKeyNumpad4 0x64 Tecla4vbKeyNumpad5 0x65 Tecla5vbKeyNumpad6 0x66 Tecla6vbKeyNumpad7 0x67 Tecla7vbKeyNumpad8 0x68 Tecla8vbKeyNumpad9 0x69 Tecla9vbKeyMultiply 0x6A TeclaSignode

multiplicación(*)vbKeyAdd 0x6B TeclaSignomás(+)vbKeySeparator 0x6C TeclaEntrarvbKeySubtract 0x6D TeclaSignomenos(–)vbKeyDecimal 0x6E TeclaPuntodecimal(,)vbKeyDivide 0x6F TeclaSignodedivisión(/)

Lassiguientesconstantesrepresentanteclasdefunción:

Constante Valor DescripciónvbKeyF1 0x70 TeclaF1vbKeyF2 0x71 TeclaF2vbKeyF3 0x72 TeclaF3vbKeyF4 0x73 TeclaF4vbKeyF5 0x74 TeclaF5vbKeyF6 0x75 TeclaF6vbKeyF7 0x76 TeclaF7vbKeyF8 0x77 TeclaF8vbKeyF9 0x78 TeclaF9

Page 13: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbKeyF10 0x79 TeclaF10vbKeyF11 0x7A TeclaF11vbKeyF12 0x7B TeclaF12vbKeyF13 0x7C TeclaF13vbKeyF14 0x7D TeclaF14vbKeyF15 0x7E TeclaF15vbKeyF16 0x7F TeclaF16

Page 14: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdeentrada/salidadearchivo

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstantes.

Constante Valor DescripciónForReading 1 Abrirunarchivosóloparalectura.Nopuede

escribirenestearchivo.ForWriting 2 Abrirunarchivoparaescritura.Siexisteunarchivo

conelmismonombre,seescribesobresuanteriorcontenido.

ForAppending 8 Abrirunarchivoyescribirhastaelfinaldelarchivo.

Page 15: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdefecha

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Valoresdeargumento

Elargumentofirstdayofweektienelossiguientesvalores:

Constante Valor DescripciónvbUseSystem 0 UtilizaelvalordeAPI

NLS.VbSunday 1 Domingo(predeterminado)vbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Elargumentofirstdayofyeartienelossiguientesvalores:

Constante Valor Descripción

Page 16: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbUseSystem 0 UtilizaelvalordeAPINLS.VbUseSystemDayOfWeek

0 Utilizaeldíadelasemanaespecificadoenlaconfiguracióndelsistemaparaelprimerdíadelasemana.

VbFirstJan1 1 Comienzaconlasemanadondeestáel1deenero(predeterminado)

vbFirstFourDays 2 Comienzaconlaprimerasemanadelañoquetengacuatrodíascomomínimo.

vbFirstFullWeek 3 Comienzaconlaprimerasemanacompletadelaño.

Valoresdevueltos

Constante Valor DescripciónvbSunday 1 DomingovbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Page 17: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdeformatodefecha

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstante.

Constante Valor DescripciónvbGeneralDate 0 Muestraunafechay/ohora.Paranúmerosreales,

muestraunafechayhora.Sinohaypartefraccionaria,sólomuestraunafecha.Sinohayparteentera,sólomuestralahora.Laconfiguracióndesusistemadeterminalapresentacióndefechayhora.

vbLongDate 1 Muestraunafechautilizandoelformatodefechalargoespecificadoenlaconfiguraciónregionaldesuequipo.

vbShortDate 2 Muestraunafechautilizandoelformatodefechacortoespecificadoenlaconfiguraciónregionaldesuequipo.

vbLongTime 3 Muestraunahorautilizandoelformatodefechalargoespecificadoenlaconfiguraciónregionaldesuequipo.

vbShortTime 4 Muestraunahorautilizandoelformatodehora

Page 18: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cortoespecificadoenlaconfiguraciónregionaldesuequipo.

Page 19: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdetipodeunidad

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstantes.

Constante Valor DescripciónUnknown 0 Eltipodeunidadnosepuededeterminar.Removable 1 Launidadtienemediosseparables.Estoincluye

todaslasunidadesdedisqueteymuchasotrasvariedadesdedispositivosdealmacenamiento.

Fixed 2 Launidadtienemediosfijos(noseparables).Estoincluyetodaslasunidadesdediscoduro,incluyendolasunidadesdediscoduroseparables.

Remote 3 Unidadesdered.Estoincluyeunidadescompartidasencualquierparteenunared.

CDROM 4 LaunidadesunCD-ROM.NosehacedistinciónentrelasunidadesdeCD-ROMdelecturayescrituraylasdesólolectura.

RAMDisk 5 LaunidadesunbloquedeMemoriadeAccesoAleatorio(RAM,RandomAccesMemory)enelequipolocalquesecomportacomounaunidaddedisco.

Page 20: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdelcompilador

VisualBasicparaAplicacionesdefineconstantesparausoexclusivoconladirectiva#If...Then...#Else.Estasconstantessonfuncionalmenteequivalentesalasconstantesdefinidasconladirectiva#If...Then...#Elseexceptoquesondealcanceglobal;esdecir,seaplicanatodoelproyecto.

Enplataformasdeprogramaciónde16bits,lasconstantesdelcompiladorsedefinendelasiguienteforma:

Constante Valor DescripciónWin16 True Indicaqueelentornodeprogramaciónesde16

bits.Win32 False Indicaqueelentornodeprogramaciónnoesde32

bits.

Enplataformasdeprogramaciónde32bits,lasconstantesdelcompiladorse

Page 21: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

definendelasiguienteforma:

Constante Valor DescripciónVba6 True IndicaqueelentornodeprogramaciónesVisual

BasicparaAplicaciones,versión6.0.Vba6 False IndicaqueelentornodeprogramaciónesVisual

BasicparaAplicaciones,versión6.0.Win16 False Indicaqueelentornodeprogramaciónnoesde16

bits.Win32 True Indicaqueelentornodeprogramaciónesde32

bits.Mac False Indicaqueelentornodeprogramaciónnoes

Macintosh.Win16 False Indicaqueelentornodeprogramaciónnoesde16

bits.Win32 False IndicaqueelentornodeprogramaciónesWindows

de32bits.Mac True Indicaqueelentornodeprogramaciónes

Macintosh.

NotaPuestoqueesVisualBasicelqueproporcionaestasconstantes,nopuededefinirenningúnnivelsuspropiasconstantesquetenganestosmismosnombres.

Page 22: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdetripleestado

Estasconstantessóloestándisponiblescuandosuproyectotieneunareferenciaexplícitaalabibliotecadetiposapropiadaquecontengaestasdefinicionesdeconstantes.

Constante Valor DescripciónvbTrue –1 Verdadero.vbFalse 0 Falso.vbUseDefault –2 Utilizarvalorpredeterminado.

Page 23: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ConstantesdeVisualBasic

VisualBasicparaaplicacionesdefineconstantesparasimplificarlaprogramación.Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Calendar(constantes)

CallType(constantes)

Constantesdeatributosdearchivo

ConstantesdeCarpetasEspeciales

Constantesdecódigodeteclas

Constantesdecolor

Constantesdecolordelsistema

Constantesdecomparación

Constantesdeentrada/salidadearchivos

Constantesdefecha

Page 24: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdeformatodefecha

Constantesdeformulario

ConstantesdeTipoUnidad

ConstantesdeTripleEstado

ConstantesdeVisualBasic

Constantesdelcompilador

Dir,GetAttrySetAttr(constantes)

IMEStatus(constantes)

MsgBox(constantes)

Otrasconstantes

QueryClose(constantes)

Shell(constantes)

StrConv(constantes)

VarType(constantes)

Page 25: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dir,GetAttrySetAttr(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbNormal 0 Normal(valor

predeterminadoparaDirySetAttr)

vbReadOnly 1 DesólolecturavbHidden 2 OcultovbSystem 4 ArchivodesistemavbVolume 8 EtiquetadevolumenvbDirectory 16 DirectorioocarpetavbArchive 32 Elarchivohacambiado

desdelaúltimacopiadeseguridad

vbAlias 64 EnMacintosh,elidentificadoresunalias

SólolasconstantesVbNormal,vbReadOnly,vbHiddenyvbAliasestándisponiblesparaMacintosh.

Page 26: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IMEStatus(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales.

Laconstantesparalaconfiguraciónregionaljaponesasonlassiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeOn 1 IMEactivadovbIMEModeOff 2 IMEdeactivadovbIMEModeDisable 3 IMEdeshabilitadovbIMEModeHiragana 4 ModoHiraganadeancho

completovbIMEModeKatakana 5 ModoKatakanadeancho

completovbIMEModeKatakanaHalf 6 ModoKatakanademitad

deanchovbIMEModeAlphaFull 7 ModoAlfanuméricode

anchocompletovbIMEModeAlpha 8 ModoAlfanuméricode

Page 27: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

mitaddeancho

Losvaloresdeconstanteparalaconfiguraciónlocalcoreanasonlossiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeAlphaFull 7 ModoAlfanuméricode

anchocompletovbIMEModeAlpha 8 ModoAlfanuméricode

mitaddeanchovbIMEModeHangulFull 9 ModoHanguldeancho

completovbIMEModeHangul 10 ModoHanguldemitadde

ancho

Losvaloresdeconstanteparalaconfiguraciónregionalchinasonlossiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeOn 1 IMEactivadovbIMEModeOff 2 IMEdesactivado

Page 28: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MsgBox(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

ArgumentosdeMsgBox

Constante Valor DescripciónvbOKOnly 0 SóloelbotónAceptar

(predeterminado)vbOKCancel 1 LosbotonesAceptaryCancelarvbAbortRetryIgnore 2 LosbotonesAnular,Reintentare

IgnorarvbYesNoCancel 3 LosbotonesSí,NoyCancelar.VbYesNo 4 LosbotonesSíyNovbRetryCancel 5 LosbotonesReintentaryCancelarvbCritical 16 MensajecríticovbQuestion 32 ConsultadeadvertenciavbExclamation 48 MensajedeadvertenciavbInformation 64 MensajedeinformaciónvbDefaultButton1 0 Elprimerbotóneselpredeterminado

(predeterminado)

Page 29: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbDefaultButton2 256 ElsegundobotóneselpredeterminadovbDefaultButton3 512 EltercerbotóneselpredeterminadovbDefaultButton4 768 ElcuartobotóneselpredeterminadovbApplicationModal 0 Cuadrodemensajesdeaplicación

modal(valorpredeterminado)vbSystemModal 4096 CuadrodemensajesmodaldelsistemavbMsgBoxHelpButton 16384 AgregaelbotónAyudaalcuadrode

mensajeVbMsgBoxSetForeground 65536 Especificalaventanadelcuadrode

mensajecomolaventanadeprimerplano

vbMsgBoxRight 524288 EltextosealineaaladerechavbMsgBoxRtlReading 1048576 Especificaqueeltextodebeaparecer

paraleerdederechaaizquierdaensistemashebreosyárabes

ValoresdevueltosporMsgBox

Constante Valor DescripciónvbOK 1 BotónAceptarpresionadovbCancel 2 BotónCancelar

presionadovbAbort 3 BotónAnularpresionadovbRetry 4 BotónReintentar

presionadovbIgnore 5 BotónIgnorarpresionadovbYes 6 BotónSípresionadovbNo 7 BotónNopresionado

Page 30: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Otras

constantes

LassiguientesconstantesestándefinidasenlabibliotecadetiposdeVisualBasicparaAplicacionesysepuedenutilizarencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Equivalente DescripciónvbCrLf Chr(13)+Chr(10) Combinaciónderetornodecarroy

avancedelíneavbCr Chr(13) CarácterderetornodecarrovbLf Chr(10) CarácterdeavancedelíneavbNewLine Chr(13)+Chr(10)o,

enMacintosh,Chr(13)

Carácterdeavancedelíneaespecíficodeplataforma;siemprequeseaválidoparalaplataformaactual

vbNullChar Chr(0) Carácterquetieneelvalor0vbNullString Cadenaconelvalor0 Noeslomismoqueunacadenade

longitudcero("");seutilizaparallamaraprocedimientosexternos

vbObjectError -2147221504 Losnúmerosdeerrordefinidosporelusuariodeberíansermayoresqueestevalor.Porejemplo:Err.RaiseNumber=vbObjectError+

1000

Page 31: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbTab Chr(9) CarácterdetabuladorvbBack Chr(8) CarácterderetrocesovbFormFeed Chr(12) NoesútilenMicrosoftWindowsoen

MacintoshvbVerticalTab Chr(11) NoesútilenMicrosoftWindowsoen

Macintosh

Page 32: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

QueryClose(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbFormControlMenu 0 ElusuarioeligeelcomandoCerrardel

menúControlenelformulario.vbFormCode 1 SeinvocalainstrucciónUnloaddesde

código.vbAppWindows 2 Estáterminandolasesiónactualdel

entornooperativoMicrosoftWindows.vbAppTaskManager 3 ElAdministradordetareasdeWindows

estácerrandolaaplicación.

Page 33: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Shell(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbHide 0 Laventanaseocultayelenfoquepasaa

laventanaoculta.VbNormalFocus 1 Laventanatieneelenfoqueyse

restauraasutamañoyposiciónoriginales.

VbMinimizedFocus 2 Laventanasemuestraenformadeiconoconelenfoque.

VbMaximizedFocus 3 Laventanasemaximizaconelenfoque.VbNormalNoFocus 4 Laventanaserestauraasutamañoy

posiciónmásrecientes.Laventanaactivaactualmentepermaneceactiva.

VbMinimizedNoFocus 6 Laventanasemuestraenformadeicono.Laventanaactivaactualmentepermaneceactiva.

EnMacintosh,vbNormalFocus,vbMinimizedFocusyvbMaximizedFocuscolocanlaaplicaciónenprimerplano;vbHide,vbNoFocus,

Page 34: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbMinimizedFocuscolocanlaaplicaciónenelfondo.

Page 35: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

StrConv(constantes)

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbUpperCase 1 Conviertelacadenaenmayúsculas.vbLowerCase 2 Conviertelacadenaenminúsculas.vbProperCase 3 Poneenmayúsculalaprimeraletradecada

palabradelacadena.vbWide 4 Loscaracteresestrechos(unsolobyte)se

conviertenencaracteresanchos(dedoblebyte).SeaplicaaconfiguracionesregionalesdelLejanoOriente

vbNarrow 8 Loscaracteresanchos(dedoblebyte)seconviertenencaracteresestrechos(deunsolobyte).Seaplicaaconfiguraciones

Page 36: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

regionalesdelLejanoOriente.vbKatakana 16 LoscaracteresHiraganadeunacadenase

conviertenencaracteresKatakana.SóloseaplicaenJapón.

vbHiragana 32 LoscaracteresKatakanadeunacadenaseconviertenencaracteresHiragana.SóloseaplicaenJapón.

vbUnicode 64 ConviertelacadenaaUnicodeutilizandolapáginadecódigospredeterminadadelsistema.(NodisponibleparaMacintosh.)

vbFromUnicode 128 ConviertelacadenadesdeUnicodealapáginadecódigospredeterminadadelsistema.(NodisponibleparaMacintosh.)

Page 37: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

VarType(constantes)

Page 38: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sepuedenutilizarlassiguientesconstantesencualquierlugardelcódigoenvezdelosvaloresreales:

Constante Valor DescripciónvbEmpty 0 Sininicializar(predeterminado)vbNull 1 NocontienedatosválidosvbInteger 2 IntegervbLong 3 EnterolargovbSingle 4 Númerodesignoflotantedeprecisión

simplevbDouble 5 NúmerodesignoflotantedeprecisióndoblevbCurrency 6 CurrencyvbDate 7 DatevbString 8 StringvbObject 9 ObjetovbError 10 ErrorvbBoolean 11 BooleanvbVariant 12 Variant(sóloseutilizaparamatricesde

variants)vbDataObject 13 ObjetodeaccesoadatosvbDecimal 14 DecimalvbByte 17 BytevbUserDefinedType 36 Variantsquecontienentiposdefinidosporel

usuariovbArray 8192 Matriz

Page 39: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

#Const(Directiva)

Page 40: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SeutilizaparadefinirconstantesdecompilacióncondicionalparaVisualBasic.

Sintaxis

#Constconstante=expresión

Lasintaxisdeladirectivadecompilación#Constconstadelassiguientespartes:

Parte Descripciónconstante Serequiere;Variant(String).Nombredelaconstante;siguelas

convencionesestándardenombresdevariable.expresión Requerido.Literal,otraconstantedecompilacióncondicionalo

cualquiercombinaciónqueincluyaoperadoresaritméticosológicos,exceptoIs.

Comentarios

LasconstantesdecompilacióncondicionalsonsiempredetipoPrivateparaelmóduloenqueaparecen.NoesposiblecrearconstantesdecompilacióndetipoPublicconladirectiva#Const.LasconstantesdecompilacióndetipoPublicsolamentesepuedencreardesdelainterfazdeusuario.

Enexpresiónsolamentesepuedenutilizarconstantesdecompilacióncondicional(yliterales).ElusodeunaconstanteestándardefinidaconConstodeunaconstantenodefinidaproduciráunerror.Alainversa,lasconstantesdefinidasconlapalabraclave#Constsolamentesepuedenutilizarparacompilacióncondicional.

Lasconstantesdecompilacióncondicionalsiempreseevalúananiveldemóduloindependientementedesuubicaciónenelcódigo.

Page 41: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

#If...Then...#Else(Directiva)

CompilacondicionalmentebloquesdecódigodeVisualBasicseleccionados.

Sintaxis

#IfexpresiónThen

instrucciones

[#ElseIfexpresión-nThen

Page 42: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

[instrucciones_elseif]]

[#Else

[instrucciones_else]]

#EndIf

Lasintaxisdeladirectiva#If...Then...#Elseconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.Cualquierexpresión,formada

exclusivamenteporunaomásconstantesdecompilacióncondicional,literalesyoperadores,queseevalúacomoTrueoFalse.

instrucciones Requerido.LíneasdeprogramadeVisualBasicodirectivasdecompilaciónqueseevaluaránsisuexpresiónasociadadacomoresultadoTrue.

expresión-n Opcional.Cualquierexpresiónformadaexclusivamenteporunaomásconstantesdecompilacióncondicional,literalesyoperadores,queseevalúacomoTrueoFalse.

instrucciones_elseif Opcional.Unaomáslíneasdeprogramaodirectivasdecompilaciónqueseevalúansiexpresión-ndacomoresultadoTrue.

instrucciones_else Opcional.Unaomáslíneasdeprogramaodirectivasdecompilaciónqueseevalúansiningunaexpresiónoexpresión-nanteriordacomoresultadoTrue.

Comentarios

Elcomportamientodeladirectiva#If...Then...#ElseesanálogoaldelainstrucciónIf...Then...Else,exceptoenquenoexistelaformadeunaúnicalíneaparalasdirectivas#If,#Else,#ElseIfy#EndIf;esdecir,enlamismalíneadeunadeestasdirectivasnopuedeaparecerotrocódigo.Lacompilacióncondicionalseutilizahabitualmenteparacompilarelmismoprogramaenplataformasdistintas.Tambiénseutilizaparaevitarqueelcódigodedepuraciónaparezcaenlosarchivosejecutables.Elcódigoexcluidoduranteuna

Page 43: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

compilacióncondicionalseomitecompletamenteenelarchivoejecutablefinal,demodoquenotieneningúnefectoeneltamañonienelrendimiento.

Independientementedelautilizacióndelasexpresiones,todasellasseevalúan.Portanto,todaslasconstantesutilizadasenlasexpresionessedebenhaberdefinido.LasconstantesnodefinidasseevalúancomoEmpty.

NotaLainstrucciónOptionComparenoafectaalasexpresionesdelasinstrucciones#Ify#ElseIf.LasexpresionesdelasdirectivasdecompilacióncondicionalsiempreseevalúanconOptionCompareText.

Page 44: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Activate,Deactivate(Eventos)

EleventoActivateseproducecuandounobjetopasaaserlaventanaactiva.EleventoDeactivateseproducecuandounobjetoyanoeslaventanaactiva.

Sintaxis

PrivateSubobjeto_Activate()

PrivateSubobjeto_Deactivate()

ElmarcadordeposiciónobjetorepresentaunaexpresióndeobjetoquequedacomoresultadounobjetoincluidoenlalistaSeaplicaa.

Comentarios

UnobjetopuedepasaraactivoutilizandoelmétodoShowencódigo.

Page 45: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EleventoActivatesepuedeproducirsólocuandounobjetoesvisible.UnUserFormcargadoconLoadnoesvisibleamenosqueutiliceelmétodoShow.

LoseventosActivateyDeactivateseproducensólocuandomueveelenfoquedentrodeunaaplicación.Moverelenfoqueaodesdeunobjetoenotraaplicaciónnoactivaningúnevento.

EleventoDeactivatenoseproducecuandodescargaunobjeto.

Page 46: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Initialize(Evento)

Seproducedespuésdequesecargaunobjeto,peroantesdequesemuestre.

Sintaxis

PrivateSubobject_Initialize()

ElmarcadordeposiciónobjetorepresentaunaexpresióndeobjetoquequedacomoresultadounobjetoincluidoenlalistaSeaplicaa.

Comentarios

EleventoInitializeseutilizanormalmenteparaprepararseautilizarunaaplicaciónounobjetoUserForm.Seasignanunosvaloresinicialesalasvariablesysepuedenmoverocambiareltamañodeloscontrolesparaadecuarlosalosdatosdeinicialización.

Page 47: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Resize(Evento)

SeproducecuandounobjetoUserFormsecambiadetamaño.

Sintaxis

PrivateSubUserForm_Resize()

Comentarios

UtiliceelprocedimientodeeventoResizeparamoverocambiareltamañode

Page 48: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

controlescuandosecambiaeltamañodelobjetoUserFormprimario.Tambiénpuedeutilizaresteprocedimientodeeventoparavolveracalcularvariablesopropiedades.

Page 49: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Terminate(Evento)

SeproducecuandosequitandememoriatodaslasreferenciasaunainstanciadeunobjetoestableciendotodaslasvariablesquehacenreferenciaalobjetoaNothingocuandolaúltimareferenciaalobjetosaledelalcance.

Sintaxis

PrivateSubobjeto_Terminate()

Elmarcadordeposiciónobjetorepresentaunaexpresióndeobjetoquequeda

Page 50: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

comoresultadounobjetoincluidoenlalistaSeaplicaa.

Comentarios

EleventoTerminateseproducedespuésdequesedescargaelobjeto.EleventoTerminatenoseactivasisequitandememorialasinstanciasdelUserFormolaclaseporquelaaplicaciónfinalizadeformaanormal.Porejemplo,silaaplicaciónllamaalainstrucciónEndantesdequitardememoriatodaslasinstanciasexistentesdelaclaseodelUserForm,eleventoTerminatenoseactivaparaesaclaseoUserForm.

Page 51: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Abs(Función)

Devuelveunvalordelmismotipoqueelquesepasócomoparámetroyqueespecificaelvalorabsolutodeunnúmero.

Sintaxis

Abs(número)

Elargumentonúmeropuedesercualquierexpresiónnuméricaválida.SinúmerocontieneNull,lafuncióndevolveráNull;siesunavariablenoinicializada,

Page 52: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

devolverácero.

Comentarios

Elvalorabsolutodeunnúmeroessumagnitudsinsigno.Porejemplo,ABS(-1)yABS(1)devuelven1.

Page 53: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Array(Función)

Devuelveunavariantequecontieneunamatriz.

Page 54: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Array(lista_argumentos)

Elargumentolista_argumentosrequeridoesunalistadevaloresdelimitadosporcomasqueseasignanaloselementosdelamatrizcontenidaeneltipoVariant.Sinoseespecificaningúnargumento,secreaunamatrizdelongitudcero.

Comentarios

Lanotaciónusadaparahacerreferenciaacualquierelementodeunamatrizconsisteenelnombredelavariableseguidoporunparéntesisquecontieneunnúmerodeíndiceparaelelementodeseado.Enelejemplosiguiente,laprimerainstruccióncreaunavariablellamadaAdetipoVariant.LasegundainstrucciónasignaunamatrizalavariableA.Laúltimainstrucciónasignaaotravariableelvalorcontenidoenelsegundoelementodelamatriz.

DimAAsVariant

A=Array(10,20,30)

B=A(2)

EllímiteinferiordeunamatrizcreadamediantelafunciónArraysedeterminaporellímiteinferiorespecificadoconlainstrucciónOptionBase,amenosqueArrayestéautorizadoconelnombredelabibliotecatipo(porejemploVBA.Array).Siseautorizaconelnombredelabibliotecatipo,ArraynoseveráafectadoporOptionBase.

NotaUnavariableVariantnodeclaradacomounamatrizpuedecontener,noobstante,unamatriz.UnavariableVariantpuedecontenerunamatrizdecualquiertipo,exceptocadenasdelongitudfijaytiposdefinidosporelusuario.AunqueunavariableVariantquecontieneunamatrizesconceptualmentediferentedeunamatrizcuyoselementossondetipoVariant,setieneaccesoaloselementosdelamatrizdelmismomodo.

Page 55: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Asc(Función)

Page 56: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveuntipoIntegerquerepresentaelcódigodecaráctercorrespondientealaprimeraletradeunacadena.

Sintaxis

Asc(cadena)

Elargumentoobligatoriocadenaesunaexpresióndecadenaválida.Sicadenanocontienecaracteres,seproduceunerrorentiempodeejecución.

Comentarios

Elintervalodelvalorderetornoesentre0y255ensistemasquenoseanDBCS,yentre–32768y32767ensistemasDBCS.

NotaLafunciónAscBseutilizaconbytesdedatoscontenidosenunacadena.Enlugardedevolverelcódigodecarácterparaelprimercarácter,AscBdevuelveelprimerbyte.LafunciónAscWsiempredevuelveelcódigodecarácterUnicodeenplataformasdondenoseadmiteUnicode,encuyocaso,elcomportamientoesidénticoaldelafunciónAsc.

NotaVisualBasicparaMacintoshnoescompatibleconcadenasUnicode.Portanto,AscW(n)nopuededevolvertodosloscaracteresUnicodeparanvaloresenelintervalode128–65,535,quesípuedeenelentornoWindows.Encambio,AscW(n)intentalamejorsoluciónparavaloresUnicodenmayoresde127.Portanto,nodeberíautilizarAscWenelentornoMacintosh.

Page 57: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Atn(Función)

DevuelveuntipoDoublequeespecificaelarcotangentedeunnúmero.

Sintaxis

Atn(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválida.

Comentarios

Page 58: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LafunciónAtntomalarazóndedosladosdeuntriángulorectángulo(número)ydevuelveelángulocorrespondienteenradianes.Larazóneslalongituddelladoopuestoalángulodivididaporlalongituddelladoadyacentealángulo.

Elángulodelresultadoes-pi/2api/2radianes.

Paraconvertirgradosenradianes,multipliquelosgradosporPI/180.Paraconvertirradianesengrados,multipliquelosradianespor180/pi.

NotaAtneslafuncióntrigonométricainversadeTan,quetomaunánguloysuargumentoydevuelvelarazóndedosladosdeuntriángulorectángulo.Noconfundaconlacotangente,queeselinversodelatangente(1/tangente).

Page 59: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Choose(Función)

Seleccionaydevuelveunvalordeunalistadeargumentos.

Sintaxis

Page 60: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Choose(índice,opción-1[,opción-2,...[,opción-n]])

LasintaxisdelafunciónChooseconstadelassiguientespartes:

Parte Descripcióníndice Requerido.Expresiónnuméricaocampoquedacomoresultadoun

valorentre1yelnúmerodeopcionesdisponibles.opción Requerido.ExpresióndeltipoVariantquecontieneunadelas

opcionesposibles.

Comentarios

LafunciónChoosedevuelveunvalordelalistadeopcionesdependiendodelvalordeíndice.Siíndicees1,lafunciónChoosedevolverálaprimeraopcióndelalista;siíndicees2,devolverálasegundayasísucesivamente.

PuedeutilizarlafunciónChooseparabuscarunvalorenunalistadeposibilidades.Porejemplo,siíndicedacomoresultado3yopción-1="uno",opción-2="dos"yopción-3="tres",lafunciónChoosedevuelve"tres".Estafuncionalidadesespecialmenteútilcuandoíndicerepresentaelvalorenungrupodeopción.

LafunciónChooseevalúatodaslasopcionesdelalista,aunquesólodevuelvauna.Porestarazón,debecomprobarquenoseproduciránefectosnodeseados.Porejemplo,siutilizalafunciónMsgBoxcomopartedeunaexpresiónentodaslasopciones,apareceráuncuadrodemensajeparacadaopciónenelmomentodeevaluarla,aunquelafunciónChoosesólovayaadevolverelvalordeunadeellas.

LafunciónChoosedevuelveNullsiíndiceesmenorque1omayorqueelnúmerodeopcionesdelalista.

Siíndicenoesunnúmeroentero,seredondearáalenteromáscercanoantesdesuevaluación.

Page 61: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Chr(Función)

Page 62: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveuntipoStringquecontieneelcarácterasociadoconelcódigodecarácterespecificado.

Sintaxis

Chr(códigocar)

ElargumentocódigocaresuntipoLongqueidentificaauncarácter.

Comentarios

Losnúmerosdel0al31sonlosmismosqueloscódigosASCIIestándarnoimprimibles.Porejemplo,Chr(10)devuelveuncarácterdeavancedelínea.Elintervalonormaldecódigocares0–255.Sinembargo,ensistemasDBCS,elintervalorealdecódigocaresde-32768a65535.

NotaLafunciónChrBseutilizacondatosdebyteincluidosenuntipoString.Enlugardedevolveruncarácter,quepuedeserdeunoodedosbytes,ChrBsiempredevuelveunúnicobyte.LafunciónChrWdevuelveuntipoStringquecontieneelcarácterUnicodeexceptoenplataformasdondenoseadmiteUnicode,encuyocaso,elcomportamientoesidénticoaldelafunciónChr.

NotaVisualBasicparaMacintoshnoadmitecadenasUnicode.Porlotanto,ChrW(n)nopuededevolvertodosloscaracteresUnicodeparanvaloresenelintervalo128–65,535,quesípuedeenelentornoWindows.Sinembargo,ChrW(n)intentalamejorsoluciónparavaloresnUnicodemayoresde127.Portanto,nodeberíausarChrWenelentornoMacintosh.

Page 63: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Command(Función)

DevuelvelapartedelargumentodelalíneadecomandoutililizadaparaejecutarMicrosoftVisualBasicounprogramaejecutabledesarrolladoconVisualBasic.LafunciónCommanddeVisualBasicnoestádisponibleenaplicacionesdeMicrosoftOffice.

Sintaxis

Command

Comentarios

CuandoVisualBasicesejecutadodesdelalíneadecomando,unapartedelalíneadecomandoquesiguea/cmdespasadaalprogramacomoelargumentodelalíneadecomando.Enelsiguienteejemplo,argslíneacomandorepresentalainformacióndelargumentodevueltoporlafunciónCommand.

Page 64: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

VB/cmdargslíneacomando

ParaaplicacionesdesarrolladasconVisualBasicycompiladasparaobtenerunarchivo.exe,Commanddevuelveunosargumentosqueaparecendespuésdelnombredelaaplicaciónenlalíneadecomandos.Porejemplo:

MiAplargslíneacomando

Paraencontrarcómolosargumentosdelalíneadecomandopuedensercambiadosenlainterfazdeusuariodelaaplicaciónqueestáutilizando,busqueellaAyuda"argumentosdelalíneadecomandos."

Page 65: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Cos(Función)

DevuelveuntipoDoublequeespecificaelcosenodeunángulo.

Sintaxis

Cos(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválidaqueexpresaunánguloenradianes.

Page 66: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LafunciónCostomaunánguloydevuelvelarazóndedosladosdeuntriángulorectángulo.Larazóneslalongituddelladoadyacentealángulodivididaporlalongituddelahipotenusa.

Elresultadoestádentrodelintervalo-1a1.

Paraconvertirgradosenradianes,multipliquelosgradosporpi/180.Paraconvertirradianesengrados,multipliquelosradianespor180/pi.

Page 67: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CreateObject(Función)

Page 68: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CreaydevuelveunareferenciaaunobjetoActiveX.

Sintaxis

CreateObject(clase,[nombre_servidor])

LasintaxisdelafunciónCreateObjectcontienetrespartes:

Parte Descripciónclase Requerido;Variant(Cadena).Elnombredelaaplicaciónyde

laclasedelobjetoquesevaacrear.nombre_sevidor Opcional;Variant(Cadena).Elnombredelservidordered

dondesecrearáelobjeto.Sinombre_servidoresunacadenavacía(""),seutilizalamáquinalocal.

Elargumentoclaseutilizalasintaxisnombre_aplicación.tipo_objetoyconstadelassiguientespartes:

Parte DescripciónNombre_aplicación

Requerido;Variant(String).Elnombredelaaplicaciónqueproporcionaelobjeto.

tipo_objeto

Requerido;Variant(String).Eltipooclasedeobjetoquesevaacrear.

Comentarios

CadaaplicaciónqueadmiteAutomatizaciónproporcionaalmenosuntipodeobjeto.Porejemplo,unaaplicacióndeprocesadordetextospuedeproporcionarunobjetoApplication,unobjetoDocumentyunobjetoToolbar.

Page 69: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ParacrearunobjetoActiveX,asigneelobjetodevueltoporlafunciónCreateObjectaunavariabledeobjeto:

'Declareunavariabledeobjetoparacontenerlareferenciade

'objeto.DimAsObjectprovocaunenlaceentiempodeejecución.

DimExcelSheetAsObject

SetExcelSheet=CreateObject("Excel.Hoja")

Estecódigoinicialaaplicacióncreandoelobjeto(enestecaso,unahojadecálculodeMicrosoftExcel).Unavezcreadounobjeto,hagareferenciaaélenelcódigomediantelavariabledeobjetoquedefinió.Enelsiguienteejemplotieneaccesoalaspropiedadesylosmétodosdelnuevoobjetomediantelavariabledeobjeto,ExcelSheet,yotrosobjetosdeMicrosoftExcel,incluyendoelobjetoApplicationylacolecciónCells.

'HacevisibleExcelmedianteelobjetoApplication

ExcelSheet.Application.Visible=True

'Colocaalgúntextoenlaprimeraceldadelahoja

ExcelSheet.Application.Cells(1,1).Value="EstoeslacolumnaA,fila1"

'GuardalahojaeneldirectorioC:\test.xls

ExcelSheet.SaveAs"C:\TEST.XLS"

'CierraExcelconelmétodoQuitenelobjetoApplication

ExcelSheet.Application.Quit

'Liberalavariabledeobjeto.

SetExcelSheet=Nothing

AldeclararunavariabledeobjetoconlacláusulaAsObjectsecreaunavariablequepuedecontenerunareferenciaacualquiertipodeobjeto.Sinembargo,elaccesoalobjetomedianteestavariableesunenlaceentiempodeejecución,esdecir,elenlaceseproducecuandoseejecutaelprograma.Paracrearunavariabledeobjetoqueproduzcaunenlaceentiempodediseño(esdecir,queelenlaceseproduzcacuandosecompileelprograma),declarelavariabledeobjetoconundeterminadoId.declase.Porejemplo,puededeclararycrearlassiguientesreferenciasdeMicrosoftExcel:

DimxlAppAsExcel.Application

Page 70: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DimxlBookAsExcel.Workbook

DimxlSheetAsExcel.WorkSheet

SetxlApp=CreateObject("Excel.Application")

SetxlBook=xlApp.Workbooks.Add

SetxlSheet=xlBook.Worksheets(1)

Lareferenciamedianteunavariabledeenlaceentiempodediseñopuedeproporcionarmejorrendimiento,perosólopuedecontenerunareferenciaalaclaseespecificadaenladeclaración.

PuedetransferirunobjetodevueltoporlafunciónCreateObjectaunafunciónqueesperaunobjetocomoargumento.Porejemplo,elsiguientecódigocreaytransfiereunareferenciaalobjetoExcel.Application:

CallMiSub(CreateObject("Excel.Application"))

PuedecrearunobjetoencualquierPCremotoderedpasandoelnombrealargumentoservernamedeCreateObject.EsenombreeselmismoquelaparteMachineNamedeunnombrederecursocompartido:paraunnombrederecursocompartido"\\MiServidor\Público,"servernamees"MiServidor."

NotaConsulteladocumentacióndeCOM(veaMicrosoftDeveloperNetwork)paraobtenermásinformaciónacercadecómohacervisibleunaaplicaciónounPCremoto.Puedeagregarunaclavederegistroparasuaplicación.

ElcódigosiguientedevuelveelnúmerodeversióndeunainstanciadeExcelqueseejecutaenunPCremotollamadoMiServidor:

DimxlAppAsObject

SetxlApp=CreateObject("Excel.Application","MyServidor")

Debug.PrintxlApp.Version

Sielservidorremotonoexisteonoestádisponible,ocurriráunerrorentiempodeejecución.

NotaUtilicelafunciónCreateObjectcuandonohayaningunainstanciaactivadelobjeto.Siseestáejecutandounainstanciadelobjeto,seiniciaráunanueva

Page 71: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

instanciaysecrearáunobjetodeltipoespecificado.Parautilizarlainstanciaactivaoparainiciarlaaplicaciónyquecargueunarchivo,utilicelafunciónGetObject.

Siunobjetoseharegistradoasímismocomounobjetodeinstanciaúnica,sólosecrearáunainstanciadelobjeto,sintenerencuentacuántasvecesseejecutalafunciónCreateObject.

Page 72: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CurDir(Función)

DevuelveuntipoVariant(String)querepresentalarutadeaccesoactual.

Sintaxis

CurDir[(unidad)]

Elargumentorequeridounidad,esunaexpresióndecadenaqueespecificaunaunidaddediscoexistente.Sinoseespecificalaunidaddediscooelargumentounidadesdelongitudcero(""),lafunciónCurDirdevuelvelarutadeaccesodelaunidaddediscoactual.EnMacintosh,CurDirignoracualquierunidadespecificadaysimplementedevuelvelarutadelaunidadactual.

Page 73: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CVErr(Función)

DevuelveuntipoVariantdeunsubtipoErrorquecontieneunnúmerodeerrorespecificadoporelusuario.

Page 74: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

CVErr(númeroerror)

Elargumentoobligatorionúmeroerrorescualquiernúmerodeerrorválido.

Comentarios

UtilicelafunciónCVErrparacrearerroresdefinidosporelusuarioenlosprocedimientoscreadosporelusuario.Porejemplo,sihacreadounafunciónqueaceptavariosargumentosynormalmentedevuelveunacadena,puedehacerquesufunciónevalúelosargumentosdeentradaparaasegurarsedequeestánenelintervaloadecuado.Sinoloestán,esprobablequesufunciónnodevuelvaelvalorderetornoqueesperaba.Enestecaso,CVErrlepermitedevolverunnúmerodeerrorqueleindicaráquéacciónrealizar.

NohayunaconversiónimplícitaenError.Porejemplo,nopuedeasignardirectamenteelvalorderetornodeCVErraunavariablequenoseaVariant.Sinembargo,puederealizarunaconversiónexplícita(utilizandoCInt,CDbl,etc…)delvalordevueltoporCVErryasignaraunavariabledeltipodedatoadecuado.

Page 75: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Date(Función)

DevuelveuntipoVariant(Date)quecontienelafechaactualdelsistema.

Sintaxis

Date

Comentarios

UtilicelainstrucciónDateparaestablecerlafechadelsistema.

ElcomportamientodeDate,ysielcalendarioesgregoriano,Date$,nocambiaporlaconfiguracióndelapropiedadCalendar.SielcalendarioesHijri,Date$devuelveunacadenade10caracteresdeltipomm-dd-yyyy,dondemm(01-12),dd(01-30)yyyyy(1400-1523)sonlosmeses,díasyañosHijri.Elintervalogregorianoequivalenteesdel1deenerode1980al31dediciembredel2099.

Page 76: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateAdd(Función)

DevuelveunvalordetipoVariant(Date)conunafechaalaquesehaagregadounintervalodetiempoespecificado.

Page 77: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

DateAdd(intervalo,número,fecha)

LasintaxisdelafunciónDateAddconstadelossiguientesargumentosconnombre:

Parte Descripciónintervalo Requerido.Expresióndecadenaquecontieneelintervalode

tiempoquesedeseaagregar.número Requerido.Expresiónnuméricaconelnúmerodeintervalos

quesedeseaagregar.Puedeserpositiva(paraobtenerfechasfuturas)onegativa(paraobtenerfechaspasadas).

fecha Requerido.ValordetipoVariant(Date)oliteralquerepresentalafechaenlaqueseagregóelintervalo.

Valores

Elargumentointervalotienelossiguientesvalores:

Valor Descripciónyyyy Añoq Trimestrem Mesy Díadelañod Díaw Díadelasemanaww Semanah Horan Minutos Segundo

Comentarios

Page 78: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PuedeutilizarlafunciónDateAddparaagregarorestarunintervalodetiempoespecificadodeunafecha.Porejemplo,conDateAddpodríacalcularunafecha30díasposterioraldíadehoyounahora45minutosposterioralaactual.

Sideseaagregardíasafecha,puedeutilizarDíadelaño("y"),Día("d")oDíadelasemana("w").

LafunciónDateAddnodevuelvenuncaunafechanoválida.Enelejemplosiguienteseagregaunmesal31deenero:

DateAdd("m",1,"31-ene-95")

Enestecaso,DateAdddevuelve28-feb-95yno31-feb-95.Sifechaes31-ene-96,devolverá29-feb-96,yaque1996esunañobisiesto.

Silafechacalculadavaaresultarinferioralaño100(estoes,serestanmásañosquelosquehayenfecha),seproduceunerror.

SinúmeronoesunvalordetipoLongseredondearáalnúmeroenteromáscercanoantesdeserevaluado.

NotaElformatodelvalordevueltoporDateAddesdeterminadoporlaconfiguracióndelPaneldecontrol,noporelformatoquesepasaenelargumentofecha.

NotaParafecha,silaconfiguracióndelapropiedadCalendaresgregoriano,lafechaproporcionadadebesergregoriana.SielcalendarioesHijri,lafechaproporcionadadebeserHijri.Silosvaloresdemessonnombres,elnombredebeserconsistenteconlacofiguraciónactualdelapropiedadCalenda.ParaminimizarlaposibilidaddeconflictosdelosnombresdemesconlaconfiguraciónactualdeCalendar,introduzcavaloresdemesnuméricos(formatodefechacorta).

Page 79: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateDiff(Función)

DevuelveunvalordetipoVariant(Long)queespecificaelnúmerodeintervalosdetiempoentredosfechasdeterminadas.

Page 80: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

DateDiff(intervalo,fecha1,fecha2[,primerdíasemana[,primerasemanaaño]])

LasintaxisdelafunciónDateDiffconstadelossiguientesargumentosconnombre:

Parte DescripciónIntervalo Requerido.Expresióndecadenaconelintervalode

tiempoutilizadoparacalcularladiferenciaentrefecha1yfecha2.

Fecha1,fecha2 Requerido;Variant(Date).Lasdosfechasquesevanautilizarenelcálculo.

Primerdíasemana Opcional.Constantequeespecificaelprimerdíadelasemana.Sinoseespecifica,seasumequeeseldomingo.

Primerasemanaaño Opcional.Constante,queespecificalaprimerasemanadelaño.Sinoseespecifica,seasumequeesaquéllaenlaqueseencuentreel1deenero.

Valores

Elargumentointervalotomalosvaloressiguientes:

Intervalo Descripciónyyyy Añoq Trimestrem Mesy Díadelañod Díaw Díadelasemanaww Semanah Horan Minutos Segundo

Page 81: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Elargumentoprimerdíasemanatomalossiguientesvalores:

Constante Valor DescripciónvbUseSystem 0 Utilicelaconfiguraciónde

laAPIdeNLS.vbSunday 1 Domingo

(predeterminado)vbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Constante Valor DescripciónvbUseSystem 0 Utilicelaconfiguraciónde

laAPIdeNLS.vbFirstJan1 1 Empiezaconlasemanaen

laqueseencuentrael1deenero(predeterminado).

vbFirstFourDays 2 Empiezaconlaprimerasemanaquetengaalmenoscuatrodíasenelnuevoaño.

vbFirstFullWeek 3 Empiezaconlaprimerasemanaqueestécompletamenteincluidaenelnuevoaño.

Comentarios

Page 82: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PuedeutilizarlafunciónDateDiffparadeterminarelnúmerodeintervalosespecificadosqueexistenentredosfechas.Porejemplo,conDateDiffpodríacalcularelnúmerodedíasentredosfechasoelnúmerodesemanasentrehoyyelfinaldelaño.

Sideseasaberelnúmerodedíasentrefecha1yfecha2,puedeutilizarDíadelaño("y")oDía("d").CuandointervaloesDíadelasemana("w"),DateDiffdevuelveelnúmerodesemanasentrelasdosfechas.Sifecha1eslunes,DateDiffcontaráelnúmerodeluneshastafecha2.Enlacuentaincluiráfecha2,peronofecha1.SiintervaloesSemana("ww"),lafunciónDateDiffdevolveráelnúmerodesemanasentrelasdosfechas.Enestecasocontaráelnúmerodedomingosentrefecha1yfecha2.DateDiffcontaráfecha2siesdomingo,peronofecha1,aunqueseadomingo.

Sifecha1serefiereaunmomentoposterioreneltiempoafecha2,lafunciónDateDiffdevolveráunnúmeronegativo.

Elargumentoprimerdíasemanaafectaaloscálculosqueutilizan"w"y"ww"comosímbolosdeintervalo.

Sifecha1ofecha2esunliteraldefecha,elaño,siseespecifica,pasaráaserunapartepermanentedelafecha.Sinembargo,sifecha1ofecha2estácomprendidaentrecomillasdobles("")yseomiteelaño,seinsertaráelañoencursoenelcódigocadavezqueseevalúelaexpresiónfecha1ofecha2.Asíesposibleescribircódigoquesepuedausarenañosdistintos.

Cuandocomparael31dediciembreconel1deenerodelañosiguiente,DateDiffparaunaño("yyyy")devolverá1aunquesólohayapasadoundía.

NotaParafecha1yfecha2,silaconfiguracióndelapropiedadCalendaresgregoriano,lafechaproporcionadadebesergregoriano.SielcalendarioesHijri,lafechaproporcionadadebeserHijri.

Page 83: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DatePart(Función)

DevuelveunvalordetipoVariant(Integer)quecontienelaparteespecificadadelafechadada.

Page 84: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

DatePart(intervalo,fecha[,primerdíasemana[,primerasemanaaño]])

LasintaxisdelafunciónDatePartconstadelossiguientesargumentosconnombre:

Parte Descripciónintervalo Requerido.Expresióndecadenaconelintervalode

tiempoquedeseadevolver.fecha Requerido.TipodevalorVariant(Date)quesedesea

evaluar.primerdíasemana Opcional.Unaconstantequeespecificaelprimerdía

delasemana.Sinoseespecifica,seasumequeeseldomingo.

primerasemanaaño Opcional.Unaconstantequeespecificalaprimerasemanadelaño.Sinoseespecifica,seasumequeesaquéllaenlaqueseencuentreel1deenero.

Valores

Elargumentointervalotomalossiguientesvalores:

Valor Descripciónyyyy Añoq Trimestrem Mesy Díadelañod Díaw Díadela

semanaww Semanah Horan Minutos Segundo

Page 85: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Elargumentoprimerdíasemanatomalossiguientesvalores:

Constante Valor DescripciónvbUseSystem 0 UtilizaelvalordelaAPIdeNLS.vbSunday 1 Domingo(predeterminado)vbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Elargumentoprimerasemanaañotomalossiguientesvalores:

Constante Valor DescripciónvbUseSystem 0 UtilizaelvalordelaAPI

deNLS.vbFirstJan1 1 Empiezaconlasemanaen

laqueseencuentrael1deenero(predeterminado).

vbFirstFourDays 2 Empiezaconlaprimerasemanaquetengaalmenoscuatrodíasenelnuevoaño.

vbFirstFullWeek 3 Empiezaconlaprimerasemanaqueestécompletamenteincluidaenelnuevoaño.

Comentarios

Page 86: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PuedeutilizarlafunciónDatePartparaevaluarunafechaydevolverunintervalodetiempoespecífico.Porejemplo,podríautilizarDatePartparacalculareldíadelasemanaolahoraactual.

Elargumentoprimerdíasemanaafectaaloscálculosqueutilizanlossímbolosdeintervalo"w"y"ww".

Sifechaesunliteraldefecha,elañoqueseespecifica,pasaráaserunapartepermanentedelafecha.Sinembargo,sifechaestáencerradaentrecomillasdobles("")yseomiteelaño,seinsertaráelañoencursoenelcódigocadavezqueseevalúelaexpresiónfecha.Asíesposibleescribircódigoquesepuedausarenañosdistintos.

NotaParafecha,silaconfiguracióndelapropiedadCalendaresgregoriano,lafechaproporcionadadebesergregoriano.SielcalendarioesHijri,lafechaproporcionadadebeserHijri.

Lapartedelafechadevueltaestáenunidadesdeperiododetiempodelactualcalendarioarábico.Porejemoplo,sielcalendarioactualesHijriylapartedelafechadevueltaeselaño,elvalordeañoesunañoHijri.

Page 87: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateSerial(Función)

DevuelveuntipoVariant(Date)paraunaño,mesydíaespecificados.

Sintaxis

DateSerial(año,mes,día)

LasintaxisdelafunciónDateSerialconstadelossiguientesargumentosconnombre:

Parte Descripción

Page 88: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

año Serequiere;Integer.Númeroentre100y9999,inclusiveounaexpresiónnumérica.

mes Serequiere;Integer.Cualquierexpresiónnumérica.día Serequiere;Integer.Cualquierexpresiónnumérica.

Comentarios

Paraespecificarunafecha,comoel31dediciembrede1991,elintervalodenúmerosparacadaargumentodeDateSerialdeberíaestarenelintervalonormalmenteaceptadoparalaunidad;esdecir,1–31paradíasy1–12parameses.Sinembargo,puedeespecificarfechasrelativasparacadaargumento,usandocualquierexpresiónnuméricaquerepresentealgúnnúmerodedías,mesesoaños,antesodespuésdeciertafecha.

Elejemplosiguienteusaexpresionesnuméricasenlugardenúmerosdefechaabsoluta.AquílafunciónDateSerialdevuelveunafechaqueeseldíaantesdelprimerdíadelmes(1-1),dosmesesantesdeagosto(8-2),10añosantesde1990(1990-10);enotraspalabras,el31demayode1980.

DateSerial(1990-10,8-2,1-1)

BajoWindows98yWindowsNT5,losañosdedosdígitosparaelargumentoañoseinterpretanbasadosenlaconfiguracióndelamáquinadefinidaporelusuario.Losvalorespredeterminadossonlosvaloresentre0y29,inclusive,seinterpretancomolosaños2000–2029.Losvalorespredeterminadosentre30y99,seinterpretancomolosaños1930–1999.Paraelrestodelosargumentosañoseusaunañoconloscuatrodígitos(porejemplo,1800).

VersionesmásrecientesdeWindowsinterpretanlosañosdedosdígitosbasadosenlosvalorespredeterminadosdescriotsanteriormente.Paraestarsegurodequelafuncióndevuelveelvalorapropiado,utiliceunañodecuatrodígitos.

Cuandounargumentonoestéincluidoenelintervaloaceptadonormalmenteparaél,seincrementahastalasiguienteunidadmayor,segúnconvenga.Porejemplo,siespecifica35días,seevalúacomounmesyalgunosdías,dependiendodelapartedelañodondeseaplique.Noobstante,siunsoloargumentoestáfueradesuintervalo-32.768a32.767osilafechaespecificadaporlostresargumentos,directamenteomedianteexpresión,noseincluyeenel

Page 89: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

intervaloaceptabledefechas,seproduceunerror.

NotaParafecha,mesydía,silaconfiguracióndelapropiedadCalendaresgregoriano,lafechaproporcionadadebesergregoriano.SielcalendarioesHijri,lafechaproporcionadadebeserHijri.

Lapartedelafechadevueltaestáenunidadesdeperiododetiempodelactualcalendarioarábico.Porejemoplo,sielcalendarioactualesHijriylapartedelafechadevueltaeselaño,elvalordeañoesunañoHijri.Paraelaergumentoaño,losvaloresentre0y99,inclusive,seinterpretancomolosaños1400-1499.Paratodoslosvaloresaño,utiliceelañocompletodecuatrodígitos(porejemplo,1520).

Page 90: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateValue(Función)

DevuelveuntipoVariant(Date).

Sintaxis

DateValue(fecha)

Elargumentofechaesnormalmenteunaexpresióndecadenaquerepresentaunafechadel1deenerodelaño100,al31dediciembrede9999.Sinembargo,fechatambiénpuedesercualquierexpresiónquepuedarepresentarunafecha,

Page 91: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

unahoraounafechayunahoraeneseintervalo.

Comentarios

Sifechaesunacadenaqueincluyesolamentenúmerosseparadosporseparadoresdefecha,DateValuereconoceelordenparames,díayañodeacuerdoalformatodeFechaabreviadoquesehayaespecificadoparaelsistema.DateValuetambiénreconocefechasclaramentedefinidasquecontengannombresdemes,enformacompletaoabreviada.Porejemplo,ademásdereconocer30/12/1991y30/12/91,DateValuetambiénreconoce30dediciembrede1991ydic31,1991.

Siseomitelapartedeañodefecha,DateValueusaelañoactualdelafechadelsistemadesuPC.

Sielargumentofechaincluyeinformacióndehora,DateValuenoladevuelve.Sinembargo,sifechaincluyeinformacióndehoranoválida(talcomo"89:98"),ocurriráunerror.

NotaParafecha,silaconfiguracióndelapropiedadCalendaresgregoriano,lafechaproporcionadadebesergregoriano.SielcalendarioesHijri,lafechaproporcionadadebeserHijri.SilafechaproporcionadaesHijri,elargumentofechaesunaCadenaquerepresentaunafechadesde1/1/100(gregoriano,2deagostode718)a4/3/9666(gregoriano,31dediciembrede9999).

Page 92: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Day(Función)

DevuelveelvalordetipoVariant(Integer)queespecificaunnúmeroenteroentre1y31,inclusive,querepresentaeldíadelmes.

Page 93: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Day(fecha)

ElargumentofechaescualquiervalordetipoVariant,expresiónnumérica,cadena,ocualquiercombinaciónquepuedarepresentarunafecha.SifechacontieneNull,lafuncióndevolveráNull.

NotaSilaconfiguracióndelapropiedadCalendaresgregoriano,elenterodevueltorepresentaeldíagregorianodelmesporelaergumentodefecha.SielcalendarioesHijri,elenterodevueltorepresentaeldíaHijridelmesporelargumentofecha.

Page 94: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DDB(Función)

DevuelveuntipoDoublequeindicaladepreciacióndeunbienduranteunperiododetiempoespecificadoutilizandoelmétododebalancededobledeclinaciónuotrométodoqueespecifique.

Sintaxis

DDB(cost,salvage,life,period[,factor])

LafunciónDDBconstadelossiguientesargumentosconnombre:

Page 95: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripcióncost Requerido.UntipoDoublequeindicaelcostoinicialdelbien.salvage Requerido.UntipoDoublequeindicaelvalordelbienaltérmino

desuvidaútil.life Requerido.UntipoDoublequeindicaladuracióndelavidaútil

delbien.period Requerido.UntipoDoublequeindicaelperiodoparaelquese

calculaladepreciacióndelbien.factor Opcional.UntipoVariantqueindicalavelocidadalaquedeclina

elbalance.Siseomite,seasumeunvalor2(métododedeclinacióndoble).

Comentarios

Elmétododebalancededobledeclinacióncalculaladepreciaciónaunritmoacelerado.Ladepreciaciónesmayorenelprimerperiodoysereduceenlosperiodossucesivos.

Losargumentoslifeyperioddebenexpresarseenlasmismasunidades.Porejemplo,silifeseespecificaenmeses,periodtambiéndeberáindicarseenmeses.Todoslosargumentosdebensernúmerospositivos.

LafunciónDDButilizalafórmulasiguienteparacalcularladepreciaciónenunperiododado:

Depreciación/period=((cost–salvage)*factor)/life

Page 96: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dir(Función)

DevuelveuntipoStringquerepresentaelnombredeunarchivo,directorioocarpetaquecoincideconelpatrónoatributodearchivoespecificado,olaetiquetadevolumendeunaunidaddedisco.

Page 97: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Dir[(nombre_ruta[,atributos])]

LasintaxisdelafunciónDirconstadelassiguientespartes:

Parte Descripciónnombre_ruta Opcional.Expresióndecadenaqueespecificaunnombrede

archivo.Puedeincluireldirectorioocarpetaylaunidaddedisco.Sinoseencuentranombre_ruta,devolveráunacadenadelongitudcero("").

Atributos Opcional.Constanteoexpresiónnumérica,cuyasumaespecificalosatributosdearchivo.Siseomite,devuelvelosarchivosquecoincidenconnombre_rutaperonotieneatributos.

Valores

Losvaloresdelargumentoatributossonlossiguientes:

Constante Valor DescripciónvbNormal 0 (Predeterminado)Especificaarchivos

sinatributos.vbReadOnly 1 Especificaarchivosdesólolectura

ademásdesinatributos.vbHidden 2 Especificaarchivosocultosademásde

sinatributos.VbSystem 4 Especificaarchivosdesistemaademás

desinatributos.NoestádisponibleenMacintosh.

vbVolume 8 Especificalaetiquetadelvolumen;siseespecificacualquierotroatributo,seignoravbVolume.NoestádisponibleenMacintosh.

vbDirectory 16 Especificadirectoriosocarpetasademásdearchivossinatributos.

Page 98: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbAlias 64 Especificaqueelnombredelarchivoesunalias.SóloestádisponibleenMacintosh.

NotaEstasconstantesestándefinidasenVisualBasicparaAplicaciones.Porello,susnombressepuedenutilizarencualquierlugardelcódigosustituyendoalvalorcorrespondiente.

Comentarios

LafunciónDir,enMicrosoftWindows,permiteelempleodeloscaracterescomodín'*'(múltiplescaracteres)y'?'(unsolocarácter)paraespecificarvariosarchivos.EnMacintosh,estoscaracteressontratadoscomocaracteresdenombredearchivoválidosynosepuedenutilizarcomocomodinesparaespecificarmúltiplesarchivo.

PuestoqueMacintoshnoadmiteloscomodines,utiliceeltipodearchivoparaidentificargruposdearchivos.PuedeutilizarlafunciónMacIDparaespecificareltipodearchivoenlugardeutilizarlosnombresdearchivo.Porejemplo,LasiguienteinstruccióndevuelveelnombredelprimerarchivodeTEXTOenlacarpetaactual:

Dir("AlgunaRuta",MacID("TEXT"))

Parapasarportodoslosarchivosdeunacarpeta,especifiqueunacadenavacía:

Dir("")

SiutilizalafunciónMacIDconDirenMicrosoftWindows,seproduceunerror.

Cualquiervalordeatributomayorde256esconsideradounvalorMacID.

LaprimeravezquesellamaalafunciónDirsedebeespecificarelnombre_ruta,delocontrarioseproduciráunerror.Siademásespecificalosatributosdearchivo,deberáincluirelnombre_ruta.

LafunciónDirdevuelveelprimernombredearchivoquecoincidecon

Page 99: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

nombre_ruta.Paraobtenermásnombresdearchivoquecoincidanconnombre_ruta,deberávolverallamaralafunciónDirsinargumentos.Cuandonohaymásnombresdearchivocoincidentes,lafunciónDirdevuelveunacadenadecaracteresdelongitudcero.Cuandosedevuelveunacadenadelongitudcero,enlassiguientesllamadasdeberáespecificarnombre_rutaoseproduciráunerror.Puedecambiarnombre_rutasinhaberobtenidotodoslosnombresdearchivoquecoincidenconelargumentonombre_rutaactual.Sinembargo,nosepuedellamaralafunciónDirrecursivamente.LlamaralafunciónDirconelatributovbDirectorynodevuelvecontinuamentesubdirectorios.

SugerenciaDadoquelosnombresdearchivoseextraensinningúnordenespecífico,esconvenienteguardarlosnombresdevueltosenunamatrizyluegoordenarladelamaneradeseada.

Page 100: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DoEvents(Función)

Cedeelcontroldelaejecuciónalsistemaoperativo,paraqueéstepuedaprocesarotroseventos.

Sintaxis

DoEvents()

Comentarios

LafunciónDoEventsdevuelveuntipoIntegerquerepresentaelnúmerodeformulariosabiertosporunaversiónindependientedeVisualBasic,comoladeVisualBasicProfessionaledition.DoEventsdevuelve0enelrestodelasaplicaciones.

LafunciónDoEventspasaelcontrolalsistemaoperativo.Elcontrolnosedevuelvehastaqueelsistemaoperativohayaterminadodeprocesarloseventos

Page 101: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

encolaysehayanenviadotodaslasteclasdelacolaSendKeys.

DoEventsesmásútilparatareassencillascomopermitirqueunusuariocanceleunprocesodespuésdequehacomenzado,porejemplounabúsquedadeunarchivo.Paraprocesosdeejecuciónlarga,esmejordarpreferenciaalprocesadorutilizandounTimerodelegandolatareaauncomponenteEXEdeActiveX.Enúltimocaso,latareapuedecontinuarcompletamenteindependientedelaaplicaciónyelsistemaoperativotieneencuentalamultitareaylosintervalosdetiempos.

AdvertenciaSiemprequedépreferenciaalprocesadortemporalmentedentrodeunprocedimientodeevento,asegúresedequeelprocedimientonoseejecutedenuevodesdeunapartediferentedelcódigoantesdequedevuelvalaprimerallamada.Estopodríacausarresultadosimpredecibles.Además,noutilicelafunciónDoEventssiexistelaposibilidaddequeotrasaplicacionesinteractúenconelprocedimiento,demaneraimprevista,duranteeltiempoenqueéstehacedidoelcontrol.

Page 102: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Environ(Función)

Devuelvelacadena(String)asociadaaunavariabledelentornodelsistemaoperativo.NoestádisponibleenMacintosh.

Sintaxis

Environ({envstring|number})

LasintaxisdelafunciónEnvironconstadelossiguientesargumentosconnombre:

Page 103: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónenvstring Opcional.Expresióndecadenaquecontieneelnombre

deunavariabledeentorno.number Opcional.Expresiónnuméricacorrespondienteal

ordennuméricodelavariabledeentornoenlatabladecadenasdeentorno.Elargumentonumberpuedesercualquierexpresiónnumérica,peroseredondearáaunnúmeroenteroantesdeserevaluada.

Comentarios

Sinoseencuentraenvstringenlatabladecadenasdeentorno,lafuncióndevolveráunacadenadelongitudcero.Encasocontrario,lafunciónEnvirondevolveráeltextoasignadoalacadenaenvstringespecificada;estoes,eltextoquesiguealsignoigualenlatabladecadenasdeentornoparadichavariable.

Siespecificanumber,sedevolverálacadenaqueocupeesaposiciónnuméricaenlatabladecadenasdeentorno.Enestecaso,lafunciónEnvirondevolverátodoeltexto,incluidaenvstring.Sinohayningunacadenadeentornoenlaposiciónespecificada,lafunciónEnvirondevolveráunacadenadelongitudcero("").

Page 104: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EOF(Función)

DevuelveuntipoIntegerquecontieneunvalortipoBooleandeTruealllegaralfinaldelarchivo.

Sintaxis

EOF(númeroarchivo)

ElargumentonecesarionúmeroarchivoescualquiertipoIntegerquecontengacualquiernúmerodearchivoválido.

Page 105: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

SeutilizaEOFparaevitarelerrorquesegeneraalintentarobtenerinformaciónmásalládelfinaldeunarchivo.

LafunciónEOFdevuelveFalsehastaquesehayallegadoalfinaldelarchivo.SiseusaconarchivosabiertosmedianteaccesoRandomoBinary,lafunciónEOFdevuelveFalsehastaquelaúltimainstrucciónGetquesehayaejecutadonopuedaleerelregistrocompleto.

ConarchivosabiertosconaccesoBinary,intentarleerelarchivousandolafunciónInputhastaqueEOFdevuelvaTrueproduceunerror.UselasfuncionesLOFyLocenlugardeEOFalleerarchivosbinariosconInputouseGetalutilizarlafunciónEOF.ConarchivosabiertoscomoOutput,EOFsiempredevuelveTrue.

Page 106: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Error(Función)

Devuelveelmensajedeerrorcorrespondienteaunnúmerodeerrordeterminado.

Sintaxis

Error[(númeroerror)]

Elargumentoopcionalnúmeroerrorpuedesercualquiernúmerodeerrorválido.Sinúmeroerroresunnúmerodeerrorválido,peronoestádefinido,Errordevolverálacadena“Errordefinidoporlaaplicaciónoporelobjeto".Si

Page 107: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

númeroerrornoesválido,seproduciráunerror.Siseomitenúmeroerror,sedevolveráelmensajecorrespondientealúltimoerrorentiempodeejecución.Sinosehaproducidoningúnerrorentiempodeejecuciónosinúmeroerrores0,Errordevolveráunacadenadelongitudcero("").

Comentarios

ExaminelosvaloresdelaspropiedadesdelobjetoErrparaidentificarelúltimoerrorentiempodeejecución.ElvalordevueltoporlafunciónErrorcorrespondealapropiedadDescriptiondelobjetoErr.

Page 108: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Exp(Función)

DevuelveuntipoDoublequeespecificae(labasedeloslogaritmosnaturales)elevadoaunapotencia.

Sintaxis

Exp(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválida

Page 109: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Sielvalordenúmeroesmayorque709.782712893,seproduceunerror.Elvalordelaconstanteees2.718282aproximadamente.

NotaLafunciónExpcomplementalaaccióndelafunciónLogyavecessellamaantilogaritmo.

Page 110: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileAttr(Función)

DevuelveuntipoLongquerepresentaelmododelarchivoparalosarchivosabiertosusandolainstrucciónOpen.

Page 111: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

FileAttr(filenumber,returntype)

LasintaxisdelafunciónFileAttrconstadelossiguientesargumentosconnombre:

Parte Descripciónfilenumber Serequiere;untipoInteger.Cualquiernúmerodearchivo

válido.returntype Serequiere;untipoInteger.Númeroqueindicaeltipode

informaciónquesedebedevolver.Especifique1paraquesedevuelvaunvalorqueindicaelmododelarchivo.Sóloensistemasde16bits,especifique2paraobteneruncontroladordearchivodelsistemaoperativo.returntype2noescompatibleensistemasde32bitsyproduceunerror.

Valoresdevueltos

Cuandoelargumentoreturntypees1,lossiguientesvaloresdevueltosindicanelmododeaccesoalarchivo:

Modo ValorInput 1Output 2Random 4Append 8Binary 32

Page 112: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileDateTime(Función)

DevuelveunvalordetipoVariant(Date)queindicalafechayhoraenqueunarchivofuecreadoomodificadoporúltimavez.

Sintaxis

FileDateTime(nombre_ruta)

Elargumentorequeridonombre_rutaesunaexpresióndecadenaqueespecificaunnombredearchivo.Puedeincluireldirectorioocarpetaylaunidaddedisco.

Page 113: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileLen(Función)

DevuelveuntipoLongqueespecificalalongituddeunarchivoenbytes.

Sintaxis

FileLen(nombre_ruta)

Elargumentonombre_rutarequeridoesunaexpresióndecadenaqueespecificaunnombredearchivo.Puedeincluireldirectorioocarpetaylaunidaddedisco.

Comentarios

Page 114: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SielarchivoespecificadoestáabiertocuandosellamalafunciónFileLen,elvalordevueltorepresentaelúltimotamañodeesearchivocuandoseguardóporultimavezeneldisco.

NotaParaobtenerlalongituddeunarchivoabierto,utilicelafunciónLOF.

Page 115: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Filter(Función)

Descripción

Devuelveunamatrizbasadaencerosquecontieneunsubconjuntodeunamatrizdecadenasbasadaenunoscriteriosdefiltroespecificados.

Sintaxis

Filter(sourcesrray,match[,include[,compare]])

LasintaxisdelafunciónFilterconstadelossiguientesargumentosconnombre:

Parte Descripciónsourcearray Requerido.Lamatrizdecadenasdeunadimensión

dondesebuscará.match Requerido.Cadenaquesevaabuscar.include Opcional.ValorBooleanqueindicasilafunción

cebedevolversubcadenasqueincluyanoexcluyanmatch.SiincludeesTrue,lafunciónFilterdevuelveelsubconjuntodelamatrizquecontienematchcomounasubcadena.SiincludeesFalse,lafunciónFilterdevuelveelsubconjuntodelamatrizquenocontienevalorcomounasubcadena.

Page 116: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

compare Opcional.Elvalornuméricoqueindicalaclasedecomparacióndecadenasquesevaautilizar.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

Elargumentocomparepuedetenerlosvaloressiguientes:

Constante Valor DescripciónvbUseCompareOption –1 Realizarunacomparaciónutilizandoelvalor

delainstrucciónOptionCompare.vbBinaryCompare 0 Realizarunacomparaciónbinaria.vbTextCompare 1 Realizarunacomparaciónbasadaeneltexto.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realizaruna

comparaciónbasadaeninformacióndesubasededatos.

Comentarios

Sinoseencuentrancoincidenciasdematchdentrodesourcearray,lafunciónFilterdevuelveunamatrizvacía.SeproduceunerrorsisourcearrayesNullonoesunamatrizdeunadimensión.

LamatrizdevueltaporlafunciónFiltersólocontieneelementossuficientesparacontenerelnúmerodeelementoscoincidentes.

Page 117: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Int,Fix(Funciones)

Devuelvelaparteenteradeunnúmero.

Sintaxis

Int(número)

Fix(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválida.

Page 118: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SinúmerocontieneNull,lafuncióndevolveráNull.

Comentarios

LasfuncionesIntyFixeliminanlafraccióndeunnúmeroydevuelvenelvalorenteroresultante.

LadiferenciaentreIntyFixesquesielnúmeroesnegativo,Intdevuelveelprimerenteronegativomenoroigualanúmero,mientrasqueFixdevuelveelprimerenteronegativomayoroigualanúmero.Porejemplo,Intconvierte-8.4en-9yFixconvierte-8.4a-8.

LafunciónFix(número)esequivalentea:

Sgn(número)*Int(Abs(número))

Page 119: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Format(Función)

DevuelveuntipoVariant(String)quecontieneunaexpresiónformateadadeacuerdoalasinstruccionescontenidasenunaexpresióndeformato.

Sintaxis

Format(expresión[,formato[,primerdíadesemana[,primerdíadeaño]]])

LasintaxisdelafunciónFormatconstadelassiguientespartes:

Parte Descripción

Page 120: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

expresión Requerido.Cualquierexpresiónválida.formato Opcional.Unaexpresióndeformatodefinidaporelusuario

oconnombreválida.primerdíadesemana Opcional.Unaconstantequeespecificaelprimerdíadela

semana.primerdíadeaño Opcional.Unaconstantequeespecificalaprimerasemana

delaño.

Valores

Elargumentoprimerdíadesemanatieneestosvalores:

Constante Valor DescripciónvbUseSystem 0 UtilizaelvalordeAPINLS.vbSunday 1 Domingo(predeterminado)vbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Elargumentoprimerdíadeañotieneestosvalores:

Constante Valor DescripciónvbUseSystem 0 UtilizaelvalordeAPINLS.vbFirstJan1 1 Comienzaconlasemanadondeestáel1de

enero(predeterminado).vbFirstFourDays 2 Comienzaconlaprimerasemanadelañoque

tengacuatrodíascomomínimo.vbFirstFullWeek 3 Comienzaconlaprimerasemanacompletadel

año.

Page 121: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Paradarformato HagaestoNúmeros Utiliceformatosnuméricosconnombrepredefinidoso

creeformatosnuméricosdefinidosporelusuario.Fechasyhoras Utiliceformatosdefecha/horaconnombrepredefinidoso

creeformatosdefecha/horadefinidosporelusuario.Númerosserialesdefechayhora

Utiliceformatosdefechayhoraoformatosnuméricos.

Cadenas Creesuspropiosformatosdecadenadefinidosporelusuario.

Siintentadarformatoaunnúmerosinespecificarformato,FormatproporcionaunafuncionalidadsimilaraladelafunciónStr.Sinembargo,losnúmerospositivosalosqueseleshadadoformatodecadenadecaracteresmedianteFormatcarecendelespacioinicialreservadoparamostrarelsignodelvalor,mientrasquelosconvertidosutilizandoStrconservanelespacioinicial.

Siestádandoformatoaunacadenanuméricanolocalizada,deberíausarunformatonuméricodefinidoporelusuarioparaasegurarsedequeobtienelaaparienciaquedesa.

NotaSilaconfiguracióndelapropiedadCalendaresgregorianoyformatoespecificadarformatoalafecha,laexpresiónproporcionadadebesergregoriana.SilaconfiguracióndelapropiedadCalendardeVisualBasicesHijri,laexpresiónproporcionadadebeserHijri.

Sielcalendarioesgregoriano,elsignificadodelossimbolosdelaexpresiónformatonocambia.SielcalendarioesHijri,todoslossímbolosdeformatodefecha(porejemplo,dddd,mmmm,yyyy)ytienenelmismosignificadoperoseaplicaalcalendarioHijri.Lossímbolosdeformatopermaneceneninglés,lossímbolosquesemuestrancomotexto(porejemplo,AMyPM)muestranlacadena(inglésoárabe)asociadaconesesímbolo.ElintervalodeciertossímboloscambiacuandoelcalendarioesHijri.

Símbolo Intervalo

Page 122: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

d 1-30dd 1-30ww 1-51mmm Muestranombresdemesenteros(los

nombresdemesHijrinotienenabreviaturas).

y 1-355yyyy 100-9666

Page 123: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FormatCurrency(Función)

Descripción

Devuelveunaexpresiónformateadacomounvalordemonedautilizandoelsímbolodemonedadefinidoenelpaneldecontroldelsistema.

Sintaxis

FormatCurrency(expresión[,numDígitosDespuésDeDecimal[,incluirDígitoInicial[,utilizarParéntesisParaNúmerosNegativos[,agruparDígitos]]]])

LasintaxisdelafunciónFormatCurrencyconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.Laexpresiónquese

formateará.numDígitosDespuésDeDecimal Opcional.Unvalornuméricoque

indicacuántosespaciossemuestranaladerechadeldecimal.Elvalorpredeterminadoes–1,queindicaqueseutilizalaconfiguraciónregionaldelequipo.

Page 124: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

incluirDígitoInicial Opcional.Constantedetripleestadoqueindicasisemuestraunceroinicialparavaloresfraccionarios.VealasecciónValoresparaconsultarlosvaloresposibles.

utilizarParéntesisParaNúmerosNegativos Opcional.Constantedetripleestadoqueindicasilosvaloresnegativossesitúandentrodeparéntesis.VealasecciónValoresparaconsultarlosvaloresposibles.

agruparDígitos Opcional.Constantedetripleestadoqueindicasiseagrupanlosnúmerosutilizandoeldelimitadordegruposespecificadoenlaconfiguraciónregionaldelequipo.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

LosargumentosincluirDígitoInicial,utilizarParéntesisParaNúmerosNegativosyagruparDígitospuedentenerlosvaloressiguientes:

Constante Valor DescripciónvbTrue –1 Verdadero.VbFalse 0 Falso.vbUseDefault –2 Utilizarlosvaloresdelaconfiguración

regionaldelequipo.

Comentarios

Cuandoseomitanunoomásargumentosopcionales,laconfiguraciónregionaldelequipoproporcionalosvaloresparalosargumentosomitidos.

Laconfiguraciónregionaldelsistemadeterminalaposicióndelsímbolomoneda

Page 125: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

relativoalvalormoneda.

NotaTodalainformaciónparalosvaloresprovienedelafichaMonedadelaconfiguraciónregional,exceptoelceroinicialqueprovienedelafichaNúmero.

Page 126: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FormatDateTime(Función)

Descripción

Devuelveunaexpresiónformateadacomounafechaounahora.

Sintaxis

FormatDateTime(fecha[,formatoConNombre])

LasintaxisdelafunciónFormatDateTimeconstadelassiguientespartes:

Parte Descripciónfecha Requerido.Laexpresióndefechaqueseformateará.formatoConNombre Opcional.Unvalornuméricoqueindicaelformatode

fechayhorautilizado.Siseomite,seutilizavbGeneralDate.

Valores

ElargumentoformatoConNombretienelossiguientesvalores:

Constante Valor DescripciónvbGeneralDate 0 Mostrarunafechay/uhora.Sihayunaparte

Page 127: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

conlafecha,semuestracomofechacorta.Sihayunaparteconlahora,semuestracomounahoralarga.Siestánpresentes,semuestranlasdospartes.

vbLongDate 1 Mostrarunafechautilizandoelformatodefechalargaespecificadoenlaconfiguraciónregionaldesuequipo.

vbShortDate 2 Mostrarunafechautilizandoelformatodefechacortaespecificadoenlaconfiguraciónregionaldesuequipo.

vbLongTime 3 Mostrarunahorautilizandoelformatodehoraespecificadoenlaconfiguraciónregionaldesuequipo.

vbShortTime 4 Mostrarunahorautilizandoelformatode24horas(hh:mm).

Page 128: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FormatNumber(Función)

Descripción

Devuelveunaexpresiónformateadacomounnúmero.

Sintaxis

FormatNumber(expresión[,numDígitosDespuésDeDecimal[,incluirDígitoInicial[,utilizarParéntesisParaNúmerosNegativos[,agruparDígitos]]]])

LasintaxisdelafunciónFormatNumberconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.Laexpresiónquese

formateará.numDígitosDespuésDeDecimal Opcional.Unvalornúmericoque

indicacuántoslugaressemuestranaladerechadeldecimal.Elvalorpredeterminadoes–1,queindicaqueseutilizalaconfiguraciónregionaldelequipo.

incluirDígitoInicial Opcional.Unaconstantedetriple

Page 129: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

estadoqueindicasisemuestraunceroinicialparalosvaloresfraccionarios.VealasecciónValoresparaconsultarlosvaloresposibles.

utilizarParéntesisParaNúmerosNegativos Opcional.Unaconstantedetripleestadoqueindicasilosvaloresnegativossesitúandentrodeparéntesis.VealasecciónValoresparaconsultarlosvaloresposibles.

agruparDígitos Opcional.Unaconstantedetripleestadoqueindicasiseagrupanlosnúmerosutilizandoeldelimitadordegruposespecificadoenlaconfiguraciónregionaldelequipo.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

LosargumentosincluirDígitoInicial,utilizarParéntesisParaNúmerosNegativosyagruparDígitostienenlosvaloressiguientes:

Constante Valor DescripciónvbTrue –1 Verdadero.vbFalse 0 Falso.vbUseDefault –2 Utilizarlosvaloresdelaconfiguración

regionaldelequipo.

Comentarios

Cuandoseomitenunoomásargumentosopcionales,laconfiguraciónregionaldelequipoproporcionalosvaloresparalosargumentosomitidos.

NotaTodalainformacióndeconfiguraciónprovienedelafichaNúmerodelaconfiguraciónregional.

Page 130: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FormatPercent(Función)

Descripción

Devuelveunaexpresiónformateadacomounporcentaje(multiplicadopor100)conuncarácter%final.

Sintaxis

FormatPercent(expresión[,numDigitosDespuésDeDecimal[,incluirDígitoInicial[,utilizarParéntesisParaNúmerosNegativos[,agruparDígitos]]]])

LasintaxisdelafunciónFormatPercentconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.Laexpresiónquese

formateará.numDígitosDespuésDeDecimal Opcional.Unvalornuméricoqueindica

cuántoslugaressemuestranaladerechadeldecimal.Elvalorpredeterminadoes–1,queindicaqueseutilizalaconfiguraciónregionaldelequipo.

incluirDígitoInicial Opcional.Unaconstantedetripleestado

Page 131: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

queindicasisemuestraunceroinicialparalosvaloresfraccionarios.VealasecciónValoresparaconsultarlosvaloresposibles.

utilizarParensParaNúmerosNegativos Opcional.Unaconstantedetripleestadoqueindicasilosvaloresnegativossesitúanentreparéntesis.VealasecciónValoresparaconsultarlosvaloresposibles.

agruparDígitos Opcional.Unaconstantedetripleestadoqueindicasilosnúmerosseagrupanutilizandoeldelimitadordegruposespecificadoenlaconfiguraciónregionaldelequipo.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

LosargumentosincluirDígitoInicial,utilizarParéntesisParaNúmerosNegativosyagruparDígitostienenlosvaloressiguientes:

Constante Valor DescripciónvbTrue –1 Verdadero.vbFalse 0 Falso.vbUseDefault –2 Utilizarlosvaloresdelaconfiguración

regionaldelequipo.

Comentarios

Cuandoseomitenunoomásargumentosopcionales,laconfiguraciónregionaldelequipoproporcionalosvaloresparalosargumentosomitidos.

NotaTodalainformacióndeconfiguraciónprovienedelafichaNúmerodelaconfiguraciónregional.

Page 132: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FreeFile(Función)

DevuelveuntipoIntegerqueindicaelsiguientenúmerodearchivodisponibleparasuusoenlainstrucciónOpen.

Sintaxis

FreeFile[(númerointervalo)]

ElargumentoopcionalnúmerointervaloesuntipoVariantqueespecificaelintervalodesdeelquesevaadevolverelsiguientenúmerodearchivo.Se

Page 133: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

especifica0(predeterminado)paradevolverunnúmerodearchivoentre1y255,inclusive.Seespecifica1paradevolverunnúmerodearchivoentre256y511.

Comentarios

UseFreeFileparaproporcionarunnúmerodearchivoquenoestéenuso.

Page 134: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FV(Función)

DevuelveuntipoDoublequeindicaelvalorfuturodeunaanualidadbasándoseenpagosperiódicosyconstantesyuntipodeinteréstambiénconstante.

Page 135: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

FV(rate,nper,pmt[,pv[,type]])

LafunciónFVconstadelossiguientesargumentosconnombre:

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinterés

porperiodo.Porejemplo,siobtieneuncréditoparaunautomóvilaunporcentajeanual(TPA)del10porcientoyrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

nper Requerido.UntipoIntegerqueindicaelnúmerototaldeperiodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

pmt Requerido.UntipoDoublequeindicaelpagoquehayquerealizarcadaperiodo.Normalmente,lospagoscontienenunnominalyuninterésquenovaríaalolargodelavidadelaanualidad.

pv Opcional.UntipoVariantqueindicaelvaloractual(osumaglobal)quetieneenestemomentounaseriedepagospararealizarenelfuturo.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comopor

Page 136: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ejemplolahipotecadeuninmueble)ounainversión(comounplandeahorromensual).

Losargumentosrateynperdebencalcularseutilizandoperiodosdepagoexpresadosenlasmismasunidades.Porejemplo,siratesecalculaenmeses,npertambiéndebecalcularseenmeses.

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 137: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 138: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Funcionesdeconversióndetipos

Page 139: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Cadafunciónconvierteunaexpresiónauntipodedatosespecífico.

Sintaxis

CBool(expresión)

CByte(expresión)

CCur(expresión)

CDate(expresión)

CDbl(expresión)

CDec(expresión)

CInt(expresión)

CLng(expresión)

CSng(expresión)

CStr(expresión)

CVar(expresión)

Page 140: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Elargumentoobligatorioexpresiónescualquierexpresióndecadenaoexpresiónnumérica.

Tiposdevueltos

Elnombredelafuncióndeterminaeltipodevuelto,comosemuestraacontinuación:

Función Tipodevuelto IntervalodelargumentoexpresiónCBool Boolean Cualquierexpresióndecadenaonumérica

válida.CByte Byte 0a255.CCur Currency -922.337.203.685.477,5808a

922.337.203.685.477,5807.CDate Date Cualquierexpresióndefecha.CDbl Double -1.79769313486231E308a

-4,94065645841247E-324paravaloresnegativos;4,94065645841247E-324a1,79769313486232E308paravalorespositivos.

CDec Decimal +/-79.228.162.514.264.337.593.543.950.335paranúmerosbasadosencero,esdecir,númerossindecimales.Paranúmeroscon28decimales,elintervaloes+/-7,9228162514264337593543950335.Lamenorposiciónparaunnúmeroquenoseaceroes0,0000000000000000000000000001.

CInt Integer -32.768a32.767;lasfraccionesseredondean.

CLng Long -2.147.483.648a2.147.483.647;lasfraccionesseredondean.

CSng Single -3,402823E38a-1,401298E-45paravaloresnegativos;1,401298E-45a3,402823E38paravalorespositivos.

CStr String ElmismointervaloqueDoubleparavalores

Page 141: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

numéricos.ElmismointervaloqueStringparavaloresnonuméricos.

CVar Variant ElvalorderetornodeCStrdependedelargumentoexpresión.

Comentarios

Silaexpresióndelargumentoexpresiónquesepasaalafunciónestáfueradelintervalodeltipodedatoalquesevaaconvertir,seproduceunerror.

Engeneral,elcódigosepuededocumentarutilizandolasfuncionesdeconversióndetiposdedatosparaindicarqueelresultadodealgunadelasoperacionessedeberíaexpresarcomountipodedatosenparticular,nocomoeltipodedatospredeterminado.Porejemplo,utiliceCcurparaforzarlaejecucióndeoperacionesconaritméticamonetariaenloscasosenlosqueseharíaconprecisiónsimple,dobleprecisiónoaritméticaentera.

DebeutilizarfuncionesdeconversióndetiposenlugardeValparaproporcionarconversionesquereconozcanlasvariantesinternacionales.Porejemplo,cuandoutilizaCCur,sereconocendiferentesseparadoresdecimales,diferentesseparadoresdemillaresyvariasopcionesmonetariasdependiendodelaconfiguraciónregionalestablecidaensuequipo.

Cuandolapartefraccionariaesexactamente0,5,CIntyCLngsiempreredondeanalnúmeroparmáscercano.Porejemplo,0,5redondeaa0,y1,5redondeaa2.CIntyCLngsediferenciandelasfuncionesFixyIntenquetruncan,enlugarderedondear,lapartefraccionariadeunnúmero.Además,FixyIntsiempredevuelvenunvalordelmismotipodelqueselepasa.

UtilicelafunciónIsDateparadeterminarsisepuedeconvertirdateaunafechaounahora.CDatereconoceliteralesdefechayliteralesdehoraademásdenúmeroscomprendidosdentrodelintervalodefechasaceptables.Alconvertirunnúmeroaunafecha,lapartenuméricaenteraseconvierteaunafecha.Cualquierpartefraccionariadelnúmeroseconviertealahoradeldía,comenzandoamedianoche.

CDatereconoceformatosdefechaqueseajustenalaconfiguraciónregionalde

Page 142: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

susistema.Esposiblequenosedetermineelordencorrectodeldía,mesyañosiseproporcionaenunformatodiferentedelquereconocelaconfiguracióndefecha.Además,nosepuedereconocerunformatodefechalargosicontienelacadenadeldíadelasemana.

SeproporcionaunafunciónCVDateporcompatibilidadconversionesanterioresdeVisualBasic.LasintaxisdelafunciónCVDateesidénticaaladelafunciónCDate;sinembargo,CVDatedevuelveunVariantdesubtipoDateenlugardeltipoDatereal.PuestoqueahorahayuntipodedatointrínsecoDate,noesnecesarioCVDate.SepuedeobservarelmismoefectoalconvertirunaexpresiónaDateyasignarladespuésaunVariant.EstatécnicaescoherenteconlaconversióndetodoslosdemástiposintrínsecosasusequivalentessubtiposVariant.

NotaLafunciónCDecnodevuelveuntipodedatodiscreto;ensulugar,siempredevuelveunVariantconlosvaloresconvertidosaunsubtipoDecimal.

Page 143: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetAllSettings(Función)

Devuelveunalistadeclavesysusvaloresrespectivos(originalmentecreadosconSaveSetting)apartirdelaentradadeunaaplicaciónenelregistrode

Page 144: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Windows.O(enMacintosh)informaciónenelarchivodeinicializacióndelaaplicación.

Sintaxis

GetAllSettings(appname,section)

LasintaxisdelafunciónGetAllSettingstienelossiguientesargumentosconnombre:

Parte Descripciónappname Obligatorio.Expresióndecadenaquecontieneelnombredela

aplicaciónoproyectoalqueseaplicalaclave.EnMacintosh,ésteeselnombredelarchivodeinicializaciónenlacarpetaPreferenciasenlacarpetadelSistema.

section Obligatorio.Expresióndetipocadenaquecontieneelnombredelaseccióncuyasclavessesolicitan.LafunciónGetAllSettingsdevuelveunvalordetipoVariantcuyocontenidoesunamatrizbidimensionalcontodaslasclavesdelasecciónespecificadaysusvalorescorrespondientes.

Comentarios

LafunciónGetAllSettingsdevuelveunvalorVariantnoinicializadosinoexistenappnameosection.

Page 145: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetAttr(Función)

DevuelveuntipoIntegerquerepresentalosatributosdeunarchivo,directorioocarpeta.

Sintaxis

GetAttr(nombre_ruta)

Elargumentorequeridonombre_rutaesunaexpresióndecadenaqueespecificaunnombredearchivo.Puedeincluireldirectorioocarpetaylaunidaddedisco.

Page 146: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Valoresdevueltos

ElvalordevueltoporlafunciónGetAttreslasumadelossiguientesvaloresdeatributos:

Constante Valor DescripciónvbNormal 0 NormalvbReadOnly 1 SólolecturavbHidden 2 OcultovbSystem 4 ArchivodesistemaNodisponibleenMacintosh.vbDirectory 16 DirectorioocarpetavbArchive 32 Elarchivohasidomodificadodespuésdeefectuarla

últimacopiadeseguridadNodisponibleenMacintosh.

vbAlias 64 Elnombreespecificadoesunalias.DisponiblesóloenMacintosh.

NotaEstasconstantesestándefinidasenVisualBasicparaAplicaciones.Porello,esosnombressepuedenutilizarencualquierlugardelcódigoenvezdelvalorcorrespondiente.

Comentarios

Paradeterminarquéatributoshansidoestablecidos,utiliceeloperadorAndpararealizarunacomparaciónbitabitentreelvalordevueltoporlafunciónGetAttryelvalordelatributodearchivoindividualquedesee.Sielresultadoesdistintodecero,significaqueeseatributosehaestablecidoenelarchivoindicado.Porejemplo,elvalordevueltoporlasiguienteexpresiónAndescerosinoestáactivadoelatributoArchivo.

Resultado=GetAttr(NombreA)AndvbArchive

SisehaestablecidoelatributoModificado,elvalordevueltoesdistintodecero.

Page 147: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetObject(Función)

DevuelveunareferenciaaunobjetoproporcionadoporuncomponenteActiveX.

Sintaxis

Page 148: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetObject([pathname][,class])

LasintaxisdelafunciónGetObjectconstadeestosargumentosconnombre:

Parte Descripciónpathname Opcional;Variant(String).Larutadeaccesocompletayel

nombredelarchivoquecontieneelobjetoquesevaarecuperar.Siseomitepathname,senecesitaclass.

class Opcional;Variant(String).Unacadenaquerepresentalaclasedelobjeto.

Elargumentoclassutilizalasintaxisnombre_aplicación.tipo_objetoyconstadeestaspartes:

Parte Descripciónnombre_aplicación

Requerido;Variant(String).Elnombredelaaplicaciónqueproporcionaelobjeto.

tipo_objeto Requerido;Variant(String).Eltipooclasedeobjetoquesevaacrear.

Comentarios

UtilicelafunciónGetObjectparateneraccesoaunobjetoActiveXdesdeunarchivoyasignarelmismoaunavariabledeobjeto.UtilicelainstrucciónSetparaasignarelobjetodevueltoporlafunciónGetObjectalavariabledeobjeto.Porejemplo:

DimCADObjectAsObject

SetCADObject=GetObject("C:\CAD\ESQUEMA.CAD")

Cuandoseejecutaestecódigo,seinicialaaplicaciónasociadaconelargumentopathnameespecificadoyseactivaelobjetodelarchivoespecificado.

Sipathnameesunacadenadelongitudcero(""),GetObjectdevuelveunainstanciadelnuevoobjetodeltipoespecificado.Siseomiteelargumentopathname,GetObjectdevuelveelobjetoactivoactualdeltipoespecificado.Si

Page 149: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

noexisteningúnobjetodeltipoespecificado,seproduceunerror.

Algunasaplicacioneslepermitenactivarpartedeunarchivo.Agregueunsignodeadmiración(!)alfinaldelnombredelarchivoyacontinuaciónescribaunacadenaqueidentifiquelapartedelarchivoquedeseaactivar.Paraobtenerinformaciónacercadecómocrearestacadena,consulteladocumentacióndelaaplicaciónquecreóelobjeto.

Porejemplo,enunaaplicacióndedibujopuedetenermuchascapasparaundibujoalmacenadoenunarchivo.PodríautilizarelsiguientecódigoparaactivarunacapadentrodeldibujollamadoESQUEMA.CAD:

SetLayerObject=GetObject("C:\CAD\ESQUEMA.CAD!Capa3")

Sinoespecificaelargumentoclassdelobjeto,Automatizacióndeterminalaaplicaciónquesevaainiciaryelobjetoquesevaaactivar,basándoseenelnombredearchivoproporcionado.Algunosarchivos,sinembargo,puedenadmitirmásdeunaclasedeobjeto.Porejemplo,undibujopuedeadmitirtrestiposdiferentesdeobjetos:unobjetoApplication,unobjetoDrawingyunobjetoToolbar,dondetodosformanpartedelmismoarchivo.Paraespecificarquéobjetodelarchivodeseaactivar,utiliceelargumentoopcionalclass.Porejemplo:

DimMiObjetoAsObject

SetMiObjeto=GetObject("C:\DIBUJOS\EJEMPLO.DRW","FIGMENT.DIBUJO")

Enelejemplo,FIGMENTeselnombredelaaplicacióndedibujoyDIBUJOesunodelostiposdeobjetoqueadmite.

Unavezqueseactivaunobjeto,hagareferenciaaélenelcódigomediantelavariabledeobjetoquedefinió.EnelejemploanteriortieneaccesoalaspropiedadesymétodosdelnuevoobjetomediantelavariabledeobjetoMiObjeto.Porejemplo:

MiObjeto.Line9,90

MiObjeto.InsertText9,100,"Holaatodos."

MiObjeto.SaveAs"C:\DIBUJOS\EJEMPLO.DRW"

Page 150: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NotaUtilicelafunciónGetObjectcuandohayaunainstanciaactualdelobjetoosideseacrearelobjetoconunarchivoyacargado.Sinohayningunainstanciaactualynodeseainiciarelobjetoconunarchivocargado,utilicelafunciónCreateObject.

Siunobjetoseharegistradoasímismocomounobjetodeinstanciasimple,sólosecreaunainstanciadelobjeto,independientementedelnúmerodevecesqueseejecutelafunciónCreateObject.Conunobjetodeinstanciasimple,GetObjectsiempredevuelvelamismainstanciacuandosellamaconlasintaxisdecadenadelongitudcero("")yproduceunerrorsiseomiteelargumentopathname.NopuedeutilizarlafunciónGetObjectparaobtenerunareferenciaaunaclasecreadaconVisualBasic.

Page 151: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetSetting(Función)

Devuelveelvalordeunaclavedelaentradadeunaaplicaciónenelregistro.O(enMacintosh)informaciónenelarchivodeinicializacióndelaaplicación.

Sintaxis

GetSetting(appname,section,key[,default])

LasintaxisdelafunciónGetSettingtienelossiguientesargumentosconnombre:

Page 152: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónappname Obligatorio.Expresióndecadenaquecontieneelnombredela

aplicaciónoproyectocuyaclavesesolicita.EnMacintosh,esteeselnombredelarchivodeinicializaciónenlacarpetaPreferenciasenlacarpetadelSistema.

section Obligatorio.Expresióndetipocadenaquecontieneelnombredelaseccióndondeseencuentralaclave.

key Obligatorio.Expresióndetipocadenaquecontieneelnombrededelaclavequesevaadevolver.

default Opcional.Expresiónquecontieneelvalorquesevaadevolversinohayvalorenlaclave.Siseomite,seasumequedefaultesunacadenadelongitudcero("").

Comentarios

SialgunodeloselementosindicadoscomoargumentosdelafunciónGetSettingnoexiste,devuelveelvalordefault.

Page 153: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Hex(Función)

DevuelveuntipoStringquerepresentaelvalorhexadecimaldeunnúmero.

Sintaxis

Page 154: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Hex(número)

Elargumentonúmeroescualquierexpresiónnuméricaoexpresióndecadenaválida.

Comentarios

Sinúmeronoestodavíaunnúmeroentero,seredondeaalnúmeroenteromáscercanoantesdeevaluarse.

Sinúmeroes LafunciónHexdevuelveNull NullEmpty Cero(0)Cualquierotronúmero

Hastaochocaractereshexadecimales

Puederepresentarnúmeroshexadecimalesdirectamente,anteponiendo&H.Porejemplo,&H10representa16decimalennotaciónhexadecimal.

Page 155: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Hour(Función)

DevuelveunvalordetipoVariant(Integer)queespecificaunnúmeroenteroentre0y23,inclusive,querepresentalahoradeldía.

Page 156: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Hour(hora)

ElargumentohorapuedeserunvalordetipoVariant,unaexpresiónnumérica,expresióndecadenaocualquiercombinación,quepuedarepresentarunahora.SihoracontieneNull,lafuncióndevolveráNull.

Page 157: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IIf

(Función)

Devuelveunodeentredosvalores,dependiendodelaevaluacióndeunaexpresión.

Sintaxis

IIf(expr,truepart,falsepart)

LasintaxisdelafunciónIIfcuentaconlossiguientesargumentosconnombre:

Parte Descripciónexpr Requerido.Expresiónquesedeseaevaluar.truepart Requerido.ValoroexpresióndevueltasiexpresTrue.falsepart Requerido.Valoroexpresióndevueltasiexpres

False.

Page 158: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

IIfsiempreevalúatruepartyfalsepart,aunquesólovayaadevolverunadeellas.Porestarazón,deberávigilarquenoseproduzcanefectosnodeseados.Porejemplo,sialevaluarfalsepartseproduceunerrordedivisiónporcero,segeneraráunerroraunqueexprseaTrue.

Page 159: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IMEStatus(Función)

DevuelveuntipoIntegerqueespecificaelmodoactualdelEditordemétododeentrada(InputMethodEditoroIME)deMicrosoftWindows;solamenteestádisponibleenversionesdelesteasiático.

Sintaxis

IMEStatus

Valoresdevueltos

Losvaloresdevueltosparalaconfiguraciónregionaljaponesasonlossiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeOn 1 IMEactivado

Page 160: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbIMEModeOff 2 IMEdesactivadovbIMEModeDisable 3 IMEdeshabilitadovbIMEModeHiragana 4 ModoHiraganadeancho

completovbIMEModeKatakana 5 ModoKatakanadeancho

completovbIMEModeKatakanaHalf 6 ModoKatakanademedio

anchovbIMEModeAlphaFull 7 Modoalfanuméricode

anchocompletovbIMEModeAlpha 8 Modoalfanuméricode

medioancho

Losvaloresderetornoparalaconfiguraciónlocalcoreanasonlossiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeAlphaFull 7 Modoalfanuméricode

anchocompletovbIMEModeAlpha 8 Modoalfanuméricode

mitaddeanchovbIMEModeHangulFull 9 ModoHanguldeancho

completovbIMEModeHangul 10 ModoHanguldemitadde

ancho

Losvaloresderetornoparalaconfiguraciónregionalchinasonlossiguientes:

Constante Valor DescripciónvbIMEModeNoControl 0 SincontrolIME

(predeterminado)vbIMEModeOn 1 IMEactivado

Page 161: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbIMEModeOff 2 IMEdesactivado

Page 162: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Input(Función)

DevuelveuntipoStringquecontienecaracteresdeunarchivoabiertoenmodoInputoBinary.

Sintaxis

Input(número,[#]númeroarchivo)

LasintaxisdelafunciónInputconstalassiguientespartes:

Parte Descripción

Page 163: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

número Requerido.Cualquierexpresiónnuméricaválidaqueespecifiqueelnúmerodecaracteresparadevolver.

númeroarchivo Requerido.Cualquiernúmerodearchivoválido.

Comentarios

LosdatosqueseleenconlafunciónInputnormalmenteseescribenenunarchivoconPrint#oPut.SóloseutilizaestafunciónconarchivosabiertosenmodoInputoBinary.

AdiferenciadelainstrucciónInput#,lafunciónInputdevuelvetodosloscaracteresquelee,incluyendopuntosycoma,retornosdecarro,avancesdelínea,comillasyespaciosiniciales.

ConarchivosabiertosconaccesoBinary,unintentodeleerelarchivoconlafunciónInputhastaqueEOFseaTrueproduceunerror.UselasfuncionesLOFyLocenlugardeEOFalleerarchivosbinariosconInputouseGetalutilizarlafunciónEOF.

NotaUselafunciónInputBparadatostipobytecontenidosenarchivosdetexto.ConInputB,númeroespecificaelnúmerodebytesquesevaadevolverenlugardelnúmerodecaracteres.

Page 164: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

InputBox(Función)

Page 165: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Muestraunmensajeenuncuadrodediálogo,esperaqueelusuarioescribauntextoohagaclicenunbotónydevuelveuntipoStringconelcontenidodelcuadrodetexto.

Sintaxis

InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])

LasintaxisdelafunciónInputBoxconstadeestosargumentosconnombre:

Parte Descripciónprompt Requerido.Expresióndecadenaquesemuestracomo

mensajeenelcuadrodediálogo.Lalongitudmáximadepromptesdeaproximadamente1024caracteres,segúnelanchodeloscaracteresutilizados.Sipromptconstademásdeunalínea,puedesepararlosutilizandouncarácterderetornodecarro(Chr(13)),uncarácterdeavancedelínea(Chr(10))ounacombinacióndeloscaracteresderetornodecarro-avancedelínea(Chr(13)yChr(10))entrecadalíneaylasiguiente.

title Opcional.Expresióndecadenaquesemuestraenlabarradetítulodelcuadrodediálogo.Siomitetitle,enlabarradetítulosecolocaelnombredelaaplicación.

default Opcional.Expresióndecadenaquesemuestraenelcuadrodetextocomorespuestapredeterminadacuandonosesuministraunacadena.Siomitedefault,semuestraelcuadrodetextovacío.

xpos Opcional.Expresiónnuméricaqueespecifica,entwips,ladistanciaensentidohorizontalentreelbordeizquierdodelcuadrodediálogoyelbordeizquierdodelapantalla.Sise

Page 166: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

omitexpos,elcuadrodediálogosecentrahorizontalmente.ypos Opcional.Expresiónnuméricaqueespecifica,entwips,la

distanciaensentidoverticalentreelbordesuperiordelcuadrodediálogoyelbordesuperiordelapantalla.Siseomiteypos,elcuadrodediálogosecolocaaaproximadamenteunterciodelaalturadelapantalla,desdeelbordesuperiordelamisma.

helpfile Opcional.ExpresióndecadenaqueidentificaelarchivodeAyudaqueseutilizaráparaproporcionarayudainteractivaparaelcuadrodediálogo.Siseespecificahelpfile,tambiéndeberáespecificarsecontext.

context Opcional.ExpresiónnuméricaqueeselnúmerodecontextodeAyudaasignadoporelautoraltemadeAyudacorrespondiente.Siseespecificacontext,tambiéndeberáespecificarsehelpfile.

Comentarios

Cuandoseespecificatantohelpfilecomocontext,elusuariopuedepresionarF1(Windows)oAyuda(Macintosh)paravereltemadeAyudacorrespondienteacontext.Algunasaplicacioneshost,porejemplo,MicrosoftExcel,tambiénagregarautomáticamenteunbotónAyudaalcuadrodediálogo.SielusuariohaceclicenAceptaropresionaEntrar,lafunciónInputBoxdevuelveloquehayaenelcuadrodetexto.SielusuariohaceclicenCancelar,lafuncióndevuelveunacadenadecaracteresdelongitudcero("").

NotaSideseaespecificarmásqueelprimerargumentoconnombre,debeutilizarInputBoxenunaexpresión.Sideseaomitiralgunosargumentosdeposición,debeincluireldelimitadordecomacorrespondiente.

Page 167: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

InStr(Función)

DevuelveuntipoVariant(Long)queespecificalaposicióndelaprimeraaparicióndeunacadenaenotra.

Page 168: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

InStr([start,]string1,string2[,compare])

LasintaxisdelafunciónInStrtieneestosargumentos:

Parte Descripciónstart Opcional.Expresiónnuméricaqueestablecelaposicióninicial

paracadabúsqueda.Siseomite,labúsquedacomienzaenlaposicióndelprimercarácter.SiiniciocontieneunvalorNull,seproduceunerror.Elargumentoinicioserequieresiseespecificacompare.

string1 Requerido.Expresióndecadenaenlaquesebusca.string2 Requerido.Expresióndecadenabuscada.compare Opcional.Especificaeltipodecomparacióndecadena.Si

compareesNull,ocurreunerror.Siseomitecompare,elvalorOptionComparedeterminaeltipodecomparación.EspecificaunLCID(LocaleID)válidoparausarreglasespecíficasdeconfiguraciónregionalenlacomparación.

Valores

Losvaloresdelargumentocompareson:

Constante Valor DescripciónvbUseCompareOption -1 Realizaunacomparaciónconlos

valoresdelainstrucciónOptionCompare.

vbBinaryCompare 0 Realizaunacomparaciónbinaria.vbTextCompare 1 Realizaunacomparacióntextual.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realiza

unacomparaciónbasadaenlainformaciónenlasbasesdedatos.

Valoresdevueltos

Page 169: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Si LafunciónInStrdevuelvestring1esdelongitudcero 0string1esNull Nullstring2esdelongitudcero startstring2esNull Nullstring2noseencontró 0string2seencontródentrodestring1

Posiciónenlaquesehallalacoincidencia

start>string2 0

Comentarios

LafunciónInStrBseutilizaconlosdatosdebytecontenidosenunacadena.Enlugardedevolverlaposicióndelcarácterdelaprimeraaparicióndeunacadenaenotra,InStrBdevuelvelaposicióndelbyte.

Page 170: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

InStrRev(Función)

Descripción

Devuelvelaposicióndeunaaparicióndeunacadenadentrodeotra,desdeelfinaldelacadena.

Sintaxis

InstrRev(cadena1,cadena2[,inicio[,comparar]])

LasintaxisdelafunciónInstrRevconstadelossiguientesargumentoscon

Page 171: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

nombre

Parte Descripcióncadena1 Requerido.Expresióndecadenaenlaquesebusca.cadena2 Requerido.Expresióndecadenaquesebusca.inicio Opcional.Unaexpresiónnúmericaqueestablecela

posicióninicialparacadabúsqueda.Siseomite,seutiliza–1,quesignificaquelabúsquedaempiezaenlaposicióndelúltimocarácter.Sieliniciocontiene

Nulo,seproduceunerror.

comparar Opcional.Unvalornuméricoqueindicalaclasedecomparaciónqueseutilizarácuandoseevalúensubcadenas.Siseomite,serealizaunacomparaciónbinaria.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

Elargumentocompararpuedetenerlosvaloressiguientes:

Constante Valor DescripciónvbUseCompareOption –1 Realizarunacomparaciónutilizandoelvalor

delainstrucciónOptionCompare.vbBinaryCompare 0 Realizarunacomparaciónbinaria.vbTextCompare 1 Realizaunacomparaciónbasadaeneltexto.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realizaruna

comparaciónbasadaenlainformacióndesubasededatos.

Valoresderetorno

InStrRevdevuelvelosvaloressiguientes:

Si InStrRevdevuelve

Page 172: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cadena1esdelongitudcero 0cadena1esNull Nullcadena2esdelongitudcero Iniciocadena2esNull Nullcadena2noseencuentra 0cadena2seencuentradentrodecadena1

Laposiciónenlaqueseencuentralacoincidencia

inicio>Len(cadena2) 0

Comentarios

ObservequelasintaxisparalafunciónInstrRevnoeslamismaquelasintaxisparalafunciónInstr.

Page 173: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IPmt(Función)

DevuelveuntipoDoublequeindicaelpagodeinteresesduranteunperiododeterminadodeunaanualidadbasándoseenpagosconstantesyperiódicosyuntipodeinteréstambiénconstante.

Sintaxis

IPmt(rate,per,nper,pv[,fv[,type]])

LafunciónIPmtconstadelossiguientesargumentosconnombre:

Page 174: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinterés

porperiodo.Porejemplo,siobtieneuncréditoparaunautomóvilaunatasaporcentualanual(TPA)del10porcientoyrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

per Requerido.UntipoDoublequeindicaelperiododepago,entre1ynper.

nper Requerido.UntipoDoublequeindicaelnúmerototaldeperiodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

pv Requerido.UntipoDoublequeindicaelvaloractual,ovalordehoy,deunaseriedepagosocobrosfuturos.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.

fv Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comoporejemplolahipotecadeuninmueble)ounainversión(comounplandeahorro

Page 175: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

mensual).

Losargumentosrateynperdebencalcularseutilizandoperiodosdepagoexpresadosenlasmismasunidades.Porejemplo,siratesecalculaenmeses,npertambiéndebecalcularseenmeses.

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 176: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IRR(Función)

DevuelveuntipoDoublequeindicalatasainternaderetornodeunaseriedeflujosdeefectivoperiódicos(pagosycobros).

Sintaxis

IRR(values()[,guess])

LafunciónIRRconstadelossiguientesargumentosconnombre:

Page 177: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónvalues() Requerido.MatrizdetipoDoublequeindicavaloresdeflujode

efectivo.Lamatrizdebeconteneralmenosunvalornegativo(unpago)yunopositivo(uncobro).

Guess Opcional.UntipoVariantqueindicaunvalorqueseestimaquedevolveráIRR.Siseomite,guessserá0,1(10porciento).

Comentarios

Latasainternaderetornoeseltipodeinterésrecibidoporunainversiónconsistenteenpagosycobrosqueseproducenaintervalosperiódicos.

LafunciónIRRutilizaelordendelosvaloresdelamatrizparainterpretarelordendelospagosycobros.Asegúresedeindicarlosvaloresdelospagosycobrossiguiendolasecuenciacorrecta.Noesnecesarioqueelflujodeefectivoencadaperiodoseaconstante,comoseríaenelcasodeunaanualidad.

IRRsecalculaporiteración.Comenzandoconelvalordeguess,IRRrealizauncálculocíclicohastaqueelresultadotieneunaprecisióndel0,00001porciento.Sidespuésde20intentosnopuedeencontrarunresultado,IRRfalla.

Page 178: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsArray(Función)

DevuelveunvalordetipoBooleanqueindicasiunavariableesunamatriz.

Sintaxis

Page 179: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsArray(nombrevariable)

Elargumentorequeridonombrevariable,esunidentificadorqueespecificaunavariable.

Comentarios

LafunciónIsArraydevuelveTruesilavariableesunamatriz;encasocontrario,devuelveFalse.LafunciónIsArrayesespecialmenteútilconvariablesdetipoVariantquecontienenmatrices.

Page 180: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsDate(Función)

DevuelveunvalordetipoBooleanqueindicasiunaexpresiónsepuedeconvertirenunafecha.

Page 181: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

IsDate(expresión)

Elargumentoexpresiónrequerido,esuntipodedatosVariantquecontieneunaexpresióndefechaounaexpresióndecadenareconociblecomounafechaounahora.

Comentarios

LafunciónIsDatedevuelveTruesilaexpresiónesunafechaosepuedereconocercomounafechaválida;encasocontrario,devuelveFalse.EnMicrosoftWindows,elintervalodefechasválidasvadesdeel1deenerode100D.deC.hastael31dediciembrede9999D.deC.;losintervalosvaríandeunsistemaoperativoaotro.

Page 182: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsEmpty(Función)

Page 183: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveunvalordetipoBooleanqueindicasiunavariablehasidoinicializada.

Sintaxis

IsEmpty(expresión)

ElargumentoexpresiónrequeridoesuntipodedatosVariantquecontieneunaexpresióndecadenaounaexpresiónnumérica.Sinembargo,yaquelafunciónIsEmptyseutilizaparadeterminarsilasvariablesindividualesestáninicializadas,elargumentoexpresiónesgeneralmenteunúniconombredevariable.

Comentarios

LafunciónIsEmptydevuelveTruesilavariablenoestáinicializadaoestáexplicítamenteconfiguradaaEmpty;encualquierotrocaso,devuelveFalse.SedevuelveFalsesiemprequeexpresióncontengamásdeunavariable.LafunciónIsEmptysolamentedevuelveinformaciónsignificativaparadatosdetipoVariant.

Page 184: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsError(Función)

DevuelveunvalordetipoBooleanqueindicasiunaexpresióntieneunvalordeerror.

Sintaxis

IsError(expresión)

Elargumentoexpresiónrequerido,puedesercualquierexpresiónválida.

Comentarios

Page 185: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LosvaloresdeerrorsecreanalconvertirnúmerosrealesavaloresdeerrorutilizandolafunciónCVErr.LafunciónIsErrorseutilizaparadeterminarsiunaexpresiónnuméricarepresentaunerror.LafunciónIsErrordevuelveTruesielargumentoexpresiónindicaunerror;encasocontrario,devuelveFalse.

Page 186: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsMissing(Función)

DevuelveunvalordetipoBooleanqueindicasiunargumentoopcionalsehatransferidoaunprocedimiento.

Sintaxis

IsMissing(nombreargumento)

ElargumentonombreargumentocontieneelnombredeunargumentodeprocedimientoVariantopcional.

Page 187: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

UtilicelafunciónIsMissingparadetectarsilosargumentosopcionalessetransfirieronenlallamadaalprocedimiento.LafunciónIsMissingdevuelveTruesinosetransfirieronvaloresparaelargumentoespecificado;encasocontrario,devuelveFalse.SilafunciónIsMissingdevuelveTrueparaunargumento,utilizareseargumentoausenteenotrocódigopuedeprovocarunerrordefinidoporelusuario.SilafunciónIsMissingseutilizaenunargumentoParamArray,siempredevuelveFalse.ParadetectarunargumentoParamArrayvacío,compruebesiellímitesuperiordelamatrizesmenorqueellímiteinferior.

NotaIsMissingnofuncionaentiposdedatossimples(talescomoIntegeroDouble)porque,alcontrarioqueVariants,notieneunaprovisiónparabitde"falta"marcador.Porestarazón,lasintaxisparaargumentosopcionalesescritoslepermiteespecificarunvalorpredeterminado.Siseomiteelargumentocuandosellamaalprocedimiento,entonceselargumentotendráestevalorpredeterminado,comoenelejemplosiguiente:

SubMiSub(OptionalMiVarAsString="specialvalue")

IfMiVar="specialvalue"Then

'seomitióMiVar.

Else

...

EndSub

EnmuchoscasospuedeomitirlacomprobaciónIfMiVartotalmentesihaceelvalorpredeterminadoigualalvalorquequierequecontengaMiVarsielusuarioloomitedelallamadadelafunción.Estohacesucódigomásconcisoyefectivo.

Page 188: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsNull(Función)

Page 189: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveunvalordetipoBooleanqueindicasiunaexpresióncontienedatosnoválidos(Null).

Sintaxis

IsNull(expresión)

Elargumentoexpresiónrequerido,esuntipodedatosVariantquecontieneunaexpresiónnuméricaounaexpresióndecadena.

Comentarios

LafunciónIsNulldevuelveTruesiexpresiónesNull;encualquierotrocaso,IsNulldevuelveFalse.Siexpresiónestáformadapormásdeunavariable,lapresenciadeNullencualquiervariablehacequesedevuelvaTrueparatodalaexpresión.

ElvalorNullindicaqueVariantcontienedatosnoválidos.LafunciónNullnoeslamismaquelafunciónEmpty,lacualindicaqueunavariabletodavíanohasidoinicializada.Tampocoeslomismoqueunacadenadelongitudcero(""),queavecessesuelellamarcadenanula.

ImportanteUtilicelafunciónIsNullparadeterminarsiunaexpresióncontieneunvalorNull.LasexpresionesqueesperaevaluarcomoTrueenciertascircunstancias,talescomoIfVar=NullANDIfVar<>Null,sonsiempreFalse.EstosedebeaquecualquierexpresiónquecontieneunNullesporsimismadevalorNullyporconsiguienteFalse.

Page 190: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsNumeric(Función)

DevuelveunvalordetipoBooleanqueindicasiunaexpresiónsepuedeevaluarcomounnúmero.

Page 191: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

IsNumeric(expresión)

Elargumentoexpresiónrequerido,esuntipodedatosVariantquecontieneunaexpresiónnuméricaounaexpresióndetipocadena.

Comentarios

LafunciónIsNumericdevuelveTruesilaexpresióncompletasereconocecomounnúmero;enotrocaso,devuelveFalse.

LafunciónIsNumericdevuelveFalsesiexpresiónesunaexpresióndefecha.

Page 192: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsObject(Función)

DevuelveunvalordetipoBooleanqueindicasiunidentificadorrepresentaunavariabledetipoObject.

Page 193: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

IsObject(identificador)

Elargumentoobligatorioidentificadoresunnombredevariable.

Comentarios

LafunciónIsObjectesútilsolamenteparadeterminarsiuntipodedatosVariantesdeVarTypevbObject.EstopodríasucedersiVariantactualmentehacereferencia(ounavezhizoreferencia)aunobjetoosicontieneNothing.

LafunciónIsObjectdevuelveTruesiidentificadoresunavariabledeclaradadetipoObjectocualquiertipodeclaseválida,osiidentificadoresuntipodedatosVariantdeVarTypevbObjectounobjetodefinidoporelusuario;encualquierotrocaso,devuelveFalse.LafunciónIsObjectdevuelveTrueinclusosilavariablehasidoconfiguradacomoNothing.

Utiliceeltratamientodeerroresparaasegurarsedequeunareferenciaaunobjetoesválida.

Page 194: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Join

(Función)

Descripción

Devuelveunacadenaquesecreóuniendosubcadenascontenidasenunamatriz.

Sintaxis

Join(lista[,delimitador])

LasintaxisdelafunciónJoinconstadelossiguientesargumentosconnombre

Parte Descripciónlista Requerido.Unamatrizdeunadimensiónquecontienelas

subcadenasqueunir.delimitador Opcional.Elcarácterdelacadenaqueseutilizaparasepararlas

subcadenasenlacadenadevuelta.Siseomite,seutilizaelcaracterespacio("").Sieldelimitadoresunacadenadelongitudcero(""),

Page 195: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

seconcatenantodosloselementosenlalistasindelimitadores.

Page 196: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LBound(Función)

DevuelveuntipoLongquecontieneelsubíndicemáspequeñodisponibleparaladimensiónindicadadeunamatriz.

Sintaxis

LBound(nombre_matriz[,dimensión])

LasintaxisdelafunciónLBoundconstadelassiguientespartes:

Parte Descripción

Page 197: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

nombre_matriz

Requerido.Nombredelavariabledematriz;siguelasconvencionesdenombresestándardevariables.

dimensión Opcional;Variant(Long).Númeroenteroqueindicaaquédimensióncorrespondeellímiteinferiordevuelto.Use1paralaprimeradimensión,2paralasegundayasísucesivamente.Sidimensiónseomite,sesuponequees1.

Comentarios

LafunciónLBoundseusajuntoconlafunciónUBoundparadeterminareltamañodeunamatriz.UselafunciónUBoundparaencontrarellímitesuperiordeunadimensiónmatricial.

LBounddevuelvelosvaloresenumeradosenlatablasiguienteparaunamatrizquetienelassiguientesdimensiones:

DimA(1To100,0To3,-3To4)

Instrucción ValordevueltoLBound(A,1) 1LBound(A,2) 0LBound(A,3) -3

Ellímiteinferiorpredeterminadoparacualquierdimensiónes0ó1,dependiendodelaconfiguracióndelainstrucciónOptionBase.LabasedeunamatrizcreadaconlafunciónArrayescero;estonoseveafectadoporOptionBase.

LasmatricescuyasdimensionesseestablecenmediantelacláusulaToenunainstrucciónDim,Private,Public,ReDimoStaticpuedentenercualquiervalorenterocomolímiteinferior.

Page 198: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LCase(Función)

DevuelveuntipoStringquesehaconvertidoaminúsculas.

Sintaxis

LCase(cadena)

Elargumentocadenaescualquierexpresióndecadenaválida.SistringcontieneNull,sedevuelveNull.

Page 199: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Sóloseconviertenaminúsculaslasletrasmayúsculas.Lasletrasminúsculasoloscaracteresquenosonletrasnosufrencambios.

Page 200: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Left(Función)

DevuelveuntipoVariant(String)quecontieneunnúmeroespecificadodecaracteresdelladoizquierdodeunacadena.

Sintaxis

Left(string,length)

LasintaxisdelafunciónLefttieneestosargumentosconnombre:

Page 201: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónstring Requerido.Expresióndecadenadelacualsedevuelvenlos

caracteresqueestánmásalaizquierda.SistringcontieneNull,sedevuelveNull.

length Requerido,untipoVariant(Long).Expresiónnuméricaqueindicacuántoscaracteressevanadevolver.Sies0,devuelveunacadenadelongitudcero("").Siesmayoroigualalnúmerodecaracteresenstring,sedevuelvelacadenaentera.

Comentarios

Paradeterminarelnúmerodecaracteresenstring,utilicelafunciónLen.

NotaUtilicelafunciónLeftBcondatosdebytecontenidosenunacadena.Enlugardeespecificarelnúmerodecaracteresquesevanadevolver,lengthespecificaelnúmerodebytes.

Page 202: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Len(Función)

Page 203: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveuntipoLongquecontieneelnúmerodecaracteresenunacadenaoelnúmerodebytesnecesariosparaalmacenarunavariable.

Sintaxis

Len(cadena|nombrevar)

LasintaxisdelafunciónLenconstadelassiguientespartes:

Parte Descripcióncadena Cualquierexpresióndecadenaválida.SicadenacontieneNull,se

devuelveNull.Nombrevar Cualquiernombredevariableválido.SinombrevarcontieneNull,

sedevuelveNull.SinombrevaresuntipoVariant,LenactúaigualqueconuntipoStringysiempredevuelveelnúmerodecaracteresquecontiene.

Comentarios

Sedebenespecificaruno(ysólouno)delosdosargumentosposibles.Contiposdefinidosporelusuario,Lendevuelveeltamañocomoseescribiráenelarchivo.

NotaUtilicelafunciónLenBcondatosdebyteincluidosenunacadena,como

Page 204: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

enloslenguajesdelconjuntodecaracteresdedoblebyte(DBCS).Enlugardedevolverelnúmerodecaracteresenunacadena,LenBdevuelveelnúmerodebytesutilizadospararepresentaresacadena.Contiposdedatosdefinidosporelusuario,LenBdevuelveeltamañoenmemoria,incluyendocualquierrellenoentrecódigoqueutilizaLenB,veaelsegundoejemploeneltemadeejemplo.

NotaPuedequeLennoseacapazdedeterminarelnúmerorealrequeridodebytesdealmacenamientocuandoseutilizaconcadenasdelongitudvariableentiposdedatosdefinidosporelusuario.

Page 205: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Loc(Función)

DevuelveuntipoLongqueespecificalaposiciónactualdelecturaoescrituradentrodeunarchivoabierto.

Sintaxis

Loc(númeroarchivo)

ElargumentoconnombrenúmeroarchivoescualquiernúmerodearchivodetipoInteger.

Page 206: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Acontinuaciónseindicaelvalordevueltoporcadamododeaccesoaarchivos:

Modo ValordevueltoRandom Númerodelúltimoregistroleídooescritoenelarchivo.Sequential Laposicióndebyteactualenelarchivo,divididapor128.Sin

embargo,lainformaciónquedevuelveLocparalosarchivossecuencialesnoseutilizaniesobligatoria.

Binary Posicióndelúltimobyteleídooescrito.

Page 207: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LOF(Función)

DevuelveuntipoLongqueindicaeltamaño,enbytes,deunarchivoabiertomediantelainstrucciónOpen.

Sintaxis

LOF(númeroarchivo)

ElargumentonecesarionúmeroarchivoescualquierIntegerquecontengaunnúmerodearchivoválido.

Page 208: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NotaParaobtenerlalongituddeunarchivoquenoestáabiertoutilicelafunciónFileLen.

Page 209: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Log(Función)

DevuelveuntipoDoublequeespecificaellogaritmonaturaldeunnúmero.

Sintaxis

Log(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválidamayorquecero.

Page 210: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Ellogaritmonaturalesellogaritmoenbasee.Elvalordelaconstanteees2.718282aproximadamente.

Puedecalcularlogaritmosenbase-nparacualquiernúmeroxdividiendoellogaritmonaturaldexporellogaritmonaturaldendelasiguientemanera:

Logn(x)=Log(x)/Log(n)

Elejemplosiguienteilustraunafunciónpersonalizada(Function)quecalculalogaritmosenbase10:

StaticFunctionLog10(X)

Log10=Log(X)/Log(10#)

EndFunction

Page 211: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LTrim,RtrimyTrim(Funciones)

DevuelveuntipoVariant(String)quecontieneunacopiadeunacadenadeterminadasinespaciosalaizquierda(LTrim),sinespaciosaladerecha(RTrim)osinespaciosnialaderechanialaizquierda(Trim).

Sintaxis

LTrim(cadena)

RTrim(cadena)

Page 212: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Trim(cadena)

Elargumentocadenaobligatorioescualquierexpresióndecadenaválida.SicadenacontieneNull,sedevuelveNull.

Page 213: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Mid(Función)

DevuelveuntipoVariant(String)quecontieneunnúmeroespecificadodecaracteresdeunacadena.

Page 214: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Mid(string,start[,length])

LasintaxisdelafunciónMidtieneestosargumentosconnombre:

Parte Descripciónstring Requerido.Expresióndecadenadelacualsedevuelvenlos

caracteres.SistringcontieneNull,sedevuelveNull.start Requerido;untipoLong.Posicióndecarácterenstringenlacual

comienzalapartequesequieretomar.Sistartesmayorqueelnúmerodecaracteresenlastring,Middevuelveunacadenadelongitudcero("").

length Requerido;untipoVariant(Long).Númerodecaracteresquesevanadevolver.Siseomiteoeneltextohaymenosdelengthcaracteres(incluyendoelcarácterdestart),sedevuelventodosloscaracteresdesdelaposicióndestarthastaelfinaldelacadena.

Comentarios

Paradeterminarelnúmerodecaracteresenstring,utilicelafunciónLen.

NotaUtilicelafunciónMidBcondatosdebyteincluidosenunacadena,comoenloslenguajesdeconjuntodecaracteresdedoblebyte.Enlugardeespecificarelnúmerodecaracteres,losargumentosespecificanelnúmerodebytes.ParavercódigodeejemploqueutilizaMidB,veaelsegundoejemploeneltemadeejemplo.

Page 215: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Minute(Función)

DevuelveunvalordetipoVariant(Integer)queespecificaunnúmeroenteroentre0y59,inclusive,querepresentaelminutodelahora.

Page 216: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Minute(hora)

ElargumentohoraescualquiervalordetipoVariant,unaexpresiónnumérica,expresióndecadenaocualquiercombinaciónquepuedarepresentarunahora.SihoracontieneNull,lafuncióndevolveráNull.

Page 217: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MIRR(Función)

DevuelveuntipoDoublequeindicalatasainternaderetornomodificadaparaunaseriedeflujosdeefectivoperiódicos(pagosycobros).

Sintaxis

MIRR(values(),financerate,reinvestrate)

LafunciónMIRRconstadelossiguientesargumentosconnombre:

Page 218: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónvalues() Requerido.MatrizdetipoDoublequeindicalosvalores

deflujodeefectivo.Lamatrizdebeconteneralmenosunvalornegativo(unpago)yunopositivo(uncobro).

financerate Requerido.UntipoDoublequeindicaeltipodeinteréspagadocomocostodefinanciación.

reinvestrate Requerido.UntipoDoublequeindicaeltipodeinterésrecibidocomogananciaporlainversiónenefectivo.

Comentarios

Latasainternaderetornomodificadaeslatasainternaderetornocuandolospagosyloscobrossefinanciancontiposdistintos.LafunciónMIRRtieneencuentaelcostodelainversión(financerate)yeltipodeinterésrecibidoporlareinversióndeefectivo(reinvestrate).

Losargumentosfinancerateereinvestratesonporcentajesexpresadoscomovaloresdecimales.Porejemplo,12porcientoseexpresacomo0,12.

LafunciónMIRRutilizaelordendelosvaloresdelamatrizparainterpretarelordendelospagosycobros.Asegúresedeindicarlosvaloresdelospagosycobrossiguiendolasecuenciacorrecta.

Page 219: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Month(Función)

DevuelveunvalordetipoVariant(Integer)queespecificaunnúmeroenteroentre1y12,inclusive,querepresentaelmesdelaño.

Page 220: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Month(fecha)

ElargumentofechaescualquiervalordetipoVariant,unaexpresiónnumérica,expresióndecadenaocualquiercombinación,quepuedarepresentarunafecha.SifechacontieneNull,lafuncióndevolveráNull.

NotaSilaconfiguracióndelapropiedadCalendaresgregoriano,elenterodevueltorepresentaeldíadelasemanagregorianoparaelargumentofecha.SielcalendarioesHijri,elenterodevueltorepresentaeldíadelasemanaHijriparaelargumentofecha.ParafechasHijri,elargumentonúmeroescualquierexpresiónnuméricaquepuedarepresentarunafechay/uhoradesde1/1/100(gregoriano,2deagostodel718)a4/3/9666(gregoriano,31dediciembredel9999).

Page 221: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MonthName(Función)

Descripción

Devuelveunacadenaqueindicaelmesespecificado.

Sintaxis

MonthName(mes[,abreviar])

LasintaxisdelafunciónMonthNameconstadelassiguientespartes:

Parte Descripciónmes Requerido.Ladesignaciónnuméricadelmes.Porejemplo,

eneroes1,febreroes2,etcétera.abreviar Opcional.ElvalorBooleanqueindicasisevaaabreviarel

nombredelmes.Siseomite,elvalorpredeterminadoesFalse,quesignificaqueelnombredelmesnoseabrevia.

Page 222: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MsgBox(Función)

Page 223: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Muestraunmensajeenuncuadrodediálogo,esperaaqueelusuariohagaclicenunbotónydevuelveuntipoIntegercorrespondientealbotónelegidoporelusuario.

Sintaxis

MsgBox(prompt[,buttons][,title][,helpfile,context])

LasintaxisdelafunciónMsgBoxconstadeestosargumentosconnombre:

Parte Descripciónprompt Requerido.Expresióndecadenaquerepresentaelpromptenel

cuadrodediálogo.Lalongitudmáximadepromptesdeaproximadamente1024caracteres,segúnelanchodeloscaracteresutilizados.Sipromptconstademásdeunalínea,puedesepararlosutilizandouncarácterderetornodecarro(Chr(13))ouncarácterdeavancedelínea(Chr(10)),ounacombinacióndecaracteresderetornodecarro–avancedelínea(Chr(13)yChr(10))entrecadalíneaylasiguiente.

buttons Opcional.Expresiónnuméricaquecorrespondealasumadelosvaloresqueespecificanelnúmeroyeltipodelosbotonesquesepretendenmostrar,elestilodeiconoquesevaautilizar,laidentidaddelbotónpredeterminadoylamodalidaddelcuadrodemensajes.Siseomiteesteargumento,elvalorpredeterminadoparabuttonses0.

title Opcional.Expresióndecadenaquesemuestraenlabarradetítulodelcuadrodediálogo.Siseomitetitle,enlabarradetítulosecolocaelnombredelaaplicación.

helpfile Opcional.ExpresióndecadenaqueidentificaelarchivodeAyudaqueseutilizaparaproporcionarayudainteractivaenelcuadrode

Page 224: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

diálogo.Siseespecificahelpfile,tambiénsedebeespecificarcontext.

context Opcional.ExpresiónnuméricaqueesigualalnúmerodecontextodeAyudaasignadoporelautoraltemadeAyudacorrespondiente.Siseespecificacontext,tambiénsedebeespecificarhelpfile.

Valores

Elargumentobuttonstieneestosvalores:

Constante Valor DescripciónVbOKOnly 0 MuestrasolamenteelbotónAceptar.VbOKCancel 1 MuestralosbotonesAceptary

Cancelar.VbAbortRetryIgnore 2 MuestralosbotonesAnular,

ReintentareIgnorar.VbYesNoCancel 3 MuestralosbotonesSí,NoyCancelar.VbYesNo 4 MuestralosbotonesSíyNo.VbRetryCancel 5 MuestralosbotonesReintentary

Cancelar.VbCritical 16 Muestraeliconodemensajecrítico.VbQuestion 32 Muestraeliconodepreguntade

advertencia.VbExclamation 48 Muestraeliconodemensajede

advertencia.VbInformation 64 Muestraeliconodemensajede

información.VbDefaultButton1 0 Elprimerbotóneselpredeterminado.VbDefaultButton2 256 Elsegundobotóneselpredeterminado.VbDefaultButton3 512 Eltercerbotóneselpredeterminado.VbDefaultButton4 768 Elcuartobotóneselpredeterminado.VbApplicationModal 0 Aplicaciónmodal;elusuariodebe

responderalcuadrodemensajesantesdepoderseguirtrabajandoenlaaplicaciónactual.

Page 225: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

VbSystemModal 4096 Sistemamodal;sesuspendentodaslasaplicacioneshastaqueelusuariorespondaalcuadrodemensajes.

VbMsgBoxHelpButton 16384 AgregaelbotónAyudaalcuadrodemensaje.

VbMsgBoxSetForeground 65536 Especificalaventanadelcuadrodemensajecomolaventanadeprimerplano.

VbMsgBoxRight 524288 Eltextosealíneaaladerecha.VbMsgBoxRtlReading 1048576 Especificaqueeltextodebeaparecer

paraserleídodederechaaizquierdaensistemashebreoyárabe.

Elprimergrupodevalores(0a5)describeelnúmeroyeltipodelosbotonesmostradosenelcuadrodediálogo;elsegundogrupo(16,32,48,64)describeelestilodelicono,eltercergrupo(0,256,512)determinaelbotónpredeterminadoyelcuartogrupo(0,4096)determinalamodalidaddelcuadrodemensajes.Cuandosesumannúmerosparaobtenerelvalorfinaldelargumentobuttons,seutilizasolamenteunnúmerodecadagrupo.

NotaEstasconstanteslasespecificaVisualBasicforApplications.Portanto,elnombredelasmismaspuedeutilizarseencualquierlugardelcódigoenvezdesusvaloresreales.

Valoresdevueltos

Constante Valor DescripciónvbOK 1 AceptarvbCancel 2 CancelarvbAbort 3 AnularvbRetry 4 ReintentarvbIgnore 5 IgnorarvbYes 6 SívbNo 7 No

Page 226: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Cuandoseproporcionantantohelpfilecomocontext,elusuariopuedepresionarF1(Windows)oAyuda(Macintosh)paravereltemadeAyudacorrespondientealcontext.Algunasaplicacioneshost,porejemploMicrosoftExcel,tambiénagreganautomáticamenteunbotónAyudaalcuadrodediálogo.

SielcuadrodediálogocuentaconunbotónCancelar,presionarlateclaESCtendráelmismoefectoquehacerclicenestebotón.SielcuadrodediálogocontieneunbotónAyuda,sesuministraayudainteractivaparaesecuadrodediálogo.Sinembargo,nosedevuelvevaloralgunohastaquesehaceclicenunodeestosbotones.

NotaSideseaespecificarmásqueelprimerargumentoconnombre,debeutilizarMsgBoxenunaexpresión.Sideseaomitiralgúnargumentodeposición,debeincluireldelimitadordecomacorrespondiente.

Page 227: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Now(Función)

DevuelveunvalordetipoVariant(Date)queespecificalafechayhoraactualesdeacuerdoconlaconfiguracióndelafechaylahoradelsistemadesuequipo.

Sintaxis

Now

Page 228: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NPer(Función)

DevuelveuntipoDoublequeindicaelnúmerodeperiodosdeunaanualidadbasándoseenpagosperiódicosyconstantesconuntipodeinteréstambiénconstante.

Sintaxis

NPer(rate,pmt,pv[,fv[,type]])

LafunciónNPerconstadelossiguientesargumentosconnombre:

Page 229: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinteréspor

periodo.Porejemplo,siobtieneuncréditoparacomprarunautomóvilaunatasaporcentualanual(TPA)del10porcientoyrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

pmt Requerido.UntipoDoublequeindicaelpagoquehayquerealizarcadaperiodo.Normalmente,lospagoscontienenunnominalyuninterésquenovaríaalolargodelavidadelaanualidad.

pv Requerido.UntipoDoublequeindicaelvaloractual,ovalordehoy,deunaseriedepagosocobrosfuturos.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.

fv Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comoporejemplolahipotecadeuninmueble)ounainversión(comounplandeahorromensual).

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 230: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NPV(Función)

DevuelveuntipoDoublequeindicaelvaloractualnetodeunainversiónbasadaenunaseriedeflujosdeefectivoperiódicos(pagosycobros)yuntipodedescuento.

Sintaxis

NPV(rate,values())

LafunciónNPVconstadelossiguientesargumentosconnombre:

Page 231: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodedescuentoalo

largodelperiodo,expresadocomounvalordecimal.values() Requerido.MatrizdetipoDoublequeespecificavaloresde

flujodeefectivo.Lamatrizdebeconteneralmenosunvalornegativo(unpago)yunvalorpositivo(uncobro).

Comentarios

Elvaloractualnetodeunainversióneselvaloractualdeunaseriedepagosycobrosfuturos.

LafunciónNPVutilizaelordendelosvaloresdelamatrizparainterpretarelordendelospagosycobros.Asegúresedeindicarlosvaloresdelospagosycobrossiguiendolasecuenciacorrecta.

LainversióndeNPVcomienzaunperiodoantesdelafechadelprimerflujodeefectivoyterminaconelúltimoflujodeefectivodelamatriz.

Elcálculodelvaloractualnetosebasaenflujosdeefectivofuturos.Sielprimerflujodeefectivoseproducealprincipiodelprimerperiodo,elprimervalordebeagregarsealquedevuelvaNPVynodebeincluirseenlosvaloresdeflujodeefectivodevalues().

LafunciónNPVessimilaraPV(valoractual),exceptoenquePVpermitequelosflujosdeefectivocomiencenalprincipiooalfinaldeunperiodo.AdiferenciadelosvaloresdeflujodeefectivovariablesdeNPV,losdePVdebenserconstantesalolargodetodalainversión.

Page 232: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Oct(Función)

DevuelveuntipoVariant(String)querepresentaelvaloroctaldeunnúmero.

Sintaxis

Page 233: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Oct(número)

Elargumentonúmeronecesarioescualquierexpresiónnuméricaoexpresióndecadenaválida.

Comentarios

Sinúmeronoestodavíaunnúmeroentero,seredondeaalnúmeroenteromáscercanoantesdeevaluarse.

Sinúmeroes LafunciónOctdevuelveNull NullEmpty Cero(0)Cualquierotronúmero

Hasta11caracteresoctales

Puederepresentarnúmerosoctalesdirectamente,anteponiendo&O.Porejemplo,&O10enlanotaciónoctalrepresentaa8enbasediez.

Page 234: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Partition(Función)

DevuelveunaVariant(String)indicandoenquépuntoseencuentraunnúmerodentrodeunaseriecalculadadeintervalos.

Sintaxis

Partition(number,start,stop,interval)

LasintaxisdelafunciónPartitionconstadelossiguientesargumentosconnombre:

Parte Descripciónnumber Requerido.Númeroenteroquequiereevaluarfrentealos

intervalos.start Requerido.Númeroenteroqueindicaelcomienzodel

intervaloglobaldenúmeros.Nopuedeserinferiora0.

Page 235: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

stop Requerido.Númeroenteroqueindicaelfinaldelintervaloglobaldenúmeros.Nopuedeserigualnimenorquestart.

Comentarios

LafunciónPartitionidentificaelintervaloenparticularenqueseencuentranumberydevuelveunaVariant(String)quedescribeeseintervalo.LafunciónPartitionresultaútilsobretodoenlasconsultas.Puedecrearunaconsultadeselecciónquemuestrecuántospedidosseencuentranendeterminadosintervalos,porejemplo,valoresdepedidoentre1y1000,entre1001y2000,etc.

Enlatablasiguientesemuestralaformaenquesedeterminanlosintervalosutilizandotresconjuntosdecomponentesstart,stopeinterval.LascolumnasPrimerintervaloyÚltimointervalomuestranlosvaloresdevueltosporPartition.Losintervalosserepresentanenlaformavalorinferior:valorsuperior,dondeelextremomínimo(valorinferior)delintervaloseseparacondospuntos(:)delextremomáximo(valorsuperior).

start stop intervalAntesdelprimero

Primerintervalo

Últimointervalo

Despuésdelúltimo

0 99 5 ":-1" "0:4" "95:99" "100:"20 199 10 ":19" "20:29" "190:199" "200:"100 1010 20 ":99" "100:119 "1000:1010" "1011:"

Enlatablaanterior,laterceralíneamuestraelresultadocuandostartystopdefinenunconjuntodenúmerosquenosepuedendividirexactamenteentreinterval.Elúltimointervaloseextiendehastastop(11números),aunqueintervales20.

Siesnecesario,Partitiondevolveráunintervaloconlossuficientesespaciosalaizquierdaparaquehayaelmismonúmerodecaracteres,alaizquierdayderechadelosdospuntos,queenstop,másuno.AsíseaseguraquesiseutilizaPartitionconotrosnúmeros,eltextoresultanteseprocesarácorrectamenteenunaoperacióndeordenaciónposterior.

Siintervales1,elintervaloseránumber:number,independientementedelos

Page 236: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

argumentosstartystop.Porejemplo,siintervales1,numberes100ystopes1000,Partitiondevolverá"100:100".

SialgunodelosargumentosesNull,PartitiondevolveráNull.

Page 237: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Pmt(Función)

DevuelveuntipoDoublequeindicaelpagodeunaanualidadbasadaenpagosperiódicosconstantesconuntipodeinteréstambiénconstante.

Page 238: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Pmt(rate,nper,pv[,fv[,type]])

LafunciónPmtconstadelossiguientesargumentosconnombre:

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinterés

porperiodo.Porejemplo,siobtieneuncréditoparacomprarunautomóvilaunatasaporcentualanual(TPA)del10porcientoyrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

nper Requerido.UntipoIntegerqueindicaelnúmerototaldeperiodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

pv Requerido.UntipoDoublequeindicaelvaloractual(osumaglobal)quetieneenestemomentounaseriedepagospararealizarenelfuturo.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.

fv Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Comentarios

Page 239: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comoporejemplolahipotecadeuninmueble)ounainversión(comounplandeahorromensual).

Losargumentosrateynperdebencalcularseutilizandoperiodosdepagoexpresadosenlasmismasunidades.Porejemplo,siratesecalculaenmeses,npertambiéndebecalcularseenmeses.

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 240: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PPmt(Función)

DevuelveuntipoDoublequeindicaelpagonominalcorrespondienteaunperiododeterminadodeunaanualidadbasadaenpagosperiódicosyconstantesconuntipodeinteréstambiénconstante.

Page 241: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

PPmt(rate,per,nper,pv[,fv[,type]])

LafunciónPPmtconstadelossiguientesargumentosconnombre:

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinterés

porperiodo.Porejemplo,siobtieneuncréditoparacomprarunautomóvilaunatasaporcentualanual(TPA)del10porciento,yrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

per Requerido.UntipoIntegerqueindicaelperiododelpago,entre1ynper.

nper Requerido.UntipoIntegerqueindicaelnúmerototaldeperiodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

fv Requerido.UntipoDoublequeindicaelvaloractual,ovalordehoy,deunaseriedepagosocobrosfuturos.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.

fv Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Page 242: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comoporejemplolahipotecadeuninmueble)ounainversión(comounplandeahorromensual).

Losargumentosrateynperdebencalcularseutilizandoperiodosdepagoexpresadosenlasmismasunidades.Porejemplo,siratesecalculaenmeses,npertambiéndebecalcularseenmeses.

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 243: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PV(Función)

DevuelveuntipoDoublequeindicaelvaloractualdeunaanualidadbasadaenpagosperiódicosconstantesquesevanarealizarenelfuturo,conuntipodeinteréstambiénconstante.

Page 244: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

PV(rate,nper,pmt[,fv[,type]])

LafunciónPVconstadelossiguientesargumentosconnombre:

Parte Descripciónrate Requerido.UntipoDoublequeindicaeltipodeinterés

porperiodo.Porejemplo,siobtieneuncréditoparacomprarunautomóvilaunatasaporcentualanual(TPA)del10porciento,yrealizapagosmensuales,eltipoporperiodoserá0,1/12ó0,0083.

nper Requerido.UntipoIntegerqueindicaelnúmerototaldeperiodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

pmt Requerido.UntipoDoublequeindicaelpagoarealizarcadaperiodo.Normalmente,lospagoscontienenunnominalyuninterésquenovaríaalolargodelavidadelaanualidad.

fv Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comopor

Page 245: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ejemplolahipotecadeuninmueble)ounainversión(comounplandeahorromensual).

Losargumentosrateynperdebencalcularseutilizandoperiodosdepagoexpresadosenlasmismasunidades.Porejemplo,siratesecalculaenmeses,npertambiéndebecalcularseenmeses.

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Page 246: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

QBColor(Función)

DevuelveuntipoLongquerepresentaelcódigodecolorRGBcorrespondientealnúmerodecolorespecificado.

Sintaxis

QBColor(color)

Elargumentocoloresunnúmeroenteroentre0-15.

Valores

Elargumentocolortomalossiguientesvalores:

Número Color Número Color0 Negro 8 Gris1 Azul 9 Azulclaro

Page 247: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

2 Verde 10 Verdeclaro3 Aguamarina 11 Aguamarinaclaro4 Rojo 12 Rojoclaro5 Fucsia 13 Fucsiaclaro6 Amarillo 14 Amarilloclaro7 Blanco 15 Blancobrillante

Comentarios

ElargumentocolorrepresentalosvaloresdecolorqueutilizanotrasversionesdeBasic(comoMicrosoftVisualBasicparaMS-DOSyBasicCompiler).Comenzandoporelbytemenossignificativo,elvalordevueltoespecificalosvaloresderojo,verdeyazulnecesariosparaestablecerelcolorcorrespondienteenelsistemaRGBqueutilizaVisualBasicparaAplicaciones.

Page 248: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Rate(Función)

DevuelveuntipoDoublequeindicaeltipodeinterésporperiododeunaanualidad.

Sintaxis

Rate(nper,pmt,pv[,fv[,type[,guess]]])

LafunciónRateconstadelossiguientesargumentosconnombre:

Page 249: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónnper Requerido.UntipoDoublequeindicaelnúmerototalde

periodosdepagodelaanualidad.Porejemplo,sirealizapagosmensualescorrespondientesauncréditoparaadquirirunautomóvilacuatroaños,elcréditotendráuntotalde4*12(ó48)periodosdepago.

pmt Requerido.UntipoDoublequeindicaelpagoquesevaarealizarcadaperiodo.Normalmente,lospagoscontienenunnominalyuninterésquenovaríaalolargodelavidadelaanualidad.

pv Requerido.UntipoDoublequeindicaelvaloractual,ovalorhoy,deunaseriedepagosocobrosfuturos.Porejemplo,enelmomentodeobteneruncréditoparacomprarunautomóvil,elimportedelmismoeselvaloractualparaelprestamistadelospagosmensualesarealizar.

vf Opcional.UntipoVariantqueindicaelvalorfuturoobalanceenefectivoquesedeseatenerunavezrealizadoelpagofinal.Porejemplo,elvalorfuturodeuncréditoes0,puestoquetalessuvalordespuésdelpagofinal.Sinembargo,sideseaahorrar5.000.000$paralaeducacióndesuhijodurante18años,elvalorfuturoserá5.000.000$.Siseomite,seasumeelvalor0.

type Opcional.UntipoVariantqueindicaelmomentoenquevencenlospagos.Utilice0silospagosvencenalfinaldelperiodoo1silospagosvencenalprincipiodelmismo.Siseomite,seasumeelvalor0.

guess Opcional.UntipoVariantqueindicalaestimaciónquedevolveráRate.Siseomite,guessserá0,1(10porciento).

Comentarios

Unaanualidadesunaseriedepagosconstantesenefectivorealizadosalolargodeunperiododetiempo.Unaanualidadpuedeserunpréstamo(comoporejemplolahipotecadeuninmueble)ounainversión(comounplandeahorro

Page 250: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

mensual).

Paratodoslosargumentos,elefectivoabonado(comodepósitosdeahorro)serepresentaconnúmerosnegativosyelrecibido(comochequesdedividendos)connúmerospositivos.

Ratesecalculaporiteración.Comenzandoporelvalordeguess,Raterealizauncálculocíclicohastaqueelresultadotieneunaprecisióndel0,00001porciento.Sidespuésde20intentosnopuedenencontrarunresultado,Ratefalla.Sisecomienzaporel10porcientoyRatefalla,pruebeconunvalordistintoparaguess.

Page 251: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Replace

(Función)

Descripción

Devuelveunacadenaenlaquesereemplazóunasubcadenaespecificadaconotrasubcadenaunnúmeroespecificadodeveces.

Sintaxis

Replace(expresión,encontrar,reemplazarCon[,inicio[,contar[,comparar]]])

LasintaxisdelafunciónReplaceconstadelossiguientesargumentosconnombre:

Parte Descripciónexpresión Requerido.Unaexpresióndecadenaquecontienela

subcadenaquereemplazar.encontrar Requerido.Lasubcadenaquesebusca.

Page 252: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

reemplazarCon Requerido.Lasubcadenadesustitución.inicio Opcional.Laposicióndentrodelaexpresióndonde

seempezaráabuscarlasubcadena.Siseomite,sesuponequees1.

contar Opcional.Elnúmerodesustitucionesdesubcadenasqueserealizarán.Siseomite,elvalorpredeterminadoes–1,quesignificaquesehagantodaslassustitucionesposibles.

comparar Opcional.Elvalornúmericoqueindicalaclasedecomparaciónqueserealizarácuandoseevalúenlassubcadenas.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

Elargumentocompararpuedetenerlosvaloressiguientes:

Constante Valor DescripciónvbUseCompareOption –1 Realizarunacomparaciónutilizandoelvalor

delainstrucciónOptionCompare.vbBinaryCompare 0 Realizaunacomparaciónbinaria.vbTextCompare 1 Realizarunacomparaciónbasadaeneltexto.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realizaruna

comparaciónbasadaenlainformacióndesubasededatos.

Valoresderetorno

LafunciónReplacedevuelvelosvaloressiguientes:

Si Reemplazardevuelveexpresiónesdelongitudcero Unacadenadelongitudcero("").expresiónesNull Unerror.encontraresdelongitudcero Unacopiadeexpresión.

Page 253: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

reemplazarConesdelongitudcero Unacopiadeexpresióncontodaslasaparicionesdeencontrarquitadas.

inicio>Len(expresión) Unacadenadelongitudcero.contares0 Unacopiadeexpresión.

Comentarios

ElvalorderetornodelafunciónReplaceesunacadenaconsustitucioneshechasquecomienzaenlaposiciónespecificadaporinicioyconcluyealfinaldelacadenaexpresión.Noesunacopiadelacadenaoriginaldesdeelinicioalfinal.

Page 254: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RGB(Función)

DevuelveunnúmeroenterotipoLongquerepresentaunvalordecolorRGB.

Sintaxis

Page 255: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RGB(red,green,blue)

LasintaxisdelafunciónRGBconstadelossiguientesargumentos:

Parte Descripciónred Obligatorio.tipoVariant(Integer).Númeroenelintervalode0-255,

ambosinclusive,querepresentaelcomponenterojodelcolor.green Obligatorio;tipoVariant(Integer).Númeroenelintervalode0-255,

ambosinclusive,querepresentaelcomponenteverdedelcolor.blue Obligatorio;tipoVariant(Integer).Númeroenelintervalode0-255,

ambosinclusive,querepresentaelcomponenteazuldelcolor.

Comentarios

LosmétodosdeaplicaciónylaspropiedadesqueaceptanunaespecificacióndecoloresperanqueéstaseaunnúmeroquerepresenteunvalordecolorRGB.UnvalordecolorRGBespecificalaintensidadrelativaderojo,verdeyazulquehacenquesemuestreuncolordeterminado.

ElvalordecualquierargumentoparalafunciónRGBqueseasuperiora255seconsiderarácomo255.

Lasiguientetablamuestraalgunoscoloresestándarysusvaloresderojo,verdeyazul:

Color Valorderojo Valordeverde ValordeazulNegro 0 0 0Azul 0 0 255Verde 0 255 0Cián 0 255 255Rojo 255 0 0Magenta 255 0 255Amarillo 255 255 0Blanco 255 255 255

Page 256: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LosvaloresdecolorRGBdevueltosporestafunciónsonincompatiblesconlosqueutilizaelsistemaoperativodeMacintosh.PuedenutilizarseenelcontextodelasaplicacionesdeMicrosoftparaMacintosh,peronosedebenutilizarcuandosecomunicancambiosdecolordirectamentealsistemaoperativosdeMacintosh.

Page 257: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Right(Función)

DevuelveuntipoVariant(String)quecontieneunnúmeroespecificadodecaracteresdelladoderechodeunacadena.

Sintaxis

Right(string,lenght)

LasintaxisdelafunciónRighttieneestosargumentosconnombre:

Page 258: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónstring Requerido.Expresióndecadenadesdelacualsedevuelvenlos

caracteresqueestánmásaladerecha.SistringcontieneNull,sedevuelveNull.

lenght Requerido,untipoVariant(Long).Expresiónnuméricaqueindicacuántoscaracteressevanadevolver.Sies0,sedevuelveunacadenadelongitudcero("").Siesmayoroigualalnúmerodecaracteresenstring,sedevuelvelacadenacompleta.

Comentarios

Paradeterminarelnúmerodecaracteresenstring,utilicelafunciónLen.

NotaUtilicelafunciónRightBcondatosdebyteincluidosenunacadena.Enlugardeespecificarelnúmerodecaracteresparadevolver,longitudespecificaelnúmerodebytes.

Page 259: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Rnd(Función)

DevuelveuntipoSinglequecontieneunnúmeroaleatorio.

Sintaxis

Rnd[(número)]

ElargumentoopcionalnúmeroesuntipoSingleocualquierexpresiónnuméricaválida.

Valoresdevueltos

Page 260: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sinúmeroes RndgeneraMenorquecero Elmismonúmerotodaslasveces,utilizandonúmerocomo

valordesemilla.Mayorquecero Elsiguientenúmeroaleatoriodelasecuencia.Igualacero Elnúmerogeneradomásrecientemente.Noseespecifica Elsiguientenúmeroaleatoriodelasecuencia.

Comentarios

LafunciónRnddevuelveunvalormenorque1peromayoroigualquecero.

ElvalordenúmerodeterminacómolafunciónRndgeneraunnúmeroaleatorio:

Paracualquiervalordesemillainicialsegeneralamismasecuenciadenúmeros.EstoesdebidoaquecadallamadasucesivaalafunciónRndusaráelnúmeroanteriorcomovalordesemillaparaelsiguientenúmerodelasecuencia.

AntesdellamaralafunciónRnd,utilicelainstrucciónRandomizesinargumentoparainicializarelgeneradordenúmerosaleatoriosconunvalordesemillabasadoenelrelojdelsistema.

Paraproducirenterosaleatoriosenunintervalodado,useestafórmula:

Int((Límite_superior-límite_inferior+1)*Rnd+límite_inferior)

Aquí,límite_superioreselnúmeromayordelintervaloylímite_inferioreselnúmeromenordelintervalo.

NotaPararepetirsecuenciasdenúmerosaleatorios,llamealafunciónRndconunargumentonegativoantesdeutilizarlafunciónRandomizeconunargumentonumérico.AlutilizarlainstrucciónRandomizeconelmismovalordenúmeronoserepitelasecuenciaanterior.

Page 261: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Round(Función)

Descripción

Devuelveunnúmeroredondeadoenelnúmeroespecificadodelugaresdecimales.

Sintaxis

Round(expresión[,númLugaresDecimales])

LasintaxisdelafunciónRoundconstadelassiguientespartes:

Parte Descripciónexpresión Requirido.Laexpresiónnuméricaqueseredondea.númLugaresDecimales Opcional.Unnúmeroqueindicacuántoslugaresala

derechadeldecimalseincluyenenelredondeo.Siseomite,lafunciónRounddevuelveenteros.

Page 262: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Second(Función)

DevuelveunvalordetipoVariant(Integer)queespecificaunnúmeroenteroentre0y59,inclusive,querepresentaunsegundo.

Page 263: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Second(hora)

ElargumentohoraescualquiervalordetipoVariant,unaexpresiónnumérica,expresióndecadenaocualquiercombinación,quepuedarepresentarunahora.SihoracontieneNull,lafuncióndevolveráNull.

Page 264: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seek(Función)

DevuelveuntipoLongqueespecificanlaposiciónactualdelecturaoescrituradeunarchivoabiertomediantelainstrucciónOpen.

Sintaxis

Seek(númeroarchivo)

ElargumentonecesarionúmeroarchivoescualquierIntegerquecontengaunnúmerodearchivoválido.

Page 265: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Seekdevuelveunvalorentre1y2.147.483.647(equivalentea2^31-1),ambosinclusive.

Lossiguientesvaloresdescribenelvalordevueltoparacadamododeaccesoaunarchivo.

Modo ValordevueltoRandom Númerodelsiguienteregistroqueseleeoescribe.Binary,Output,Append,Input

Posicióndebyteenlaquesellevaráacabolasiguienteoperación.Elprimerbytedeunarchivotienelaposición1,elsegundobytetienelaposición2yasísucesivamente.

Page 266: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sgn

(Función)

DevuelveuntipoVariant(Integer)queindicaelsignodeunnúmero.

Sintaxis

Sgn(número)

Elargumentonúmeropuedesercualquierexpresiónnuméricaválida.

Valoresdevueltos

Sinúmeroes SgndevuelveMayorquecero 1Igualacero 0Menorquecero -1

Comentarios

Page 267: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ElsignodelargumentonúmerodeterminaelvalordevueltoporlafunciónSgn.

Page 268: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Shell(Función)

EjecutaunprogramaejecutableydevuelveuntipoVariant(Double)querepresentalaidentificacióndelatareadelprogramasisehaejecutadoconéxito,encasocontrariodevuelvecero.

Sintaxis

Shell(pathname[,windowstyle])

LasintaxisdelafunciónShelltieneestosargumentosconnombre:

Page 269: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónpathname Requerido;Variant(String).Nombredelprogramaa

ejecutarydecualesquieraargumentosnecesariosomodificadordelalíneadecomandos;puedeincluirdirectorioocarpetayunidaddedisco.EnMacintosh,puedeutilizarlafunciónMacIDparaespecificarlafirmadeunaaplicaciónenlugardesunombre.ElsiguienteejemploutilizalafirmadeMicrosoftWord:ShellMacID("MSWD")

windowstyle Opcional.Variant(Integer)correspondientealestilodelaventanaenlacualsevaaejecutarelprograma.Siseomitewindowstyle,elprogramaseiniciaminimizadoconenfoque.EnMacintosh(sistema7.0oposterior),windowstylesólodeterminasilaaplicaciónrecibeelenfoquecuandoseejecuta.

Elargumentoconnombrewindowstyletieneestosvalores:

Constante Valor DescripciónvbHide 0 SeocultaWindowsysepasaelfocoala

ventanaoculta.LaconstantevbHidenoseaplicaaplataformasMacintosh.

vbNormalFocus 1 Windowsrecuperaelfocoyvuelveasuposiciónytamañooriginal.

vbMinimizedFocus 2 Windowssemuestracomouniconoconfoco.

vbMaximizedFocus 3 Windowssemaximizaconfoco.vbNormalNoFocus 4 Windowsvuelvealtamañoyposición

másrecientes.Laventanaactivaactualpermaneceactiva.

vbMinimizedNoFocus 6 Windowssemuestracomounicono.Laventanaactivaactualpermaneceactiva.

Comentarios

Page 270: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SilafunciónShellejecutaconéxitoelarchivonombrado,devuelvelaidentificacióndelatarea(Id)delprogramainiciado.LaIddelatareaesunnúmeroexclusivoqueidentificaelprogramaenejecución.SilafunciónShellnopuedeiniciarelprogramanombrado,ocurriráunerror.

EnMacintosh,vbNormalFocus,vbMinimizedFocusyvbMaximizedFocuscolocanlaaplicaciónenprimerplano;sinembargo,vbHide,vbNoFocus,vbMinimizeFocuslacolocanensegundoplano.

NotaDemanerapredeterminada,lafunciónShellejecutaotrosprogramasdeformaasíncrona.EstoquieredecirquenosepuedeesperarqueunprogramainiciadoconShellterminesuejecuciónantesdequeseejecutenlasinstruccionesquesiguenalafunciónShellenlaaplicación.

Page 271: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sin(Función)

DevuelveuntipoDoublequeespecificaelsenodeunángulo.

Sintaxis

Sin(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválidaqueexpresaunánguloenradianes.

Page 272: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LafunciónSintomaunánguloydevuelvelarazóndedosladosdeuntriángulorectángulo.Larazóneslalongituddelladoopuestoalángulodivididoporlalongituddelahipotenusa.

Elresultadoentradentrodelintervalo-1a1.

Paraconvertirgradosenradianes,multipliquelosgradosporpi/180.Paraconvertirradianesengrados,multipliquelosradianespor180/pi.

Page 273: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SLN(Función)

DevuelveuntipoDoublequeindicaladepreciaciónlinealdeunbienduranteunúnicoperiodo.

Sintaxis

SLN(cost,salvage,life)

LafunciónSLNconstadelossiguientesargumentosconnombre:

Parte Descripción

Page 274: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cost Requerido.UntipoDoublequeindicaelcostoinicialdelbien.salvage Requerido.UntipoDoublequeindicaelvalordelbienaltérmino

desuvidaútil.life Requerido.UntipoDoublequeindicaladuracióndelavidaútil

delbien.

Comentarios

Elperiododedepreciaciónsedebeexpresarenlasmismasunidadesqueelargumentolife.Todoslosargumentosdebensernúmerospositivos.

Page 275: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Space(Función)

DevuelveuntipoVariant(String)queconsisteenunnúmeroespecificadodeespacios.

Sintaxis

Space(número)

Elargumentonúmeroeselnúmerodeespaciosquesedeseaincluirenlacadena.

Comentarios

LafunciónSpaceesútilparadarformatoalasalidayparaborrardatosencadenasdelongitudfija.

Page 276: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Spc(Función)

SeutilizaconlainstrucciónPrint#oelmétodoPrintparaalterarlaposicióndelasalida.

Sintaxis

Spc(n)

Elargumentoobligatorioneselnúmerodeespaciosquesevanainsertarantesdemostraroimprimirlasiguienteexpresióndeunalista.

Comentarios

Sinesmenorqueelanchodelalíneadesalida,lapróximaposicióndeimpresiónsigueinmediatamentealnúmerodeespaciosimpresos.Sinesmayorqueelanchodelalíneadesalida,Spccalculalasiguienteposicióndeimpresiónmediantelafórmula:

Page 277: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

posiciónactualimpresión+(nModancho)

Porejemplo,silaposicióndeimpresiónactuales24,elanchodelalíneadesalidaesde80yespecificaSpc(90),laimpresiónsiguientecomienzaenlaposición34(laposicióndeimpresiónactual+elrestode90/80).Siladiferenciaentrelaposicióndeimpresiónactualyelanchodelalíneadesalidaesmenorquen(onModancho),lafunciónSpcvaalprincipiodelalíneasiguienteygeneraunnúmerodeespaciosigualan-(ancho-posiciónactualimpresión).

NotaAsegúresedequelascolumnastabularesseansuficientementeanchasparapodercolocarletrasanchas.

CuandoseutilizaelmétodoPrintconunafuentedeespacioproporcional,elanchodeloscaracteresdeespacioimpresosmediantelafunciónSpcessiempreunpromediodelanchodetodosloscaracteresconeltamañoenpuntosdelafuenteelegida.Sinembargo,nohayningunacorrelaciónentreelnúmerodecaracteresimpresosyelnúmerodecolumnasdeanchofijoqueestoscaracteresocupan.Porejemplo,laletraWmayúsculaocupamásdeunacolumnadeanchofijoylaletraIminúsculaocupamenos.

Page 278: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Split(Función)

Descripción

Devuelveunamatrizdeunadimensión,basadaenceros,quecontieneunnúmeroespecificadodesubcadenas.

Sintaxis

Split(expresión[,delimitador[,contar[,comparar]]])

LasintaxisdelafunciónSplitconstadelossiguientesargumentosconnombre:

Page 279: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónexpresión Requerido.Unaexpresióndecadenaquecontiene

subcadenasydelimitadores.Siexpresiónesunacadenadelongitudcero(""),Splitdevuelveunamatrizvacía,esdecir,unamatrizsinelementosysindatos.

delimitador Opcional.Elcarácterdelacadenautilizadoparaidentificarloslímitesdelasubcadena.Siseomite,sesuponequeelcarácterdeespacio("")eseldelimitador.Sieldelimitadoresunacadenadelongitudcero,sedevuelveunamatrizdeunúnicoelementoquecontienelacadenaexpresiónentera.

contar Opcional.Elnúmerodesubcadenasquesedevolverán;–1indicaquesedevuelventodaslassubcadenas.

comparar Opcional.Unvalornúmericoqueindicalaclasedecomparaciónqueserealizarácuandoseevalúenlassubcadenas.VealasecciónValoresparaconsultarlosvaloresposibles.

Valores

Elargumentocompararpuedetenerlosvaloressiguientes:

Constante Valor DescripciónvbUseCompareOption –1 Realizarunacomparaciónutilizandoelvalor

delainstrucciónOptionCompare.vbBinaryCompare 0 Realizarunacomparaciónbinaria.vbTextCompare 1 Realizarunacomparaciónbasadaeneltexto.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realizaruna

comparaciónbasadaenlainformacióndesubasededatos.

Page 280: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sqr(Función)

DevuelveuntipoDoublequeespecificalaraízcuadradadeunnúmero.

Sintaxis

Sqr(número)

ElnúmeroargumentoesuntipoDoubleocualquierexpresiónnuméricaválidamayoroigualacero.

Page 281: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Str(Función)

DevuelveenuntipoVariant(String)larepresentacióndecadenadeunnúmero.

Sintaxis

Str(número)

ElargumentonúmeronecesarioesuntipoLongquecontieneunaexpresiónnuméricaválida.

Comentarios

Page 282: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Cuandolosnúmerosseconviertenacadenas,siempresereservaunespacioalaizquierdaparaelsignodelnúmero.Sinúmeroespositivo,lacadenadevueltacontieneunespacioalaizquierdayelsignomássedaporsupuesto.

UtilicelafunciónFormatparaconvertirvaloresnuméricosenvaloresconformatodefecha,hora,monedaoenotrosformatosdefinidosporelusuario.AdiferenciadeStr,lafunciónFormatnoincluyeunespacioalaizquierdaparaelsignodelnúmero.

NotaLafunciónStrsóloreconoceelpunto(.)comoseparadordecimalválido.Cuandoexistalaposibilidaddequesepuedautilizarunseparadordecimaldiferente(porejemplo,enaplicacionesinternacionales),sedebeutilizarCStrparaconvertirunnúmeroaunacadena.

Page 283: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

StrComp(Función)

DevuelveuntipoVariant(Integer)queindicaelresultadodeunacomparacióndecadena.

Page 284: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

StrComp(string1,string2[,compare])

LasintaxisdelafunciónStrComptieneestosargumentosconnombre:

Parte Descripciónstring1 Requerido.Cualquierexpresióndecadenaválida.string2 Requerido.Cualquierexpresióndecadenaválida.compare Opcional.Especificaeltipodecomparacióndecadena.Siel

argumentocompareesnuloelvalordeOptionComparedeterminaeltipodecomparación.

Valores

Losvaloresdelainstruccióncomparesonlossiguientes:

Constante Valor DescripciónvbUseCompareOption -1 Realizaunacomparaciónconlos

valoresdelainstrucciónOptionCompare.

vbBinaryCompare 0 Realizaunacomparaciónbinaria.vbTextCompare 1 Realizaunacomparacióntextual.vbDatabaseCompare 2 SóloparaMicrosoftAccess.Realiza

unacomparaciónbasadaenlainformaciónenlasbasesdedatos.

Valoresdevueltos

LafunciónStrCompdevuelvelossiguientesvalores:

Si LafunciónStrCompdevuelvestring1esmenorquestring2 -1string1esigualastring2 0string1esmayorquestring2 1

Page 285: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

string1ostring2esNull Null

Page 286: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

StrConv(Función)

Page 287: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveuntipoVariant(String)queseconviertecomoseespecifica.

Sintaxis

StrConv(string,conversion,LCID)

LasintaxisdelafunciónStrConvtieneestosargumentosconnombre:

Parte Descripciónstring Requerido.Expresióndecadenaquesevaaconvertir.Conversion Requerido.UntipoInteger.Lasumadelosvaloresque

especificaeltipodeconversiónquesevaarealizar.LCID Opcional.LaLocaleID,siesdiferentedelaLocaleIDdel

sistema.(LaLocaleIDdelsistemaeslapredeterminada.)

Valores

Losvaloresdelargumentoconversionson:

Constante Valor DescripciónvbUpperCase 1 Conviertelacadenaacaracteresenmayúscula.vbLowerCase 2 Conviertelacadenaacaracteresenminúscula.vbProperCase 3 Convierteamayúsculalaprimeraletradecada

Page 288: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

palabradelacadena.vbWide* 4* Convierteloscaracterescortos(unúnicobyte)de

lacadenaacaracteresanchos(doblebyte).vbNarrow* 8* Convierteloscaracteresanchos(doblebyte)dela

cadenaacaracterescortos(unúnicobyte).vbKatakana** 16** ConvierteloscaracteresHiraganadelacadenaa

caracteresKatakana.vbHiragana** 32** ConvierteloscaracteresKatakanadelacadenaa

caracteresHiragana.vbUnicode 64 ConviertelacadenaaUnicodeutilizandola

páginadecódigospredeterminadadelsistema.(NodisponibleenMacintosh.)

vbFromUnicode 128 ConviertelacadenadeUnicodealapáginadecódigospredeterminadadelsistema.(NodisponibleenMacintosh.)

*SeaplicaalasconfiguracionesregionalesdelLejanoOriente.

**SeaplicasolamenteaJapón.

NotaEstasconstantesestánespecificadasporVisualBasicforApplications.Comoresultado,sepuedenutilizarencualquierpartedesucódigoenlugardelosvaloresreales.Lamayoríasepuedencombinar,porejemplo,vbUpperCase+vbWide,exceptocuandoseexcluyenmutuamente,porejemplo,vbUnicode+vbFromUnicode.LasconstantesvbWide,vbNarrow,vbKatakanayvbHiraganaoriginanerroresentiempodeejecucióncuandoutilizanconfiguracionesregionalesdondenoseaplican.

Lossiguientessonseparadoresdepalabrasválidosparamayúsculas/minúsculas:Null(Chr$(0)),tabuladorhorizontal(Chr$(9)),avancedelínea(Chr$(10)),tabuladorvertical(Chr$(11)),avancedepágina(Chr$(12)),retornodecarro(Chr$(13)),espacio(SBCS)(Chr$(32)).ElvalorrealdeespaciovaríaporelpaísparaDBCS.

Comentarios

Page 289: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CuandoseconvierteunacadenadematrizByteaformatoANSI,sedebeutilizarlafunciónStrConv.CuandoseconvierteunamatrizenformatoUnicode,utiliceunainstruccióndeasignación.

Page 290: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

StrReverse(Función)

Descripción

Devuelveunacadenaenlaqueseinvierteelordendecarácterdeunacadenaespecificada.

Sintaxis

StrReverse(cadena1)

Elargumentocadena1eslacadenacuyoscaracteresseinvierten.Sicadena1esunacadenadelongitudcero(""),sedevuelveunacadenadelongitudcero.SiesNull,seproduceunerror.

Page 291: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

String(Función)

DevuelveuntipoVariant(String)quecontieneunacadenadecaracteresqueserepitedelalongitudespecificada.

Page 292: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

String(number,character)

LasintaxisdelafunciónStringtieneestosargumentosconnombre:

Parte Descripciónnumber Requerido;untipoLong.Longituddelacadenadevuelta.Si

númerocontieneNull,sedevuelveNull.character Requerido;untipoVariant.Códigodecarácterqueespecificael

carácterolaexpresióndecadenacuyoprimercarácterseutilizaparaconstruirlacadenadevuelta.SicharactercontieneNull,sedevuelveNull.

Comentarios

Siseespecificaparacharacterunnúmeromayorque255,Stringconvierteelnúmeroenuncódigodecarácterválidoutilizandolafórmula:

characterMod256

Page 293: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Switch(Función)

EvalúaunalistadeexpresionesydevuelveunvalorVariantounaexpresiónasociadaalaprimerainstruccióndelalistaquedacomoresultadoTrue.

Page 294: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Switch(expresión-1,valor-1[,expresión-2,valor-2…[,expresión-n,valor-n]])

LasintaxisdelafunciónSwitchconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.ExpresióndeltipoVariantquesedeseaevaluar.valor Requerido.Valoroexpresiónquesedevuelvesila

expresióncorrespondientedacomoresultadoTrue.

Comentarios

LalistadeargumentosdelafunciónSwichtestáformadaporparesdeexpresionesyvalores.Lasexpresionesseevalúansegúnaparecenenlalista,deizquierdaaderechaysedevuelveelvalorasociadoalaprimeraexpresiónquealevaluarsedaTrue.Silaspartesnoestánemparejadascorrectamente,seproduciráunerrorentiempodeejecución.Porejemplo,siexpresión-1daTrue,Switchdevolverávalor-1.Siexpresión-1daFalse,peroexpresión-2daTrue,Switchdevolverávalor-2yasísucesivamente.

SwitchdevolveráunvalorNullsi:

NingunadelasexpresionesdaTrue.

LaprimeraexpresiónquedaTruetieneasociadounvalorNull.

Switchevalúatodaslasexpresiones,aunquesolamentedevuelveunadeellas.Porestarazón,deberávigilarquenoseproduzcanefectosnodeseados.Porejemplo,sienlaevaluacióndeunaexpresiónhayunadivisiónporcero,seproduciráunerror.

Page 295: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SYD(Función)

DevuelveuntipoDoublequeindicaladepreciacióndeunbienendígitosdesumadeañosduranteunperiodoespecificado.

Sintaxis

SYD(cost,salvage,life,period))

LafunciónSYDconstadelossiguientesargumentosconnombre:

Parte Descripción

Page 296: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cost Requerido.UntipoDoublequeindicaelcostoinicialdelbien.salvage Requerido.UntipoDoublequeindicaelvalordelbienaltérmino

desuvidaútil.life Requerido.UntipoDoublequeindicaladuracióndelavidaútil

delbien.period Requerido.UntipoDoublequeindicaelperiodoparaelquese

calculaladepreciacióndelbien.

Comentarios

Losargumentoslifeyperioddebenexpresarseenlasmismasunidades.Porejemplo,silifeseindicaenmeses,periodtambiéndebeespecificarseenmeses.Todoslosargumentosdebensernúmerospositivos.

Page 297: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Tab(Función)

SeutilizaconlainstrucciónPrint#oelmétodoPrintparadefinirlaposicióndelasalida.

Sintaxis

Tab[(n)]

Elargumentoopcionalneselnúmerodelacolumnaquesemueveantesdemostraroimprimirlapróximaexpresióndeunalista.Siseomite,Tabcolocael

Page 298: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

puntodeinserciónalprincipiodelasiguientezonadeimpresión.EstopermiteutilizarTabenlugardeunpuntoenlasconfiguracionesregionalesenlasqueseutilizaelpuntocomoseparadordecimal.

Comentarios

Silaposicióndeimpresiónactualesmayorquen,Tabvahastalacolumnandelasiguientelíneadelasalida.Sinesmenorque1,Tabcolocalaposicióndeimpresiónenlacolumna1.Sinesmayorqueelanchodelalíneadesalida,Tabcalculalasiguienteposicióndeimpresiónconlafórmula:

nModancho

Porejemplo,sianchoes80yespecificaTab(90),laimpresiónsiguientecomienzaenlacolumna10(elrestodelaoperación90/80).Sinesmenorquelaposicióndeimpresiónactual,laimpresióncomienzaenlalíneasiguiente,enlaposicióndeimpresióncalculada.Silaposicióndeimpresióncalculadaesmayorquelaposicióndeimpresiónactual,laimpresióncomienzaenlaposicióndeimpresióncalculadaenlamismalínea.

Laposicióndeimpresiónenelextremoizquierdodeunalíneadesalidaessiempre1.CuandoseutilizalainstrucciónPrint#paraimprimirenarchivos,laposicióndeimpresiónenelextremoderechoeselanchoactualdelarchivodesalida,quepuedeasignarconlainstrucciónWidth#.

NotaAsegúresedequelascolumnastabularesseansuficientementeanchasparadarcabidaaletrasanchas.

CuandoutilicelafunciónTabconelmétodoPrint,lasuperficiedeimpresiónsedividiráencolumnasuniformesdeanchofijo.Elanchodecadacolumnaeselpromediodelanchodetodosloscaracteresconeltamañoenpuntosdelafuenteelegida.Sinembargo,nohayningunacorrelaciónentreelnúmerodecaracteresimpresosyelnúmerodecolumnasdeanchofijoqueestoscaracteresocupan;porejemplo,laletraWmayúsculaocupamásdeunacolumnadeanchofijoylaletraiminúsculaocupamenos.

Page 299: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Tan(Función)

DevuelveuntipoDoublequeespecificalatangentedeunángulo.

Sintaxis

Tan(número)

ElargumentonúmeroesuntipoDoubleocualquierexpresiónnuméricaválidaqueexpresaunánguloenradianes.

Page 300: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LafunciónTantomaunánguloydevuelvelarazóndedosladosdeuntriángulorectángulo.Larazóneslalongituddelladoopuestoalángulo,divididaporlalongituddelladoadyacentealángulo.

Paraconvertirgradosenradianes,multipliquelosgradosporpi/180.Paraconvertirradianesengrados,multipliquelosradianespor180/pi.

Page 301: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Time(Función)

DevuelveunvalordetipoVariant(Date)indicandolahoraactualdelsistema.

Sintaxis

Time

Comentarios

UselainstrucciónTimeparaestablecerlahoradelsistema.

Page 302: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Timer(Función)

DevuelveuntipoSinglequerepresentaelnúmerodesegundostranscurridosdesdelamedianoche.

Sintaxis

Timer

Comentarios

EnMicrosoftWindowslafunciónTimerdevuelvepartesfraccionalesdeunsegundo.EnMacintosh,laresolucióndeltemporizadoresunsegundo.

Page 303: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TimeSerial(Función)

DevuelveuntipoVariant(Date)quecontienelahoraactualparaunahora,minutoysegundoespecíficos.

Sintaxis

TimeSerial(hora,minuto,segundo)

LasintaxisdelafunciónTimeSerialconstadelossiguientesargumentosconnombre:

Page 304: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónhora Requerido;Variant(Integer).Númeroentre0(12:00a.m.)y23

(11:00p.m.),inclusiveounaexpresiónnumérica.minuto Requerido;Variant(Integer).Cualquierexpresiónnumérica.segundo Requerido;Variant(Integer).Cualquierexpresiónnumérica.

Comentarios

Paraespecificarunahora,como11:59:59,elintervalodenúmerosparacadaargumentodeTimeSerialdeberíaestarenelintervalonormalmenteaceptadoparalaunidad;esdecir,0–23parahorasy0–59paraminutosysegundos.Sinembargo,puedeespecificarhorasrelativasparacadaargumento,usandocualquierexpresiónnuméricaquerepresentealgunashoras,minutososegundosantesodespuésdeciertahora.Elejemplosiguienteusaexpresionesenlugardenúmerosdehoraabsoluta.LafunciónTimeSerialdevuelveunahoraquees15(-15)minutosmenosqueseishorasantesdelmediodía(12-6),ó5:45:00a.m.

TimeSerial(12-6,-15,0)

Cuandoalgúnargumentosuperaelintervalonormalmenteaceptadoparaél,seincrementahastalasiguienteunidadmayor.Porejemplo,siespecifica75minutos,seevalúacomounahoray15minutos.Noobstante,siunsoloargumentoestáfueradelintervalo-32.768a32.767osilahoraespecificadaporlostresargumentos,directamenteomedianteexpresión,hacequelafechaquedefueradelintervaloaceptabledevalores,seproduceunerror.

Page 305: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TimeValue(Función)

DevuelveuntipoVariant(Date)quecontienelahora.

Sintaxis

TimeValue(hora)

Elargumentohoraesnormalmenteunaexpresióndecadenaquerepresentaunahoradesdelas0:00:00(12:00:00a.m.)alas23:59:59(11:59:59p.m.),inclusive.Sinembargo,horatambiénpuedesercualquierexpresiónquepuedarepresentar

Page 306: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

unahoraeneseintervalo.SihoracontieneNull,lafuncióndevolveráNull.

Comentarios

Puedeintroducirhorasválidasusandounrelojde12horasode24horas.Porejemplo,"2:24p.m."y"14:24"sonargumentosválidosdehora.

Sielargumentohoracontieneinformacióndefecha,TimeValuenodevuelveestainformación.Sinembargo,sihoraincluyeinformaciónnoválidadefecha,ocurriráunerror.

Page 307: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 308: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TypeName(Función)

Page 309: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Devuelveunacadena(String)queproporcionainformaciónacercadeunavariable.

Sintaxis

TypeName(nombrevariable)

Elargumentonombrevariablerequerido,esuntipodedatosVariantquecontienecualquiervariableexceptounavariabledeuntipodefinidoporelusuario.

Comentarios

LacadenadevueltaporlafunciónTypeNamepuedesercualquieradelassiguientes:

Cadenadevuelta Lavariablecontienetipodeobjeto UnobjetocuyotipoestipoobjetoByte UnvalorbyteInteger UnenteroLong UnenterolargoSingle UnnúmerodepuntoflotantedeprecisiónsimpleDouble UnnúmerodepuntoflotantedeprecisióndobleCurrency Unvalordemoneda

Page 310: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Decimal UnvalordecimalDate UnvalorfechaString UnacadenaBoolean UnvalorbooleanoError UnvalordeerrorEmpty NoinicializadoNull DatosnoválidosObject UnobjetoDesconocido UnobjetocuyotipoesdesconocidoNothing Unavariabledequenohacereferenciaaun

objeto

Sinombrevariableesunamatriz,lacadenadevueltapuedesercualquieradelasposibles(oVariant)conunparéntesisvacíoañadido.Porejemplo,sinombrevariableesunamatrizdenúmerosenteros,lafunciónTypeNamedevuelve"Integer()".

Page 311: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

UBound(Función)

DevuelveuntipoLongquecontieneelmayorsubíndicedisponibleparaladimensiónindicadadeunamatriz.

Sintaxis

UBound(nombre_matriz[,dimensión])

LasintaxisdelafunciónUBoundconstadelassiguientespartes:

Parte Descripción

Page 312: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

nombre_matriz

Requerido.Nombredelavariabledematriz;siguelasconvencionesestándardenombresdevariable.

dimensión Opcional;Variant(Long).Númeroenteroqueindicaladimensióncuyolímitesuperiorsedevolverá.Use1paralaprimeradimensión,2paralasegundayasísucesivamente.Sidimensiónseomite,sesuponequees1.

Comentarios

LafunciónUBoundseutilizajuntoconlafunciónLBoundparadeterminareltamañodeunamatriz.UselafunciónLBoundparaencontrarellímiteinferiordeladimensióndeunamatriz.

UBounddevuelvelosvaloresenumeradosenlatablasiguienteparaunamatrizconlasdimensionessiguientes:

DimA(1To100,0To3,-3To4)

Instrucción ValordevueltoUBound(A,1) 100UBound(A,2) 3UBound(A,3) 4

Page 313: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

UCase(Función)

DevuelveuntipoVariant(String)quecontieneunacadenaespecificadaquesehaconvertidoamayúsculas.

Sintaxis

UCase(cadena)

Elargumentocadenanecesarioescualquierexpresióndecadenaválida.SicadenacontieneNull,sedevuelveNull.

Page 314: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Sóloseconviertenamayúsculaslasletrasminúsculas.Lasletrasmayúsculasoloscaracteresquenosonletrasnosufrencambios.

Page 315: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Val(Función)

Devuelvelosnúmeroscontenidosenunacadenacomounvalornuméricodeltipoadecuado.

Sintaxis

Val(cadena)

Elargumentoobligatoriocadenaescualquierexpresióndecadenaválida.

Comentarios

LafunciónValdejadeleerlacadenaenelprimercarácterquenopuedereconocercomopartedeunnúmero.Lossímbolosycaracteresqueseconsideranamenudopartedevaloresnuméricos,comosignosdemonedaycomas,nosereconocen.Sinembargo,lafunciónreconocelosprefijosdebase&O(paraoctal)y&H(parahexadecimal).Losespaciosenblanco,lostabuladores

Page 316: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ylosavancesdelíneaseeliminandelargumento.

Losiguientedevuelveelvalor1615198:

Val("1615198CalleN.E.")

Enelcódigoquesemuestraacontinuación,Valdevuelveelvalordecimal-1correspondientealvalorhexadecimalentreparéntesis:

Val("&HFFFF")

NotaLafunciónValsóloreconoceelpunto(.)comoseparadordecimalválido.Cuandoseutilizanseparadoresdecimalesdiferentes,comoenaplicacionesinternacionales,debeutilizarCDblparaconvertirunacadenaaunnúmero.

Page 317: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

VarType(Función)

Page 318: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Devuelveunentero(Integer)queindicaelsubtipodeunavariable.

Sintaxis

VarType(nombrevariable)

Elargumentonombrevariablerequerido,esuntipoVariantquecontienecualquiervariableexceptounavariabledeuntipodefinidoporelusuario.

Valoresdevueltos

Constante Valor DescripciónvbEmpty 0 Empty(noinicializado)vbNull 1 Null(datosnoválidos)vbInteger 2 EnterovbLong 3 EnterolargovbSingle 4 Unnúmerodecomaflotantedeprecisión

simplevbDouble 5 Unnúmerodecomaflotantedeprecisión

doblevbCurrency 6 ValordemonedavbDate 7 ValordefechavbString 8 Cadena

Page 319: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbObject 9 ObjetovbError 10 ValordeerrorvbBoolean 11 ValorbooleanovbVariant 12 Variant(utilizadasolamenteconmatricesde

variantes)vbDataObject 13 UnobjetodeaccesoadatosvbDecimal 14 ValordecimalvbByte 17 ValordebytevbUserDefinedType 36 Variantesquecontienentiposdefinidosporel

usuariovbArray 8192 Matriz

NotaEstasconstantesestánespecificadasporVisualBasicparaaplicaciones.Losnombressepuedeutilizarencualquierposiciónensucódigoenlugardelosvaloresactuales.

Comentarios

LafunciónVarTypenuncadevuelveporsímismaelvalorparavbArray.Siempreseagregaaalgúnotrovalorparaindicarunamatrizdeuntipoparticular.LaconstantevbVariantsolamentesedevuelvejuntoconvbArrayparaindicarqueelargumentodelafunciónVarTypeesunamatrizdeltipoVariant.Porejemplo,elvalordevueltoporunamatrizdeenterossecalculacomovbInteger+vbArray,o8194.Siunobjetotieneunapropiedadpredeterminada,VarType(objeto)devuelveeltipodelapropiedadpredeterminadadelobjeto.

Page 320: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Weekday(Función)

DevuelveunvalordetipoVariant(Integer)quecontieneunnúmeroenteroquerepresentaeldíadelasemana.

Page 321: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Weekday(fecha,[primerdíasemana])

LasintaxisdelafunciónWeekdayconstadelossiguientesargumentosconnombre:

Parte Descripciónfecha Requerido.Variant,expresiónnumérica,expresiónde

cadenaocualquiercombinaciónquepuederepresentarunafecha.SifechacontieneNull,lafuncióndevolveráNull.

primerdíasemana Opcional.Unaconstantequeespecificaelprimerdíadelasemana.Sinoseespecifica,seasumeelvalorvbSunday.

Valores

Elargumentoprimerdíasemanatieneestosvalores:

Constante Valor DescripciónvbUseSystem 0 Utiliceconfiguracióndela

APIdeNLS.vbSunday 1 Domingo

(predeterminado)vbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Valoresdevueltos

LafunciónWeekdaypuededevolvercualquieradeestosvalores:

Page 322: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constante Valor DescripciónvbSunday 1 DomingovbMonday 2 LunesvbTuesday 3 MartesvbWednesday 4 MiércolesvbThursday 5 JuevesvbFriday 6 ViernesvbSaturday 7 Sábado

Comentarios

SilaconfiguracióndelapropiedadCalendaresgregoriano,elenterodevueltorepresentaeldíadelasemanagregorianoparaelargumentofecha.SielcalendarioesHijri,elenterodevueltorepresentaeldíaHijridelasemanaparaelargumentofecha.ParafechasHijri,elnúmerodeargumentoescualquierexpresiónnuméricaquepuedarepresentarunafechay/uhoradesde1/1/100(gregoriano2deagostode1718)a4/3/9666(gregoriano31dediciembredel9999).

Page 323: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

WeekdayName(Función)

Descripción

Devuelveunacadenaqueindicaeldíadelasemanaespecificado.

Sintaxis

WeekdayName(díaDeLaSemana,abreviar,primerDíaDeLaSemana)

LasintaxisdelafunciónWeekdayNameconstadelassiguientespartes:

Parte DescripcióndíaDeLaSemana Requerido.Ladesignaciónnuméricaparaeldíadela

semana.ElvalornuméricodecadadíadependedelaconfiguracióndelvalorprimerDíaDeLaSemana.

abreviar Opcional.UnvalorBooleanqueindicasiseabreviaelnombredeldíadelasemana.Siseomite,elvalorpredeterminadoesFalse,quesignificaqueelnombredeldíadelasemananoseabrevia.

primerDíaDeLaSemana Opcional.Unvalornuméricoqueindicaelprimerdíadelasemana.VealasecciónValoresparaconsultarlosvaloresposibles.

Page 324: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Valores

ElargumentoprimerDíaDeLaSemanapuedetenerlosvaloressiguientes:

Constante Valor DescripciónvbUseSystem 0 UtilizarlaconfiguracióndelaAPINational

LanguageSupport(NLS).vbSunday 1 Domingo(predeterminado).vbMonday 2 Lunes.vbTuesday 3 Martes.vbWednesday 4 Miércoles.vbThursday 5 Jueves.vbFriday 6 Viernes.vbSaturday 7 Sábado.

Page 325: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Year(Función)

DevuelveunvalordetipoVariant(Integer)quecontieneunnúmeroenteroquerepresentaelaño.

Page 326: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Year(fecha)

ElargumentofechaescualquiervalordetipoVariant,expresiónnumérica,expresióndecadenaocualquiercombinaciónquepuederepresentarunafecha.SifechacontieneNull,lafuncióndevolveráNull.

NotaSilaconfiguracióndelapropiedadCalendaresgregoriano,elenterodevueltorepresentaeldíadelasemanagregorianoparaelargumentofecha.SielcalendarioesHijri,elenterodevueltorepresentaeldíaHijridelasemanaparaelargumentofecha.ParafechasHijri,elnúmerodeargumentoescualquierexpresiónnuméricaquepuedarepresentarunafechay/uhoradesde1/1/100(gregoriano2deagostode1718)a4/3/9666(gregoriano31dediciembredel9999).

Page 327: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Funcionesdeconversión

Asc(Función)

CBool(Función)

CByte(Función)

CCur(Función)

CDate(Función)

CDec(Función)

CDbl(Función)

Chr(Función)

CInt(Función)

CLng(Función)

CSng(Función)

CStr(Función)

CVar(Función)

CVErr(Función)

Format(Función)

Hex(Función)

Page 328: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Oct(Función)

Str(Función)

Val(Función)

Page 329: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Funcionesmatemáticas

Abs(Función)

Atn(Función)

Cos(Función)

Exp(Función)

Fix(Función)

Int(Función)

Log(Función)

Rnd(Función)

Sgn(Función)

Sin(Función)

Sqr(Función)

Tan(Función)

Funcionesmatemáticasderivadas

Page 330: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Funcionesmatemáticasderivadas

Lasiguienteesunalistadefuncionesmatemáticasnointrínsecasquepuedenderivarsedefuncionesmatemáticasintrínsecas:

Función DerivadasequivalentesSecante Sec(X)=1/Cos(X)Cosecante Cosec(X)=1/Sin(X)Cotangente Cotan(X)=1/Tan(X)Senoinverso Arcsin(X)=Atn(X/Sqr(-X*X+1))Cosenoinverso Arccos(X)=Atn(-X/Sqr(-X*X+1))+2*Atn(1)Secanteinversa Arcsec(X)=Atn(X/Sqr(X*X–1))+Sgn((X)–1)

*(2*Atn(1))Cosecanteinversa Arccosec(X)=Atn(X/Sqr(X*X–1))+(Sgn(X)–

1)*(2*Atn(1))Cotangenteinversa Arccotan(X)=Atn(X)+2*Atn(1)Senohiperbólico HSin(X)=(Exp(X)–Exp(–X))/2Cosenohiperbólico HCos(X)=(Exp(X)+Exp(–X))/2Tangentehiperbólica HTan(X)=(Exp(X)–Exp(–X))/(Exp(X)+Exp(–

X))Secantehiperbólica HSec(X)=2/(Exp(X)+Exp(–X))Cosecantehiperbólica HCosec(X)=2/(Exp(X)–Exp(–X))Cotangentehiperbólica HCotan(X)=(Exp(X)+Exp(–X))/(Exp(X)–

Exp(–X))Senohiperbólicoinverso HArcsin(X)=Log(X+Sqr(X*X+1))Cosenohiperbólicoinverso

HArccos(X)=Log(X+Sqr(X*X–1))

Page 331: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Tangentehiperbólicainversa

HArctan(X)=Log((1+X)/(1–X))/2

Secantehiperbólicainversa

HArcsec(X)=Log((Sqr(–X*X+1)+1)/X)

Cosecantehiperbólicainversa

HArccosec(X)=Log((Sgn(X)*Sqr(X*X+1)+1)/X)

Cotangentehiperbólicainversa

HArccotan(X)=Log((X+1)/(X–1))/2

LogaritmoenbaseN LogN(X)=Log(X)/Log(N)

Page 332: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Operadoresaritméticos

^(operador)

*(operador)

/(operador)

\(operador)

Mod(operador)

+(operador)

-(operador)

Page 333: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Operadoresdeconcatenación

&(operador)

+(operador)

Page 334: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Operadoreslógicos

And(operador)

Eqv(operador)

Imp(operador)

Not(operador)

Or(operador)

Xor(operador)

Page 335: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Prioridaddelosoperadores

Cuandohayvariasoperacionesenunamismaexpresión,cadapartedelamismaseevalúayseresuelveenunordenpredeterminadosegúnlaprioridaddelosoperadores.

Cuandohayexpresionesquecontienenoperadoresdemásdeunacategoría,seresuelvenanteslasquetienenoperadoresaritméticos,acontinuaciónlasquetienenoperadoresdecomparaciónyporúltimolasdeoperadoreslógicos.Losoperadoresdecomparacióntienentodoslamismaprioridad;esdecir,seevalúandeizquierdaaderecha,enelordenenqueaparecen.Losoperadoreslógicosyaritméticosseevalúanenelsiguienteordendeprioridad:

Aritméticos Comparación LógicosExponenciación(^) Igualdad(=) NotNegación(–) Desigualdad(<>) AndMultiplicacióny Menorque(<) Or

Page 336: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

división(*,/)Divisióndeenteros(\)

Mayorque(>) Xor

Móduloaritmético(Mod)

Menoroigualque(<=)

Eqv

Adiciónysubstracción(+,–)

Mayoroigualque(>=)

Imp

Concatenacióndecadenas(&)

LikeIs

Cuandohaymultiplicaciónydivisiónenlamismaexpresión,cadaoperaciónseevalúaamedidaqueaparece,deizquierdaaderecha.Delmismomodo,cuandosepresentanadicionesysubstraccionesenunamismaexpresión,cadaoperaciónseevalúatalcomoaparecendeizquierdaaderecha.Esposibleusarparéntesisparasaltarelordendepreferenciayforzarquealgunaspartesdeunaexpresiónseevalúenantesqueotras.Lasoperacionesentreparéntesisserealizanantesquelasdefuera.Sinembargo,dentrodelosparéntesis,laprecedenciadelosoperadoressemantiene.

Eloperadordeconcatenacióndecadenas(&)noesrealmenteunoperadoraritmético,peroenordendeprioridadseencuentraacontinuacióndetodoslosoperadoresaritméticosyantesquetodoslosoperadoresdecomparación.

EloperadorLike,apesardetenerlamismaprioridadquelosoperadoresdecomparación,esenrealidadunoperadordecoincidenciadepatrones.

EloperadorIsesunoperadordecomparacióndereferenciadeobjetos.Nocomparaobjetosnivaloresdeobjetos;sólodeterminasidosreferenciasdeobjetoserefierenalmismoobjeto.

Page 337: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Resumendelosoperadores

Operadores DescripciónOperadoresaritméticos

Operadoresutilizadosparaejecutarcálculosmatemáticos.

Operadoresdecomparación

Operadoresutilizadosparaefectuarcomparaciones.

Operadoresdeconcatenación

Operadoresutilizadosparacombinarcadenasdecaracteres.

Operadoreslógicos

Operadoresusadospararealizaroperacioneslógicas.

Page 338: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Resumendetiposdedatos

Latablasiguientemuestralostiposdedatoscompatibles,incluyendoeltamañodealmacenamientoyelintervalo.

TipodedatosTamañodealmacenamiento Intervalo

Byte 1byte 0a255Boolean 2bytes TrueoFalseInteger 2bytes -32,768a32,767Long(enterolargo)

4bytes -2,147,483,648a2,147,483,647

Single(comaflotante/precisiónsimple)

4bytes -3,402823E38a–1,401298E-45paravaloresnegativos;1,401298E-45a3,402823E38paravalorespositivos

Double(comaflotante/precisióndoble)

8bytes -1.79769313486231E308a-4,94065645841247E-324paravaloresnegativos;4,94065645841247E-324a1,79769313486232E308paravalorespositivos

Currency 8bytes -922.337.203.685.477,5808a

Page 339: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

(enteroaescala)

922.337.203.685.477,5807

Decimal 14bytes +/-79.228.162.514.264.337.593.543.950.335sinpuntodecimal;+/-7,9228162514264337593543950335con28posicionesaladerechadelsignodecimal;elnúmeromáspequeñodistintodeceroes+/-0,0000000000000000000000000001

Date 8bytes 1deenerode100a31dediciembrede9999Object 4bytes CualquierreferenciaatipoObjectString(longitudvariable)

10bytes+longituddelacadena

Desde0a2.000millones

String(longitudfija)

Longituddelacadena

Desde1a65.400aproximadamente

Variant(connúmeros)

16bytes CualquiervalornuméricohastaelintervalodeuntipoDouble

Variant(concaracteres)

22bytes+longituddelacadena

ElmismointervaloqueparauntipoStringdelongitudvariable

Definidoporelusuario(utilizandoType)

Númerorequeridoporloselementos

Elintervalodecadaelementoeselmismoqueelintervalodesutipodedatos.

NotaLasmatricesdecualquiertipodedatosrequieren20bytesdememoriamáscuatrobytesparacadadimensióndematriz,máselnúmerodebytesqueocupanlospropiosdatos.Puedecalcularlamemoriaqueocupanlosdatosmultiplicandoelnúmerodeelementosdedatosporeltamañodecadaelemento.Porejemplo,losdatosdeunamatrizunidimensionalqueconstendecuatroelementosdedatostipoIntegerdedosbytescadauno,ocupanochobytes.Losochobytesquerequierenlosdatosmáslos24bytesnecesariosparalamatrizsumanunrequisitototaldememoriade32bytesparadichamatriz.

Page 340: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

UntipoVariantquecontieneunamatizrequiere12bytesmásquelamatrizporsísola.

NoteUsetheStrConvfunctiontoconvertonetypeofstringdatatoanother.

Page 341: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Conversión,resumendepalabrasclave

Acción PalabrasclaveValorANSIacadena. ChrCadenaaminúsculasoamayúsculas.

Format,LCase,UCase

Fechaanúmerodeserie.

DateSerial,DateValue

Númerodecimalaotrabase.

Hex,Oct

Númeroacadena. Format,StrUntipodedatoaotro. CBool,CByte,CCur,CDate,CDbl,CDec,CInt,CLng,

CSng,CStr,CVar,CVErr,Fix,IntFechaadía,mes,díadelasemanaoaño.

Day,Month,Weekday,Year

Horaahora,minutoosegundo.

Hour,Minute,Second

CadenaavalorASCII. AscCadenaanúmero. ValHoraanúmerodeserie.

TimeSerial,TimeValue

Page 342: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Directivasdelcompilador,resumendepalabrasclave

Acción PalabrasclaveDefinirunaconstantedelcompilador.

#Const

Compilarbloquesseleccionadosdecódigo.

#If...Then...#Else

Page 343: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Directoriosyarchivos,resumendepalabrasclave

Acción PalabrasclaveCambiareldirectorioolacarpeta.

ChDir

Cambiarlaunidad. ChDriveCopiarunarchivo. FileCopyCrearundirectorioounacarpeta.

MkDir

Quitarundirectorioounacarpeta.

RmDir

Cambiarelnombredeunarchivo,undirectorioounacarpeta.

Name

Devolverlarutadeaccesoactual.

CurDir

Devolverlafechaylahoradelarchivo.

FileDateTime

Devolverlosatributosdeunarchivo,directoriooetiqueta.

GetAttr

Devolvereltamañodelarchivo.

FileLen

Devolverelnombredelarchivoolaetiquetadevolumen.

Dir

Establecerla SetAttr

Page 344: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

informacióndeatributodeunarchivo.

Page 345: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Diversas,resumendepalabrasclave

Acción PalabrasclaveProcesareventospendientes. DoEventsEjecutarotrosprogramas. AppActivate,ShellEnviarpulsacionesdeteclasaunaaplicación.

SendKeys

Hacersonarunpitidoenelequipo.

Beep

Sistema. EnvironProporcionarunacadenaenlalíneadecomandos.

Command

Automatización. CreateObject,GetObjectColor. QBColor,RGB

Page 346: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Entradaysalida,resumendepalabrasclave

Acción PalabrasclaveTeneraccesoocrearunarchivo.

Open

Cerrararchivos. Close,ResetControlarlaaparienciadelresultado.

Format,Print,Print#,Spc,Tab,Width#

Copiarunarchivo. FileCopyObtenerinformacióndeunarchivo.

EOF,FileAttr,FileDateTime,FileLen,FreeFile,GetAttr,Loc,LOF,Seek

Administrararchivos. Dir,Kill,Lock,Unlock,NameLeerunarchivo. Get,Input,Input#,LineInput#Devolvereltamañodeunarchivo.

FileLen

Estableceruobtenerlosatributosdeunarchivo.

FileAttr,GetAttr,SetAttr

Establecerlaposicióndelecturayescrituraenunarchivo.

Seek

Escribirenunarchivo. Print#,Put,Write#

Page 347: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Errores,resumendepalabrasclave

Acción PalabrasclaveGenerarerroresentiempodeejecución.

Clear,Error,Raise

Obtenermensajesdeerror.

Error

Proporcionarinformacióndelerror.

Err

DevolveruntipoVariantdeError.

CVErr

Interceptarerroresentiempodeejecución.

OnError,Resume

Comprobareltipo. IsError

Page 348: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Fechasyhoras,resumendepalabrasclave

Acción PalabrasclaveObtenerlafechaolahoraactuales.

Date,Now,Time

Realizarcálculosdefechas.

DateAdd,DateDiff,DatePart

Devolverunafecha. DateSerial,DateValueDevolverunahora. TimeSerial,TimeValueEstablecerlafechaolahora.

Date,Time

Medireltiempodeunproceso.

Timer

Page 349: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Financieras,resumendepalabrasclave

Acción PalabrasclaveCalcularladepreciación.

DDB,SLN,SYD

Calcularelvalorfuturo.

FV

Calcularlatasadeinterés.

Rate

Calcularlatasainternaderetorno.

IRR,MIRR

Calcularelnúmerodepagos.

NPer

Calcularlospagos. IPmt,Pmt,PPmtCalcularelvalorpresente.

NPV,PV

Page 350: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Flujodecontrol,resumendepalabrasclave

Acción PalabrasclaveBifurcar. GoSub...Return,GoTo,OnError,On...GoSub,

On...GoToSalirohacerunapausaenlaejecucióndeunprograma.

DoEvents,End,Exit,Stop

Realizarbucles. Do...Loop,For...Next,ForEach...Next,While...Wend,With

Tomardecisiones. Choose,If...Then...Else,SelectCase,SwitchUtilizarprocedimientos.

Call,Function,PropertyGet,PropertyLet,PropertySet,Sub

Page 351: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Manipulacióndecadenas,resumendepalabrasclave

Acción PalabrasclaveComparardoscadenas.

StrComp

Convertircadenas. StrConvConvertiraminúsculasomayúsculas.

Format,LCase,UCase

Crearunacadenadecaracteresrepetidos.

Space,String

Averiguareltamañodeunacadena.

Len

Darformatoaunacadena.

Format

Justificarunacadena. LSet,RSetManipularcadenas. InStr,Left,LTrim,Mid,Right,RTrim,TrimEstablecerlasreglasdecomparacióndecadenas.

OptionCompare

TrabajarconvaloresASCIIyANSI.

Asc,Chr

Page 352: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Matemáticas,resumendepalabrasclave

Acción PalabrasclaveDerivarfuncionestrigonométricas.

Atn,Cos,Sin,Tan

Realizarcálculosgenerales.

Exp,Log,Sqr

Generarnúmerosaleatorios.

Randomize,Rnd

Obtenerelvalorabsoluto.

Abs

Obtenerelsignodeunaexpresión.

Sgn

Realizarconversionesnuméricas.

Fix,Int

Page 353: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Matrices,resumendepalabrasclave

Acción PalabrasclaveComprobarunamatriz.

IsArray

Crearunamatriz. ArrayCambiarellímiteinferiorpredeterminado.

OptionBase

Declarareinicializarunamatriz.

Dim,Private,Public,ReDim,Static

Encontrarloslímitesdeunamatriz.

LBound,UBound

Reinicializarunamatriz.

Erase,ReDim

Page 354: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ObjetoCollection,resumendepalabrasclave

Acción PalabrasclaveCrearunobjetoCollection.

Collection

Agregarunobjetoaunacolección.

Add

Quitarunobjetodeunacolección.

Remove

Hacerreferenciaaunobjetodeunacolección.

Item

Page 355: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Operadores,resumendepalabrasclave

Acción PalabrasclaveRealizaroperacionesaritméticas.

^,–,*,/,\,Mod,+,&,=

Realizarcomparaciones.

=,<>,<,>,<=,>=,Like,Is

Realizaroperacioneslógicas.

Not,And,Or,Xor,Eqv,Imp

Page 356: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Palabrasclaveportarea

Categoría DescripciónMatrices Crear,definiryutilizarmatrices.Directivasdelcompilador

Controlarelcomportamientodelcompilador.

Flujodecontrol Realizarbuclesycontrolarelflujodelprocedimiento.Conversión Convertirnúmerosytiposdedatos.Tiposdedatos TiposdedatosysubtiposVariant.Fechasyhoras Convertiryutilizarexpresionesdefechayhora.Directoriosyarchivos Controlarelsistemadearchivosyprocesararchivos.Errores Interceptarydevolvervaloresdeerror.Financieras Realizarcálculosfinancieros.Entradaysalida Recibirunaentradaymostraroimprimirelresultado.Matemáticas Realizarcálculostrigonométricosuotroscálculos

matemáticos.Diversas Iniciarotrasaplicacionesyprocesareventos.Operadores Compararexpresionesyotrasoperaciones.Manipulacióndecadenas

ManipularcadenasydatosdetipoString.

Variablesyconstantes Declararydefinirvariablesyconstantes.

Page 357: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Registro,resumendepalabrasclave

Acción PalabrasclaveEliminarconfiguracionesdelprograma.

DeleteSetting

Leerconfiguracionesdelprograma.

GetSetting,GetAllSettings

Guardarconfiguracionesdelprograma.

SaveSetting

Page 358: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Tiposdedatos,resumendepalabrasclave

Acción PalabrasclaveConvertirentretiposdedatos.

CBool,CByte,CCur,CDate,CDbl,CDec,CInt,CLng,CSng,CStr,CVar,CVErr,Fix,Int

Establecertiposdedatosintrínsecos.

Boolean,Byte,Currency,Date,Double,Integer,Long,Object,Single,String,Variant(predeterminado)

Comprobarlostiposdedatos.

IsArray,IsDate,IsEmpty,IsError,IsMissing,IsNull,IsNumeric,IsObject

Page 359: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Variablesyconstantes,resumendepalabrasclave

Acción PalabrasclaveAsignarunvalor. LetDeclararvariablesoconstantes.

Const,Dim,Private,Public,New,Static

Declararunmódulocomoprivado.

OptionPrivateModule

ObtenerinformaciónsobreuntipoVariant.

IsArray,IsDate,IsEmpty,IsError,IsMissing,IsNull,IsNumeric,IsObject,TypeName,VarType

Hacerreferenciaalobjetoactual.

Me

Solicitardeclaracionesexplícitasdevariables.

OptionExplicit

Estableceruntipodedatospredeterminado.

Deftipo

Page 360: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AppActivate(Instrucción)

Activaunaventanadeaplicación.

Sintaxis

AppActivatetitle[,wait]

LasintaxisdelainstrucciónAppActivateconstadeestosargumentosconnombre:

Parte Descripción

Page 361: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

title Requerido.Expresióndecadenaqueespecificaeltítulodelabarradetítulodelaventanadeaplicaciónquedeseaactivar.Además,esposibleutilizarelIddetareadevueltoporlafunciónShellenlugardelargumentotitleparaactivarunaaplicación.

wait Opcional.ValorBooleanqueespecificasilaaplicaciónquehacelallamadatieneelenfoqueantesdeactivarotra.SiespecificaFalse(predeterminado),seactivainmediatamentelaaplicaciónespecificada,aunquelaaplicaciónquehacelallamadanotengaelenfoque.SiseespecificaTrue,laaplicaciónquehacelallamadaesperahastaquetengaelenfoqueyluegoactivalaaplicaciónespecificada.

Comentarios

LainstrucciónAppActivatecambiaelenfoquealaaplicaciónoventanaespecificada,peronolamaximizaominimiza.Elenfoquesedesplazadelaventanadeaplicaciónactivadacuandoelusuarioejecutaalgunaacciónquecambiaelenfoqueoquecierralaventana.SeutilizalafunciónShellparainiciarunaaplicaciónyestablecerelestilodelaventana.

Paradeterminarquéaplicaciónsevaaactivar,secomparatitleconlacadenadetítulodecadaaplicaciónquehayenejecución.Sinoseencuentraunacorrespondenciaexacta,seactivalaaplicacióncuyacadenatítulocomienceportitle.Sihaymásdeunainstanciadelaaplicacióncuyonombreestitle,seactivacualquieradeellas,deformaarbitraria.

Page 362: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Beep(Instrucción)

Emiteunsonidoporelaltavozdelequipo.

Sintaxis

Beep

Comentarios

Lafrecuenciayduracióndelsonidoqueseemitedependedelhardwareyelsoftwaredelsistema,quepuedevariardeunequipoaotro.

Page 363: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Call(Instrucción)

Page 364: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TransfiereelcontrolaunprocedimientoSub,aunprocedimientoFunctionoaunprocedimientobibliotecadevínculosdinámicos(DLL).

Sintaxis

[Call]nombre[listaargumentos]

LasintaxisdelainstrucciónCallconstadelassiguientespartes:

Parte DescripciónCall Opcional;palabraclave.Siseespecifica,listaargumentosse

debecolocarentreparéntesis.Porejemplo: CallMiProced(0)

nombre Requerido.Nombredelprocedimientoalquesetransfiereelcontrol.

listaargumentos Opcional.Listadevariables,matricesoexpresionesdelimitadasporcomas,quesevanatransferiralprocedimiento.LoscomponentesdelistaargumentospuedenincluirlaspalabrasclaveByValoByRefparadescribirlaformaenlaqueelprocedimientollamadotratalosargumentos.Sinembargo,ByValyByRefsepuedenutilizarconlainstrucciónCallsolamentecuandosellamaaunprocedimientodeDLL.EnMacintosh,ByValyByRefpuedenutilizarseconCallcuandoserealizaunallamadaaunrecursodelcódigodeMacintosh.

Comentarios

NoesnecesarioqueutilicelapalabraclaveCallcuandollamaaunprocedimiento.Sinembargo,siutilizalapalabraclaveCallparallamaraun

Page 365: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

procedimientoquerequierelosargumentos,listaargumentosdebeestarentreparéntesis.SiomitelapalabraclaveCall,debeomitirtambiénlosparéntesisdelistaargumentos.SiutilizacualquieradelasformasdelasintaxisCallparallamaracualquierfunciónintrínsecaoaunafuncióndefinidaporelusuario,sedescartaráelvalordevueltoporlafunción.

Paratransferirunamatrizcompletaaunprocedimiento,utiliceelnombredelamatrizseguidadeparéntesisvacíos.

Page 366: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ChDir(Instrucción)

Cambiaeldirectorioocarpetaactual.

Sintaxis

ChDirruta

Elargumentorequeridoruta,esunaexpresióndecadenaqueidentificaeldirectorioocarpetaquevaaserelnuevodirectorioocarpetapredeterminado.Larutapuedeincluirlaunidaddedisco.Sinoseespecificalaunidad,lainstrucciónChDircambiaeldirectorioocarpetapredeterminadodelaunidadactual.

Comentarios

LainstrucciónChDircambiaeldirectoriopredeterminado,peronolaunidadpredeterminada.Porejemplo,silaunidaddediscopredeterminadaesC,la

Page 367: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

siguienteinstruccióncambiaeldirectoriopredeterminadoenlaunidadD,peroCcontinúasiendolaunidadpredeterminada:

ChDir"D:\TMP"

EnelPowerMacintosh,launidadpredeterminadasiemprecambiaalaunidadespecificadaenruta.Lasespecificacionesdelarutacompletacomienzanconelnombredelvolumenylasrutasrelativascomienzancondospuntos(:).ChDirresuelvecualquieraliasespecificadoenlaruta:

ChDir"UnidadMac:Tmp"'EnMacintosh.

Observequecuandorealicecambiosenlosdirectoriosrelativos,seutilizansímbolosdiferentesenMicrosoftWindowsyenMacintosh:

ChDir".."'SubeundirectorioenMicrosoftWindows.

ChDir"::"'SubeundirectorioenMacintosh.

Page 368: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ChDrive(Instrucción)

Cambialaunidaddediscoactual.

Sintaxis

ChDriveunidad

Elargumentorequeridounidad,esunaexpresióndecadenaqueespecificaunaunidaddediscoexistente.Sisesuministraunargumentodelongitudcero(""),launidaddediscoactualnocambia.Sielargumentounidadesunacadenademúltiplescaracteres,lainstrucciónChDrivesolamenteutilizalaprimeraletra.

EnMacintosh,ChDrivecambialacarpetaactualalacarpetaraízdelaunidadespecificada.

Page 369: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Close(Instrucción)

Terminalasoperacionesdeentrada/salida(E/S)enunarchivoabiertoconlainstrucciónOpen.

Sintaxis

Close[listanúmerosarchivos]

Elargumentoopcionallistanúmerosarchivospuedeestarconstituidoporunoomásnúmerosdearchivousandolasiguientesintaxis,dondenúmeroarchivoescualquiernúmerodearchivoválido:

[[#]númeroarchivo][,[#]númeroarchivo]...

Comentarios

Siomitelistanúmerosarchivos,secierrantodoslosarchivosactivosabiertoscon

Page 370: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

lainstrucciónOpen.

CuandosecierranarchivosqueseabrieronparaOutputoAppend,elbúferfinaldesalidasegrabaenelbúferdelsistemaoperativoquecorrespondeaesearchivo.Todoelespaciodelbúferasociadoconelarchivocerradoselibera.

CuandoseejecutalainstrucciónClose,laasociacióndeunarchivoconsunúmerodearchivotermina.

Page 371: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 372: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 373: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Const(Instrucción)

Declaralasconstantesquesepuedenutilizarenlugardelosvaloresliterales.

Sintaxis

[Public|Private]Constnombre_constante[Astipo]=expresión

LasintaxisdelainstrucciónConstconstadelassiguientespartes:

Parte DescripciónPublic Opcional.Palabraclaveutilizadaenunniveldemódulopara

declararconstantesqueestándisponiblesparatodoslosprocedimientosencualquiermódulo.Nosepermiteenprocedimientos.

Private Opcional.Palabraclaveutilizadaaniveldemóduloparadeclararconstantesquesóloestándisponiblesdentrodelmódulodondesehaceladeclaración.Nosepermiteenprocedimientos.

Page 374: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

nombre_constante

Requerido.Nombredelaconstante;siguelasconvencionesdenombreestándardevariable.

tipo Opcional.Tipodedatosdelaconstante;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String,oVariant.UseunacláusulaAstipodistintaparacadaconstantequedeclare.

expresión Requerida.Literal,otraconstanteocualquiercombinación,incluyendooperadoresaritméticosológicosexceptoIs.

Comentarios

Lasconstantessonprivadasdemanerapredeterminada.Dentrodelosprocedimientos,lasconstantessonsiempreprivadas;esimposiblecambiarsuvisibilidad.Enlosmódulosestándar,lavisibilidadpredeterminadadelasconstantesaniveldemódulosepuedemodificarmediantelapalabraclavePublic.Sinembargo,enlosmódulosdeclase,lasconstantessólopuedenserprivadasyesimposiblecambiarsuvisibilidadmediantelapalabraclavePublic.

Paracombinarvariasdeclaracionesdeconstantesenlamismalínea,separecadaasignacióndeconstanteconunacoma.Silasdeclaracionesdeconstantessecombinandeestaforma,laspalabrasclavePublicoPrivate,siseusan,seaplicanatodasellas.

Noesposibleusarvariables,funcionesdefinidasporelusuarioofuncionesintrínsecasdeVisualBasic(comoChr)enexpresionesasignadasaconstantes.

NotaLasconstantesfacilitanladocumentacióndelprogramaylohacenfácildemodificar.Adiferenciadelasvariables,lasconstantesnosepuedencambiarinadvertidamentemientraselprogramaestáenejecución.

Sinodeclaraexplícitamenteeltipodeconstante(conAstipo),seleasignaráalaconstanteeltipodedatosmásapropiadoparalaexpresióndada.

LasconstantesquesedeclaranenlosprocedimientosSub,FunctionoPropertyseconsideranlocalesdeeseprocedimiento.Unaconstantequesedeclarafueradeunprocedimientosedefiniráparalatotalidaddelmóduloenelquesedeclara.

Page 375: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Puedeusarconstantesencualquierlugarenelqueusaríaunaexpresión.

Page 376: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Date(Instrucción)

Establecelafechaactualdelsistema.

Sintaxis

Date=fecha

ParaequiposquetrabajenconMicrosoftWindows95,elargumentofechadebeserunafechaentreel1deenerode1980yel31dediciembrede2099.ParaequiposquetrabajenconMicrosoftWindowsNT,elargumentofechadebeestarcomprendidoentreel1deenerode1980al31dediciembredel2079.ParaMacintosh,fechadebeserunafechadel1deenerode1904al5defebrerode2040.

Page 377: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 378: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 379: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declare(Instrucción)

Page 380: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seusaenelniveldemóduloparadeclararreferenciasaprocedimientosexternosqueestánenunabibliotecadevínculosdinámicos(DLL).

Sintaxis1

[Public|Private]DeclareSubnombreLib"nombre_biblioteca"[Alias"nombre_alias"][([lista_argumentos])]

Sintaxis2

[Public|Private]DeclareFunctionnombreLib"nombre_biblioteca"[Alias"nombre_alias"][([lista_argumentos])][Astipo]

LasintaxisdelainstrucciónDeclareconstadelassiguientespartes:

Parte DescripciónPublic Opcional.Seusaparadeclararprocedimientosqueestán

disponiblesparatodoslosdemásprocedimientosentodoslosmódulos.

Private Opcional.Seusaparadeclararprocedimientosquesóloestándisponiblesdentrodelmódulodondesehaceladeclaración.

Sub Opcional(debeaparecerSuboFunction).Indicaqueelprocedimientonodevuelveunvalor.

Function Opcional(debeaparecerSuboFunction).Indicaqueelprocedimientodevuelveunvalorquesepuedeutilizarenunaexpresión.

nombre Requerido.Cualquiernombreválidodeprocedimiento.ObservequelospuntosdeentradadelasDLLdistinguenmayúsculasdeminúsculas.

Lib Requerido.Indicaqueelprocedimientoqueestádeclarandose

Page 381: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

encuentraenunaDLLounrecursodecódigo.LacláusulaLibesobligatoriaparatodaslasdeclaraciones.

nombre_biblioteca

Requerido.NombredelarchivoDLLodelrecursodecódigoquecontieneelprocedimientodeclarado.

Alias Opcional.IndicaqueelprocedimientoalquesellamatieneotronombreenlaDLL.Estoesútilcuandoelnombredelprocedimientoexternoeselmismoqueeldeunapalabraclave.TambiénesposibleusarAliascuandounprocedimientodeDLLtieneelmismonombrequeunavariable,constanteocualquierotroprocedimientoconelmismoalcance.AliastambiénresultaútilsialgúncarácterdelnombredelprocedimientodelaDLLnoseadmitecomonombre.

nombre_alias

Opcional.NombredelprocedimientodelaDLLodelrecursodecódigo.Sielprimercarácternoesunsignodenúmero(#),nombre_aliaseselnombredelpuntodeentradadelprocedimientoenlaDLL.Si#eselprimercarácter,todosloscaracteresquelesiguendeberánindicarelnúmeroordinaldelpuntodeentradadelprocedimiento.

lista_argumentos

Opcional.Listadevariablesquerepresentanargumentosquesepasanalllamaralprocedimiento.

tipo Opcional.TipodedatosdelvalordevueltoporunprocedimientoFunction;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidoactualmente),Date,String(solamentedelongitudvariable),oVariant,untipodefinidoporelusuario,ountipodeobjeto.

Elargumentolista_argumentosposeelassiguientespartesysintaxis:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo]

Parte DescripciónOptional Opcional.Indicaqueunargumentonoserequiere.Siseusa,

todoslosargumentossubsiguientesdelista_argumentostambiéndebenseropcionalesydebendeclararsemediantelapalabraclaveOptional.NosepuedeutilizarOptionalparaningún

Page 382: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

argumentosiseutilizaParamArray.ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Indicaqueelargumentosepasaporreferencia.ByRefesel

modopredeterminadoenVisualBasic.ParamArray Opcional.Seusasólocomoelúltimoargumentode

lista_argumentosparaindicarqueelargumentofinalesunamatrizOptionaldeelementosVariant.LapalabraclaveParamArraylepermiteincluirunnúmeroarbitrariodeargumentos.NosepuedeusarconByVal,ByRefuOptional.

nombre_variable

Requerido.Nombredelavariablequerepresentaelargumentoquesepasaalprocedimiento;siguelasconvencionesestándardenombresdevariables.

() Requeridoparavariablesdematriz.Indicaquenombre_variableesunamatriz.

tipo Opcional.Eltipodedatosdelargumentoquesepasaalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidoactualmente),Date,String(sólolongitudvariable),Object,Variant,untipodefinidoporelusuarioountipodeobjeto.

Comentarios

ParalosprocedimientosFunctioneltipodedatosdelprocedimientodeterminaeltipodedatosquedevuelve.PuedeusarunacláusulaAsacontinuacióndelista_argumentosparaespecificareltipodevalordevueltoporlafunción.Dentrodelista_argumentospuedeutilizarunacláusulaAsparaespecificareltipodedatosdelosargumentosquesepasanalprocedimiento.Ademásdeespecificarcualquieradelostiposdedatosestándar,puedeespecificarAsAnyenlista_argumentosparainhibirlacomprobacióndeltipodedatosypermitirelpasodecualquiertipodedatosalprocedimiento.

LosparéntesisvacíosindicanqueelprocedimientoSuboFunctionnotieneningúnargumentoyqueVisualBasicdebecomprobarquenosepasaninguno.Enelejemplosiguiente,Primeronotomaningúnargumento.SiusaargumentosenunallamadaaPrimero,ocurriráunerror:

Page 383: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DeclareSubPrimeroLib"MiBiblioteca"()

Siseincluyeunalistadeargumentos,secomprobaráelnúmeroyeltipodeargumentoscadavezquesellamealprocedimiento.Enelejemplosiguiente,PrimerotomaunargumentoLong:

DeclareSubPrimeroLib"MiBiblioteca"(XAsLong)

NotaNopuedetenercadenasdelongitudfijaenlalistadeargumentosdeunainstrucciónDeclare;sólosepuedenpasarcadenasdelongitudvariablealosprocedimientos.Lascadenasdelongitudfijapuedenaparecercomoargumentosdeprocedimientos,peroseconviertenacadenasdelongitudvariableantesdepasarse.

NotaLaconstantevbNullStringseutilizaalllamaraprocedimientosexternos,dondeelprocedimientoexternorequiereunacadenacuyovalorescero,quenoeslomismoqueunacadenadelongitudcero("").

Page 384: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 385: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Deftipo(Instrucciones)

Page 386: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seusanenelniveldemóduloparaestablecereltipodedatospredeterminadoparavariables,argumentospasadoaprocedimientos,yelvalordevueltoporlosprocedimientosFunctionyPropertyGetcuyosnombrescomienzanconloscaracteresespecificados.

Sintaxis

DefBoolintervalo_letras[,intervalo_letras]...

DefByteintervalo_letras[,intervalo_letras]...

DefIntintervalo_letras[,intervalo_letras]...

DefLngintervalo_letras[,intervalo_letras]...

DefCurintervalo_letras[,intervalo_letras]...

DefSngintervalo_letras[,intervalo_letras]...

DefDblintervalo_letras[,intervalo_letras]...

DefDecintervalo_letras[,intervalo_letras]...

DefDateintervalo_letras[,intervalo_letras]...

Page 387: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DefStrintervalo_letras[,intervalo_letras]...

DefObjintervalo_letras[,intervalo_letras]...

DefVarintervalo_letras[,intervalo_letras]...

Elargumentorequeridointervalo_letrasposeelasintaxissiguiente:

letra1[-letra2]

Losargumentosletra1yletra2especificanelintervalodenombresparaelcualpuedeestableceruntipodedatospredeterminado.Cadaargumentorepresentalaprimeraletradelnombredelavariable,argumento,procedimientoFunctionoprocedimientoPropertyGetypuedesercualquierletradelabecedario.Enintervalo_letrasnosedistingueentremayúsculasyminúsculas.

Comentarios

Elnombredelainstruccióndeterminaeltipodedatos:

Instrucción TipodedatosDefBool BooleanDefByte ByteDefInt IntegerDefLng LongDefCur CurrencyDefSng SingleDefDbl DoubleDefDec Decimal(noseadmiteactualmente)DefDate DateDefStr StringDefObj ObjectDefVar Variant

Porejemplo,enelsiguientefragmentodeprograma,Mensajeesunavariabledecadena:

Page 388: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DefStrA-Q

...

Mensaje="Espaciodepilainsuficiente."

UnainstrucciónDeftiposóloafectaalmódulodondeseusa.Porejemplo,unainstrucciónDefIntenunmódulosóloafectaaltipodedatospredeterminadodelasvariables,losargumentospasadosaprocedimientosyeltipodevueltoparalosprocedimientosFunctionyPropertyGetdeclaradosenesemódulo;eltipodedatospredeterminadodevariables,argumentosytiposdevueltosenotrosmódulosnosevenafectados.SinosedeclaraexplícitamenteconunainstrucciónDeftipo,eltipodedatospredeterminadoparatodaslasvariables,todoslosargumentos,todoslosprocedimientosFunctionytodoslosprocedimientosPropertyGetesVariant.

Cuandoespecificaunintervalodeletras,generalmentedefineeltipodedatosparavariablesquecomienzanconlasletrasdelos128primeroscaracteresdeljuegodecaracteres.Sinembargo,cuandoespecificaelintervalodeletrasA–Z,estableceeltipodedatospredeterminadoparatodaslasvariables,incluyendocualquieraquecomienceconcaracteresinternacionalesprovenientesdelaparteextendidadeljuegodecaracteres(128–255).

TrasespecificarelintervaloA–ZnoesposibleseguirredefiniendocualquiersubintervalodevariablesmedianteinstruccionesDeftipo.Dehecho,unavezdefinidounintervalo,siincluyeunaletradefinidaanteriormenteenotrainstrucciónDeftipo,ocurriráunerror.Sinembargo,puedeespecificarexplícitamenteeltipodedatosdecualquiervariable,definidaono,medianteunainstrucciónDimconunacláusulaAstipo.Porejemplo,puedeusarelsiguientecódigoenelniveldemóduloparadefinirunavariablecomoDoubleinclusoaunqueeltipodedatospredeterminadoseaInteger:

DefIntA-Z

DimPorcentajeImpuestoAsDouble

LasinstruccionesDeftiponoafectanaelementosdetiposdefinidosporelusuarioyaqueestosdebendeclararseexplícitamente.

Page 389: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DeleteSetting(Instrucción)

EliminaunasecciónounaclavedeunaentradadelregistrodeWindows.O(enMacintosh)informaciónenelarchivodeinicializacióndelaaplicación.

Page 390: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

DeleteSettingappname,section[,key]

LasintaxisdelainstrucciónDeleteSettingtienelossiguientesargumentosconnombre:

Parte Descripciónappname Obligatorio.Expresióndecadenaquecontieneelnombredela

aplicaciónoproyectoalqueseaplicalasecciónolaclave.EnMacintosh,ésteeselnombredelarchivodeinicializaciónenlacarpetaPreferenciasenlacarpetadelSistema.

section Obligatorio.Expresióndetipocadenaquecontieneelnombredelaseccióndondeseencuentralaclavequesevaaeliminar.Sisóloseindicanappnameysection,seeliminarálasecciónespecificadajuntocontodaslasclavesrelacionadas.

key Opcional.Expresióndetipocadenaquecontieneelnombredelaclaveaeliminar.

Comentarios

Siseespecificantodoslosargumentos,seeliminarálaclaveindicada.Sinembargo,lainstrucciónDeleteSettingnohacenadasilasecciónolaclaveespecificadasnoexisten.

Page 391: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 392: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 393: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dim(Instrucción)

Declaravariablesylesasignaespaciodealmacenamiento.

Sintaxis

Page 394: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dim[WithEvents]nombre_variable[([subíndices])][As[New]tipo][,[WithEvents]nombre_variable[([subíndices])][As[New]tipo]]...

LasintaxisdelainstrucciónDimconstadelassiguientespartes:

Parte DescripciónWithEvents Opcional.Palabraclavequeespecificaquenombre_variablees

unavariabledeobjetoutilizadapararesponderaeventosdesencadenadosporunobjetoActiveX.WithEventssolamenteesválidoenmódulosdeclase.PuededeclarartantasvariablesindividualescomodeseemedianteWithEvents,peronopuedecrearmatricesconWithEvents.NopuedeutilizarNewconWithEvents.

nombre_variable

Requerido.Nombredelavariable;siguelasconvencionesestándardenombredevariable.

subíndices Opcional.Dimensionesdelavariabledematriz;sepuedendeclararhasta60dimensionesmúltiples.Elargumentosubíndicesutilizalasintaxissiguiente:

[inferiorTo]superior[,[inferiorTo]superior]...

Cuandonosedeclaraespecíficamenteeninferior,ellímiteinferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.EstelímiteinferiorescerosinohayningunainstrucciónOptionBase.

New Opcional.Palabraclavequehabilitalacreaciónimplícitadeunobjeto.SiutilizaNewcuandodeclaralavariabledeobjeto,secreaunanuevainstanciadelobjetocomoprimerareferencia,deformaquenotienequeutilizarlainstrucciónSetparaasignarlareferenciadelobjeto.LapalabraclaveNewnosepuedeutilizarparadeclararvariablesdecualquiertipodedatos,intrínseco,paradeclararinstanciasdeobjetosdependientesniconWithEvents.

tipo Opcional.Tipodedatosdelavariable;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(actualmentenoadmitida),Date,String(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,untipodefinidoporelusuario,ountipodeobjeto.UtiliceunacláusuladistintaAstipoparacadavariablequedefina.

Page 395: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LasvariablesdeclaradasconDimenelniveldemóduloestándisponiblesparatodoslosprocedimientosdisponiblessólodentrodeesemódulo.Enelniveldeprocedimiento,lasvariablessóloestándisponiblesdentrodeeseprocedimiento.

UtilicelainstrucciónDimenelniveldemóduloodeprocedimientoparadeclarareltipodedatosdeunavariable.Porejemplo,lasiguienteinstruccióndeclaraunavariablecomoInteger.

DimNúmeroDeEmpleadosAsInteger

TambiénpuedeutilizarunainstrucciónDimparadeclarareltipodeobjetodeunavariable.Lasiguientelíneadeclaraunavariableparaunanuevainstanciadeunahojadecálculo.

DimXAsNewWorksheet

SinoutilizalapalabraclaveNewaldeclararunavariabledeobjeto,lavariablequeserefierealobjetodebeasignarseaunobjetoexistentemediantelainstrucciónSetantesdesuuso.Hastaqueseleasigneunobjeto,lavariabledeobjetodeclaradatieneelvalorespecialNothing,elcualindicaquenoserefiereaningunainstanciaenparticulardeunobjeto.

TambiénpuedeutilizarlainstrucciónDimconparéntesisvacíosparadeclararmatricesdinámicas.Despuésdedeclararunamatrizdinámica,uselainstrucciónReDimdentrodeunprocedimientoparadefinirelnúmerodedimensionesyelementosdelamatriz.SiintentavolveradeclararunadimensiónparaunavariabledematrizcuyotamañosehaespecificadoexplícitamenteenunainstrucciónPrivate,PublicoDim,ocurriráunerror.

SinoespecificauntipodedatosountipodeobjetoynoexisteningunainstrucciónDeftipoenelmódulo,lavariablepredeterminadaseráVariant.

Cuandoseinicializanvariables,unavariablenuméricaseinicializacon0,unacadenadelongitudvariableseinicializaconunacadenadelongitud0("")yuna

Page 396: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cadenadelongitudfijasellenaconceros.LasvariablesVariantseinicializanconEmpty.Cadaelementodeunavariabledeuntipodefinidoporelusuarioseinicializacomosifueraunavariabledistinta.

NotaCuandoutilizalainstrucciónDimenunprocedimiento,generalmenteponelainstrucciónDimalprincipiodelmismo.

Page 397: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Do...Loop(Instrucción)

RepiteunbloquedeinstruccionescuandounacondiciónesTrueohastaqueunacondiciónseconviertaenTrue.

Sintaxis

Do[{While|Until}condición][instrucciones][ExitDo][instrucciones]

Page 398: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Loop

Obien,puedeutilizarestasintaxis:

Do[instrucciones][ExitDo][instrucciones]

Loop[{While|Until}condición]

LasintaxisdelainstrucciónDoLoopconstadelassiguientespartes:

Parte Descripcióncondición Opcional.Expresiónnuméricaoexpresióndecadenaquees

TrueoFalse.SilacondiciónesNull,condiciónseconsideraFalse.

Instrucciones UnaomásinstruccionesqueserepitenmientrasohastaquecondiciónseaTrue.

Comentarios

SepuedeutilizarcualquiernúmerodeinstruccionesExitDoubicadasencualquierlugardentrodeunaestructuradecontrolDo…Loop,paraproporcionarunasalidaalternativadeunDo…Loop.LainstrucciónExitDoseutilizafrecuentementeenlaevaluacióndealgunacondición,porejemplo,If…Then;enestecaso,lainstrucciónExitDotransfiereelcontrolalainstrucciónquesigueinmediatamentealainstrucciónLoop.

CuandoseutilizaconinstruccionesanidadasDo…Loop,lainstrucciónExitDotransfierecontrolalbuclequeestáanidadounnivelporencimadelbucledondeocurre.

Page 399: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

End(Instrucción)

Page 400: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Terminaunprocedimientoobloque.

Sintaxis

End

EndFunction

EndIf

EndProperty

EndSelect

EndSub

EndType

EndWith

LasintaxisdelainstrucciónEndtienelassiguientesvariantes:

Instrucción DescripciónEnd Finalizalaejecucióninmediatamente.Noesestrictamente

necesaria,perosepuedecolocarencualquierlugardeunprocedimientoparafinalizarlaejecucióndecódigo,cerrararchivosabiertosconlainstrucciónOpenyborrarvariables.

EndFunction RequeridoparaterminarunainstrucciónFunction.EndIf RequeridoparaterminarunainstruccióndebloqueIf…

Then…Else.

Page 401: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndProperty RequeridoparaterminarunprocedimientoaPropertyLet,PropertyGetoPropertySet.

EndSelect RequeridoparaterminarunainstrucciónSelectCase.EndSub RequeridoparaterminarunainstrucciónSub.EndType Requeridoparaterminarunadefinicióndeuntipodefinido

porelusuario(instrucciónType).EndWith RequeridoparaterminarunainstrucciónWith.

Comentarios

CuandoseejecutalainstrucciónEnd,serestablecentodaslasvariablesaniveldemóduloytodaslasvariableslocalesestáticasentodoslosmódulos.UtiliceStopsinecesitaconservarelvalordeestasvariables.Puedereanudarlaejecuciónyalmismotiempoconservarlosvaloresdeesasvariables.

NotaLainstrucciónEnddetienelaejecuciónbruscamente,sinllamaaloseventosUnload,QueryUnloadoTerminate,ocualquierotrocódigoVisualBasic.ElcódigoquehacolocadoenloseventosUnload,QueryUnloadyTerminatedelosformulariosymódulosdeclasenoseejecuta.Sedestruyenlosobjetoscreadosdesdemódulodeclase,secierranlosarchivosabiertosutilizandoelmétodoOpenyseliberalamemoriautilizadaporelprograma.Seinvalidanlasreferenciasdeobjetosmantenidasporotrosprogramas.

LainstrucciónEndproporcionaunamaneradeforzarladetencióndeunprograma.ParalafinalizaciónnormaldeunprogramaVisualBasic,debedescargartodoslosformularios.Elprogramasecierraencuantonohayaotrosprogramasquemantienenreferenciasaobjetoscreadosenlosmódulosdeclasepúblicosyseejecuteningúncódigo.

Page 402: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Erase(Instrucción)

Vuelveainicializarloselementosdematricesdetamañofijoyliberaelespaciodealmacenamientoasignadoamatricesdinámicas.

Page 403: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Eraselista_matrices

Elargumentorequeridolista_matricesesunaomásvariablesdematrizdelimitadasporcomasquesevanaborrar.

Comentarios

Erasesecomportademaneradiferentedependiendodesiunamatrizesdetamañofijo(normal)odinámica.Erasenorecuperamemoriaparalasmatricesdetamañofijo.Eraseestableceloselementosdeunamatrizfijasegúnseexplicaacontinuación:

Tipodematriz EfectodeErasesobreelementosdeunamatrizfijaMatriznuméricafija Establececadaelementoacero.Matrizdecadenafija(longitudvariable)

Establececadaelementoaunacadenadelongitudcero("").

Matrizdecadenafija(longitudfija)

Establececadaelementoacero.

MatrizdeVariantefija EstablececadaelementoaEmpty.Matrizdetiposdefinidosporelusuario

Establececadaelementocomosisetrataradeunavariableseparada.

Matrizdeobjetos EstablececadaelementoalvalorespecialNothing.

Eraseliberalamemoriausadapormatricesdinámicas.Antesdequeelprogramapuedahacerreferenciadenuevoalamatrizdinámica,debevolveradeclararlasdimensionesdelasvariablesdelamatrizconlainstrucciónReDim.

Page 404: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Error(Instrucción)

Page 405: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Simulalageneracióndeunerror.

Sintaxis

Errornúmeroerror

Elargumentoobligatorionúmeroerrorpuedesercualquiernúmerodeerrorválido.

Comentarios

LainstrucciónErrorsemantieneporcompatibilidadconversionesanteriores.Enelcódigonuevo,especialmentealcrearobjetos,utiliceelmétodoRaisedelobjetoErrparagenerarerroresentiempodeejecución.

Sinúmeroerrorestádefinido,lainstrucciónErrorllamaalcontroladordeerroresdespuésdequelaspropiedadesdelobjetoErrseestablezcanconlossiguientevalorespredeterminados:

Propiedad ValorNumber ValorespecificadocomoargumentoeninstrucciónError.

Puedesercualquiernúmerodeerrorválido.Source NombredelproyectoactualdeVisualBasic.Description Expresióndecadenacorrespondientealvalordevueltoporla

funciónErrorparaelnúmeroespecificadoenNumber,sitalcadenaexiste.Sinoexiste,Descriptioncontendráunacadenadelongitudcero("").

HelpFile Unidad,rutadeaccesoynombrecompletodelarchivodeAyudadeVisualBasic.

HelpContext IdentificadordecontextodelarchivodeAyudadeVisual

Page 406: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

BasicparaelerrorcorrespondientealapropiedadNumber.LastDLLError Cero.

Sinoexistecódigodecontroldeerrores,osinoseencuentraactivado,secrearáymostraráunmensajedeerrorapartirdelaspropiedadesdelobjetoErr.

NotaNotodaslasaplicacioneshostdeVisualBasicpuedencrearobjetos.Consulteladocumentacióndesuaplicaciónhostparacomprobarsipuedecrearclasesyobjetos.

Page 407: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Exit

(Instrucción)

SaledeunbloquedecódigodeDo…Loop,For...Next,Function,SuboProperty.

Sintaxis

ExitDo

ExitFor

ExitFunction

ExitProperty

ExitSub

LasintaxisdelainstrucciónExitpuedeserlasiguiente:

Page 408: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Instrucción DescripciónExitDo Proporcionaunamaneradesalirdeunainstrucción

Do...Loop.SolamentesepuedeutilizardentrodeunainstrucciónDo...Loop.LainstrucciónExitDotransfiereelcontrolalainstrucciónquesiguealainstrucciónLoop.CuandoseutilizaconinstruccionesanidadasDo...Loop,lainstrucciónExitDotransfiereelcontrolalbuclequeestáanidadounnivelporencimadelbucledondeocurre.

ExitFor ProporcionaunamaneradesalirdeunbucleFor.SólosepuedeutilizarenunbucleFor...NextoForEach...Next.LainstrucciónExitFortransfiereelcontrolalainstrucciónquesiguealainstrucciónNext.CuandoseutilizaconbuclesanidadosFor,lainstrucciónExitFortransfiereelcontrolalbuclequeestáanidadounnivelporencimadelbucledondeocurre.

ExitFunction SaleinmediatamentedelprocedimientoFunctionenelqueaparece.LaejecucióncontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoFunction.

ExitProperty SaleinmediatamentedelprocedimientoPropertyenelqueaparece.LaejecucióncontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoProperty.

ExitSub SaleinmediatamentedelprocedimientoSubenelqueaparece.LaejecucióncontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoSub.

Comentarios

NoconfundalasinstruccionesExitconlasinstruccionesEnd.LainstrucciónExitnodefinedóndeterminaunaestructura.

Page 409: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileCopy(Instrucción)

Copiaunarchivo.

Sintaxis

FileCopysource,destination

LasintaxisdelainstrucciónFileCopyconstadelossiguientesargumentosconnombre:

Parte Descripciónsource Requerido.Expresióndecadenaqueespecificaelnombredeun

archivoquesevaacopiar.sourcepuedeincluireldirectorioocarpetaylaunidaddedisco.

destination Requerido.Expresióndecadenaqueespecificaelnombredelarchivodedestination.Puedeincluireldirectorioocarpetaylaunidaddedisco.

Page 410: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

SiintentautilizarlainstrucciónFileCopyenunarchivoabiertoactualmente,seproduciráunerror.

Page 411: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ForEach...Next(Instrucción)

Repiteungrupodeinstruccionesparacadaelementodeunamatrizocolección.

Sintaxis

Page 412: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ForEachelementoIngrupo[instrucciones][ExitFor][instrucciones]

Next[elemento]

LasintaxisdelainstrucciónForEach...Nextconstadelassiguientespartes:

Parte Descripciónelemento Requerido.Variablequeseutilizaparaiterarporlos

elementosdelconjuntoomatriz.Paraconjuntos,elementosolamentepuedeserunavariabledeltipoVariant,unavariabledeobjetogenéricaocualquiervariabledeobjetoespecífica.Paramatrices,elementosolamentepuedeserunavariabletipoVariant.

grupo Requerido.Nombredeunconjuntodeobjetosodeunamatriz(exceptounamatrizdetiposdefinidosporelusuario).

instrucciones Opcional.Unaomásinstruccionesqueseejecutanparacadaelementodeungrupo.

Comentarios

LaentradaalbloqueForEachseproducesihayalmenosunelementoengrupo.Unavezquesehaentradoenelbucle,todaslasinstruccionesenelbucleseejecutanparaelprimerelementoengrupo.Después,mientrashayamáselementosengrupo,lasinstruccionesenelbuclecontinúanejecutándoseparacadaelemento.Cuandonohaymáselementosenelgrupo,sesaledelbucleylaejecucióncontinúaconlainstrucciónquesiguealainstrucciónNext.

SepuedencolocarenelbuclecualquiernúmerodeinstruccionesExitFor.LainstrucciónExitForseutilizaamenudoenlaevaluacióndealgunacondición(porejemplo,If...Then)ytransfiereelcontrolalainstrucciónquesigueinmediatamentealainstrucciónNext.

PuedeanidarbuclesForEach...Next,colocandounbucleForEach...Next

Page 413: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

dentrodeotro.Sinembargo,cadaelementodelbucledebeserúnico.

NotaSiomiteelementoenunainstrucciónNext,laejecucióncontinúacomosisehubieraincluido.SiseencuentraunainstrucciónNextantesdesuinstrucciónForcorrespondiente,seproduciráunerror.

NosepuedeutilizarlainstrucciónForEach...NextconunamatrizdetiposdefinidosporelusuarioporqueuntipoVariantnopuedeconteneruntipodefinidoporelusuario.

Page 414: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

For...Next(Instrucción)

Repiteungrupodeinstruccionesunnúmeroespecificadodeveces.

Sintaxis

Page 415: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Forcontador=principioTofin[Stepincremento][instrucciones][ExitFor][instrucciones]

Next[contador]

LasintaxisdelainstrucciónFor...Nextconstadelassiguientespartes:

Parte Descripcióncontador Requerido.Variablenuméricaqueseutilizacomocontador

debucle.LavariablenopuedeserBooleananiunelementodematriz.

principiot Requerido.Valorinicialdelcontador.fin Requerido.Valorfinaldelcontador.incremento Opcional.Cantidadenlaquecambiaelcontadorcadavez

queseejecutaelbucle.Sinoseespecifica,elvalorpredeterminadodeincrementoesuno.

instrucciones Opcional.UnaomásinstruccionesentreForyNextqueseejecutanunnúmeroespecificadodeveces.

Comentarios

Elargumentoincrementopuedeserpositivoonegativo.Elvalordelargumentoincrementodeterminalamaneraenqueseprocesaelbucle,comosemuestraacontinuación:

Valor ElbucleseejcutasiPositivoo0 contador<=finNegativo contador>=fin

Unavezqueseiniciaelbucleysehanejecutadotodaslasinstruccionesenelbucle,incrementosesumaacontador.Enestepunto,lasinstruccionesdelbuclesepuedenejecutardenuevo(sisecumplelamismapruebaquecausóqueel

Page 416: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

bucleseejecutarainicialmente)obiensesaledelbucleylaejecucióncontinúaconlainstrucciónquesiguealainstrucciónNext.

SugerenciaCambiarelvalordecontadormientrasestádentrodeunbuclehacedifícilsulecturaydepuración.

SepuedencolocarenelbuclecualquiernúmerodeinstruccionesExitForcomounamaneraalternativadesalirdelmismo.LainstrucciónExitFor,queseutilizaamenudoenlaevaluacióndealgunacondición(porejemplo,If...Then),transfiereelcontrolalainstrucciónquesigueinmediatamentealainstrucciónNext.

SepuedenanidarbuclesFor...Next,colocandounbucleFor...Nextdentrodeotro.Paraello,proporcioneacadabucleunnombredevariableúnicocomosucontador.Lasiguienteconstrucciónescorrecta:

ForI=1To10

ForJ=1To10

ForK=1To10

...

NextK

NextJ

NextI

NotaSiomiteuncontadorenunainstrucciónNext,laejecucióncontinúacomosisehubieraincluido.SeproduceunerrorsiseencuentraunainstrucciónNextantesdesuinstrucciónForcorrespondiente.

Page 417: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 418: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 419: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Function(Instrucción)

Page 420: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declaraelnombre,losargumentosyelcódigoquecomponenelcuerpodeunprocedimientoFunction.

Sintaxis

[Public|Private|Friend][Static]Functionnombre[(lista_argumentos)][Astipo][instrucciones][nombre=expresión][ExitFunction][instrucciones][nombre=expresión]

EndFunction

LasintaxisdelainstrucciónFunctionconstadelassiguientespartes:

Parte DescripciónPublic Opcional.IndicaqueelprocedimientoFunctionesaccesible

paratodoslosdemásprocedimientosdetodoslosmódulos.SiseutilizaenunmóduloquecontieneOptionPrivate,elprocedimientonoestarádisponiblefueradelproyecto.

Private Opcional.IndicaqueelprocedimientoFunctionsóloesaccesibleparaotrosprocedimientosdelmódulodondesedeclara.

Friend Opcional.Seutilizasolamenteenunmódulodeclase.IndicaqueelprocedimientoFunctionesvisibleatravésdelproyecto,peronoesvisibleparauncontroladordeunainstanciadeunobjeto.

Static Opcional.Indicaquelasvariableslocalesdelprocedimiento

Page 421: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Functionseconservanentrelasdistintasllamadas.ElatributoStaticnoafectaalasvariablesquesedeclaranfueradeFunction,inclusoaunqueseutilicenenelprocedimiento.

Nombre Requerido.NombredelprocedimientoFunction;siguelasconvencionesestándardenombresdevariables.

lista_argumentos

Opcional.ListadevariablesquerepresentanargumentosquesepasanalprocedimientoFunctioncuandosellama.Lavariablesmúltiplesseseparanporcomas.

tipo Opcional.TipodedatosdelvalordevueltoporelprocedimientoFunction;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidoactualmente),Date,String,o(exceptolongitudfija),Object,Variant,ocualquiertipodefinidoporelusuario.

instrucciones Opcional.CualquiergrupodeinstruccionesquesevanaejecutardentrodelprocedimientoFunction.

expresión Opcional.ValorderetornodeFunction.

Elargumentolista_argumentostienelasiguientesintaxisypartes:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo][=valor_predeterminado]

Parte DescripciónOptional Opcional.Indicaqueunargumentonoesnecesario.Sise

utiliza,todoslosargumentosposterioresdelista_argumentostambiéndebenseropcionalesydeclararsemediantelapalabraclaveOptional.OptionalnosepuedeutilizarparacualquierargumentosiseempleaParamArray.

ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeselvalorpredeterminadoenVisualBasic.ParamArray Opcional.Sóloseutilizacomoúltimoargumentode

lista_argumentosparaindicarqueelúltimoargumentoesunamatrizOptionaldeelementosVariant.Lapalabraclave

Page 422: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ParamArraylepermiteproporcionarunnúmeroarbitrariodeargumentos.NopuedeutilizarseconByVal,ByRefuOptional.

nombre_variable

Requerido.Nombredelavariablequerepresentaelargumento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Tipodedatosdelargumentopasadoalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(nocompatibleactualmente),Date,String(sólolongitudvariable),Object,Variant,ountipodeobjetoespecífico.SielparámetronoesOptional,sepuedeespecificartambiénuntipodefinidoporelusuario.

valor_predeterminado

Opcional.Cualquierconstanteoexpresiónconstante.SóloesválidoparaparámetrosOptional.SieltipoesObject,unvalorpredeterminadoexplícitosólopuedeserNothing.

Comentarios

SinoseespecificandeformaexplícitamediantePublic,PrivateoFriend,losprocedimientosFunctionsonpúblicosdemanerapredeterminada.SinoseempleaStatic,elvalordelasvariableslocalesnoseconservaentredistintasllamadas.LapalabraclaveFriendsólopuedeusarseenmódulosdeclase.Sinembargo,puedeaccedersealosprocedimientosFriendporprocedimientosencualquiermódulodeunproyecto.UnprocedimientoFriendnoapareceenlabibliotecadetiposdesuclaseprimaria.

PrecauciónLosprocedimientosFunctionpuedenserrecursivos;esdecir,puedenllamarseasímismospararealizarunatareadeterminada.Sinembargo,larecursiónpuedeprovocareldesbordamientodepila.LapalabraclaveStaticnosesueleutilizarconprocedimientosFunctionrecursivos.

Todoelcódigoejecutabledebeestardentrodeprocedimientos.NopuededefinirunprocedimientoFunctiondentrodeotroprocedimientoFunction,SuboProperty.

LainstrucciónExitFunctionproduceunasalidainmediatadeunprocedimientoFunction.Laejecucióndelprogramacontinúaconlainstrucciónquesigueala

Page 423: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

instrucciónquellamóalprocedimientoFunction.EncualquierlugardeunprocedimientoFunctionpuedeaparecercualquiernúmerodeinstruccionesExitFunction.

AligualqueunprocedimientoSub,unprocedimientoFunctionesunprocedimientoindependientequepuedeadoptarargumentos,realizarunaseriedeinstruccionesycambiarlosvaloresdesusargumentos.Sinembargo,adiferenciadeunprocedimientoSub,puedeutilizarunprocedimientoFunctionenelladoderechodeunaexpresióndelamismaformaenqueutilizacualquierfunciónintrínseca,comoSqr,CosoChr,cuandodeseaemplearelvalordevueltoporlafunción.

ParallamaraunprocedimientoFunction,utiliceenunaexpresiónelnombredefunciónseguidodelalistadeargumentosentreparéntesis.ConsultelainstrucciónCallparaobtenerinformaciónespecíficaacercadecómollamaralosprocedimientosFunction.

Paradevolverunvalordeunafunción,asigneelvaloralnombredelafunción.Encualquierlugardelprocedimientopuedeaparecercualquiernúmerodeasignacionesdeestetipo.Sinoseasignaningúnvaloranombre,elprocedimientodevolveráunvalorpredeterminado:unafunciónnuméricadevuelve0,unafuncióndecadenadevuelveunacadenadelongitudcero("")yunafunciónVariantdevuelveEmpty.UnafunciónquedevuelveunareferenciadeobjetodevuelveNothingsinoseasignaningunareferenciadeobjetoanombre(medianteSet)dentrodelprocedimientoFunction.

ElejemplosiguientemuestracómoasignarunvalorderetornoaunafunciónllamadaBinarySearch.Enestecaso,Falseseasignaalnombreparaindicarquenoseencontróalgúnvalor.

FunctionBinarySearch(...)AsBoolean

...

'Valornoencontrado.DevuelveunvalorFalse.

Iflower>upperThen

BinarySearch=False

ExitFunction

EndIf

Page 424: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

...

EndFunction

LasvariablesempleadasenprocedimientosFunctionsedividenendoscategorías:lasquesedeclaranexplícitamentedentrodelprocedimientoylasqueno.Lasvariablesquesedeclaranexplícitamenteenunprocedimiento(medianteDimuotrainstrucciónequivalente)siempresonlocalesdelprocedimiento.Lasvariablesqueseutilizanperonosedeclaranexplícitamenteenunprocedimientotambiénsonlocales,amenosquesehayandeclaradoexplícitamenteenalgúnnivelsuperiorfueradelprocedimiento.

PrecauciónUnprocedimientopuedeutilizarunavariablequenosehadeclaradoexplícitamenteenelprocedimiento,peropuedeocurrirunconflictodenombressialgoquedefinióenunniveldemódulotieneelmismonombre.Sisuprocedimientohacereferenciaaunavariablenodeclaradaquetieneelmismonombrequeotroprocedimiento,constanteovariable,sesuponequeelprocedimientohacereferenciaaesenombreaniveldemódulo.Declareexplícitamentelasvariablesparaevitarestetipodeconflicto.PuedeutilizarunainstrucciónOptionExplicitparaforzarladeclaraciónexplícitadevariables.

PrecauciónVisualBasicpuedereorganizarlasexpresionesaritméticasparamejorarsueficaciainterna.EviteutilizarunprocedimientoFunctionenunaexpresiónaritméticacuandolafuncióncambieelvalordelasvariablesdelamismaexpresión.

Page 425: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Get(Instrucción)

Page 426: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Leedatosdeunarchivodediscoabiertoycolocalainformaciónenunavariable.

Sintaxis

Get[#]númeroarchivo,[númeroregistro],nombrevariable

LasintaxisdelainstrucciónGetconstadelassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.númeroregistro Opcional.UntipoVariant(Long).Númeroderegistro

(archivosenmodoRandom)onúmerodebyte(archivosenmodoBinary)desdeelquecomienzalalectura.

nombrevariable Requerido.Nombredeunavariableválidaenlaquesecolocanlosdatos.

Comentarios

LosdatosqueseleenconGetseescribenhabitualmenteenunarchivoconPut.

Elprimerregistroobytedeunarchivoseencuentraenlaposición1,elsegundoenlaposición2yasísucesivamente.Siomitenúmeroregistro,seleeelsiguienteregistroobytequeseencuentradespuésdelaúltimainstrucciónGetoPut(oalqueseñalalaúltimafunciónSeek).Debeincluirlascomasdedelimitación,por

Page 427: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ejemplo:

Get#4,,BúferArchivo

EnlosarchivosabiertosenmodoRandomseaplicanlassiguientesreglas:

AunquelalongituddelainformaciónqueseleeseamenorquelaespecificadaenlacláusulaLendelainstrucciónOpen,Getleelosregistrossiguientessegúnloslímitesdelongitudderegistro.Elespaciocomprendidoentreelfinaldeunregistroyelprincipiodelsiguientesellenaconelcontenidodelbúferdelarchivo.Puestoquelacantidaddelainformaciónderellenonosepuededeterminarconcerteza,esconvenientehacerqueelregistrotengalamismalongitudquelainformaciónqueselee.

Silavariableenlaqueseleelainformaciónesunacadenadecaracteresdelongitudvariable,Getleeundescriptorde2bytesquecontienelalongituddelacadenadecaracteresyacontinuaciónlosdatosquevanenlavariable.Porlotanto,lalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebeserporlomenos2bytesmayorquelalongitudrealdelacadenadecaracteres.

SilavariablequesevaaleeresunavariableVariantdetiponumérico,Getlee2bytesqueidentificanelVarTypedeltipoVariantyluegolosdatosquevanenlavariable.Porejemplo,cuandoseleeuntipoVariantdeVarType3,Getlee6bytes:2bytesidentificaneltipoVariantcomoVarType3(Long)y4bytescontieneneldatotipoLong.Lalongituddelregistro,especificadaporlacláusulaLendelainstrucciónOpen,debeserporlomenos2bytesmayorqueelnúmerorealdebytesnecesarioparaalmacenarlavariable.NotaPuedeutilizarlainstrucciónGetparaleerunamatrizVariantdeldisco,peronopuedeemplearGetparaleerunaVariantescalarquecontengaunamatrizTampocopodráutilizarGetparaleerobjetosdeldisco.

SilavariablequesevaaleeresunaVariantdetipoVarType8(String),Getlee2bytesqueidentificanelVarType,2bytesqueindicanlalongituddelacadenadecaracteresyluegolapropiacadena.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebeserporlomenos4bytesmayorquelalongitudrealdelacadena.

Page 428: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Silavariantequevaaleeresunamatrizdinámica,Getleeundescriptorcuyalongitudequivalea2más8veceselnúmerodedimensiones,esdecir,2+8*NumberOfDimensions.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebesermayoroigualquelasumadetodoslosbytesnecesariosparaleerlosdatosyeldescriptordelamatriz.Porejemplo,lasiguientedeclaracióndematrizrequiere118bytescuandolamatrizseescribeendisco.DimMiMatriz(1To5,1To10)AsInteger

Los118bytessedistribuyendelasiguienteforma:18bytesparaeldescriptor(2+8*2)y100bytesparalosdatos(5*10*2).

Silavariablequevaaleeresunamatrizdetamañofijo,Getleesolamentelosdatos.Noleeningúndescriptor.

Silavariablequevaaleerescualquierotrotipodevariable(nounacadenadelongitudvariableniuntipoVariant),Getleesolamentelosdatosvariables.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebesermayoroigualquelalongituddelosdatosqueestáleyendo.

Getleeelementosdetiposdefinidosporelusuariocomosicadaunodeellosseleyeraindividualmente,exceptoenquenohayrellenoentreloselementos.Endisco,unamatrizdinámicadeuntipodefinidoporelusuario(escritoconPut)tienecomoprefijoundescriptorcuyalongitudesiguala2más8veceselnúmerodedimensiones,esdecir,2+8*NumberOfDimensions.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebesermayoroigualquelasumadetodoslosbytesnecesariosparaleercadaunodeloselementos,incluyendolasmatricesysusdescriptores.

EnlosarchivosabiertosenmodoBinarytienenvigenciatodaslasreglasdelmodoRandom,conlassiguientesexcepciones:

LacláusulaLendelainstrucciónOpennotieneefecto.Getleedeldiscotodaslasvariablesenformacontigua,esdecir,sinrellenoentreregistros.

Page 429: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Paracualquiermatrizdistintadelasutilizadasenuntipodefinidoporelusuario,Getleesolamentelosdatos.Noleeningúndescriptor.

Getleelascadenasdecaracteresdelongitudvariablequenosonelementosdetiposdefinidosporelusuario,sinesperareldescriptordelongitudde2bytes.Elnúmerodebytesleídosesigualalnúmerodecaracteresexistentesenlacadena.Porejemplo,lassiguientesinstruccionesleen10bytesdelarchivonúmero1:VarCadena=String(10,"")

Get#1,,VarCadena

Page 430: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GoSub...Return(Instrucción)

Saltaaunasubrutinadesdeunprocedimientoparaposteriormentevolveraél.

Sintaxis

Page 431: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GoSublínea...línea...

Return

Elargumentolíneapuedesercualquieretiquetadelíneaonúmerodelínea.

Comentarios

PuedeutilizarGoSubyReturnencualquierlugardeunprocedimiento,peroGoSubysucorrespondienteReturndebenestarenelmismoprocedimiento.UnasubrutinapuedecontenermásdeunainstrucciónReturn,perolaprimerainstrucciónReturnqueseencuentrahacequeelflujodelaejecuciónregresealainstrucciónquesigueinmediatamentealainstrucciónGoSubejecutadamásrecientemente.

NotaNosepuedeentrarosalirdeprocedimientosSubutilizandounainstrucciónGoSub...Return.

SugerenciaLacreacióndeprocedimientosseparadosalosquepuedellamarproporcionaunaalternativamásestructuradaqueelusodeGoSub...Return.

Page 432: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GoTo(Instrucción)

Saltaincondicionalmenteaunalíneaespecificadaenunprocedimiento.

Sintaxis

Page 433: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GoTolínea

Elargumentolíneapuedesercualquieretiquetadelíneaonúmerodelínea.

Comentarios

GoTosolamentepuedesaltaralíneasdelprocedimientoenelqueaparece.

NotaDemasiadasinstruccionesGoTopuedenserdifícilesdeleerydedepurar.Siemprequeseaposible,utiliceinstruccionesdecontrolestructuradas(Do...Loop,For...Next,If...Then...Else,SelectCase).

Page 434: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

If...Then...Else(Instrucción)

Page 435: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Ejecutacondicionalmenteungrupodeinstrucciones,dependiendodelvalordeunaexpresión.

Sintaxis

IfcondiciónThen[instrucciones]-[Elseinstrucciones_else]

Puedeutilizarlasiguientesintaxisenformatodebloque:

IfcondiciónThen[instrucciones]

[ElseIfcondición-nThen[instrucciones_elseif]...

[Else[instrucciones_else]]

EndIf

LasintaxisdelainstrucciónIf...Then...Elseconstadetrespartes:

Parte Descripcióncondición Requerido.Unoomásdelossiguientesdostiposde

expresiones: Unaexpresiónnuméricaoexpresióndecadenaquepuede

Page 436: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

serevaluadacomoTrueoFalse.SicondiciónesNull,condiciónseconsideraFalse.

UnaexpresióndelformularioTypeOfnombre_objetoIstipo_objeto.Elnombre_objetoescualquierreferenciaalobjetoytipo_objetoescualquiertipodeobjetoválido.LaexpresiónesTruesinombre_objetoesdeltipodeobjetoespecificadoportipo_objeto;encasocontrarioesFalse.

instrucciones Opcionalenformatodebloque;serequiereenformatodelíneasencillaquenotengaunacláusulaElse.UnaomásinstruccionesseparadaspordospuntosejecutadossilacondiciónesTrue.

condición-n Opcional.Igualquecondición.instrucciones_elseifOpcional.Unaomásinstruccionesejecutadassila

condición-nasociadaesTrue.instrucciones_else Opcional.Unaomásinstruccionesejecutadassiningunade

lasexpresionesanteriorescondiciónocondición-nesTrue.

Comentarios

Puedeutilizarlaformadeunasolalínea(Sintaxis1)parapruebascortasysencillas.Sinembargo,elformatodebloque(Sintaxis2)proporcionamásestructurayflexibilidadquelaformadelíneasimpley,generalmente,esmásfácildeleer,demantenerydedepurar.

NotaConlasintaxisesposibleejecutarmúltiplesinstruccionescomoresultadodeunadecisiónIf...Then,perotodasdebenestarenlamismalíneayseparadaspordospuntos,comoenlainstrucciónsiguiente:

IfA>10ThenA=A+1:B=B+A:C=C+B

UnainstrucciónconformatodebloqueIfdebeserlaprimeradelalínea.LaspartesElse,ElseIfyEndIf,delainstrucción,solamentepuedenirprecedidasdeunnúmerodelíneaounaetiquetadelínea.ElbloqueIfdebeterminarconunainstrucciónEndIf.

ParadeterminarsiunainstrucciónIfesunbloque,examineloquesigueala

Page 437: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

palabraclaveThen.SiloqueaparecedetrásdeThenenlamismalíneanoesuncomentario,lainstrucciónseconsideracomounainstrucciónIfdeunasolalínea.

LascláusulasElseyElseIfsonopcionales.PuedetenerenunbloqueElseIf,tantascláusulasIfcomodesee,peroningunapuedeaparecerdespuésdeunacláusulaElse.LasinstruccionesdebloqueIfsepuedenanidar;esdecir,unaspuedenconteneraotras.

CuandoseejecutaunbloqueIf(Sintaxis2),sepruebacondición.SicondiciónesTrue,seejecutanlasinstruccionesqueestánacontinuacióndeThen.SicondiciónesFalse,seevalúanunaaunalascondicionesElseIf(siexisten).CuandoseencuentraunacondiciónTrueseejecutanlasinstruccionesquesigueninmediatamentealainstrucciónThenasociada.SiningunadelascondicionesElseIfesTrue(osinohaycláusulasElseIf),seejecutanlasinstruccionesquesiguenaElse.DespuésdelaejecucióndelasinstruccionesquesiguenaThenoElse,laejecucióncontinúaconlainstrucciónquesigueaEndIf.

SugerenciaSelectCasepuedesermásútilcuandoseevalúaunaúnicaexpresiónquetienevariasaccionesposibles.Sinembargo,lacláusulaTypeOfnombre_objetoIstipo_objetonosepuedeutilizarenunainstrucciónSelectCase.

NotaNosepuedeusarTypeOfcontiposdedatospredefinidoscomoLong,Integeryasísucesivamente,exceptoeneltipodedatosObject.

Page 438: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 439: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Input#(Instrucción)

Leedatosdeunarchivosecuencialabiertoyasignaesosdatosavariables.

Sintaxis

Input#númeroarchivo,listavariables

LasintaxisdelainstrucciónInput#constadelassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.listavariables Requerido.Listadevariablesdelimitadaporcomasquese

asignanalosvaloresqueseleendeunarchivo;nopuedeserunamatrizounavariabledeobjeto.Sinembargo,esposibleusarvariablesquedescribenelementosdeunamatrizodeuntipodefinidoporelusuario.

Page 440: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LosdatosleídosconInput#seescribennormalmenteenunarchivoconWrite#.UseestainstrucciónsóloconarchivosabiertosenmodoInputoBinary.

Cuandoseleendatosnuméricosocadenasestándar,seasignantalcualavariables.Lasiguientetablailustralamaneraenquesetratalaentradadeotrostiposdedatos:

Datos ValorasignadoalavariablePuntoycomadedelimitaciónolíneaenblanco

Empty

#NULL# Null#TRUE#o#FALSE# TrueoFalse#yyyy-mm-ddhh:mm:ss# Eldíaolahorarepresentadasporlaexpresión#ERRORerrornumber# errornumber(lavariableesuntipoVariant

etiquetadacomounerror)

Seignoranlascomillasdobles("")enlaentradadedatos.

NotaNodeberíaescribircadenasquecontenganmarcasdecomillasincrustadas,porejemplo,"1,2""X"parautilizarlasconlainstrucciónInput#:Input#analizalacadenacomodoscadenascompletasyseparadas.

Loselementosdedatosdeunarchivodebenaparecerenelmismoordenquetienenlasvariablesenlistavariablesydebencoincidirconvariablesdelmismotipodedatos.Siunavariableesnuméricaylosdatosnoloson,seasignaunvalorceroaesavariable.

Sisellegaalfindelarchivocuandoseestáintroduciendounelementodedatos,sedaporterminadalaentradayseproduceunerror.

NotaParaintroducircorrectamenteenvariablesmedianteInput#losdatosleídosdeunarchivo,utilicesiemprelainstrucciónWrite#,enlugardePrint#,paragrabarlainformaciónenlosarchivos.LautilizacióndeWrite#garantiza

Page 441: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

quecadacampodedatosseparadosedelimitecorrectamente.

Page 442: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Kill(Instrucción)

Eliminaarchivosdeldisco.

Sintaxis

Killnombre_ruta

Elargumentorequeridonombre_rutaesunaexpresióndecadenaqueespecificaunoomásnombresdearchivosquesevanaeliminar.Puedeincluireldirectorioocarpetaylaunidaddedisco.

Comentarios

EnMicrosoftWindows,LafunciónKillpermiteelusodeloscaracterescomodín'*'(múltiplescaracteres)y'?'(unsolocarácter)paraespecificarvariosarchivos.Sinembargo,enMacintosh,estoscaracteressontratadoscomocaracteresdenombredearchivoválidosynosepuedenutilizarcomocomodines

Page 443: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

paraespecificarmúltiplesnombresdearchivo.

ComoMacintoshnoadmitecomodines,utiliceeltipodearchivoparaidentificargruposdearchivosaborrar.PuedeutilizarlafunciónMacIDparaespecificareltipodearchivoenlugarderepetirelcomandocondistintosnombresdearchivos.Porejemplo,lasiguienteinstrucciónborrartodoslosarchivosdeTEXTOenlacarpetaactual.

KillMacID("TEXT")

SiutilizalafunciónMacIDconKillenMicrosoftWindows,seproduciráunerror.

SeproduciráunerrorsiintentausarlainstrucciónKillparaeliminarunarchivoabierto.

NotaParaeliminardirectorios,utilicelainstrucciónRmDir.

Page 444: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 445: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Let(Instrucción)

Asignaelvalordeunaexpresiónaunavariableopropiedad.

Sintaxis

[Let]nombre_variable=expresión

LasintaxisdelainstrucciónLetconstadelassiguientespartes:

Parte DescripciónLet Opcional.ElusoexplícitodelapalabraclaveLetesunacuestión

deestilo,peronormalmenteseomite.nombre_variable

Requerido.Nombredelavariableodelapropiedad;siguelasconvencionesestándardenombresdevariables.

expresión Requerido.Valorasignadoalavariableoalapropiedad.

Page 446: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Unaexpresióndevalorsepuedeasignaraunavariableoaunapropiedadsólosiesdeuntipodedatoscompatibleconlavariable.Nopuedeasignarexpresionesdecadenaavariablesnuméricasniasignarexpresionesnuméricasavariablesdecadena.Silohace,ocurriráunerrorentiempodecompilación.

LasvariablesVariantpuedenasignarseaexpresionesdecadenaonuméricas.Sinembargo,locontrarionosiempreesverdadero.CualquierVariantexceptoNullpuedeasignarseaunavariabledecadena,perosólounaVariantcuyovalorpuedainterpretarsecomounnúmerosepuedeasignaraunavariablenumérica.UselafunciónIsNumericparadeterminarsilaVariantsepuedeconvertiraunnúmero.

PrecauciónSiasignaunaexpresióndeuntiponuméricoaunavariabledeuntipodedatosnuméricosdiferente,forzaráqueelvalordelaexpresiónseadeltiponuméricodelavariableresultante.

LasinstruccionesLetsepuedenutilizarparaasignarunavariablederegistroaotrasólocuandoambasvariablessondelmismotipodefinidoporelusuario.UtilicelainstrucciónLSetparaasignarvariablesderegistrodediferentestiposdefinidosporelusuario.UtilicelainstrucciónSetparaasignarreferenciasdeobjetosavariables.

Page 447: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LineInput#(Instrucción)

LeeunalíneadeunarchivosecuencialabiertoylaasignaaunavariableString.

Sintaxis

LineInput#númeroarchivo,nombrevariable

LasintaxisdelainstrucciónLineInput#constalassiguientespartes:

Parte Descripción

Page 448: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

númeroarchivo Requerido.Cualquiernúmerodearchivo.nombrevariable Requerido.UnVariantounnombredevariableString

válido.

Comentarios

LosdatosqueseleenconLineInput#normalmenteseescribenenunarchivoconPrint#.

LainstrucciónLineInput#leeuncaráctercadavezenunarchivohastaqueencuentraunretornodecarro(Chr(13))ounasecuenciaretornodecarro-avancedelínea(Chr(13)+Chr(10)).Lassecuenciasderetornodecarro-avancedelíneanosetienenencuentaynoseañadenalacadenadecaracteres.

Page 449: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Load(instrucción)

Cargaunobjetoperonolomuestra.

Sintaxis

Loadobjeto

ElmarcadordeposiciónobjetorepresentaunaexpresióndeobjetoqueevaluaunobjetoenlalistaSeaplicaa.

Comentarios

Cuandosecargaunobjeto,secolocaenlamemoria,peronoesvisible.UtiliceelmétodoShowparahacerlovisible.Mientrasunobjetonoseavisible,unusuarionopuedeinteractuarconél.

Page 450: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Lock,Unlock

(Instrucciones)

ControlaelaccesoporpartedeotrosprocesosatodoopartedeunarchivoabiertomediantelainstrucciónOpen.

Sintaxis

Lock[#]númeroarchivo[,intervaloregistros]...

Unlock[#]númeroarchivo[,intervaloregistros]

LasintaxisdelasinstruccionesLockyUnlockconstalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.intervaloregistros Opcional.Elintervaloderegistrosparabloquearo

desbloquear.

Page 451: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Valores

Losposiblesvaloresdelargumentointervaloregistrosson:

númeroregistro|[inicio]Tofin

Valor Descripciónnúmeroregistro Númeroderegistro(archivosdemodoRandom)onúmero

debyte(archivosdemodoBinary)enelquecomienzaelbloqueooeldesbloqueo.

inicio Númerodelprimerregistroobyteparabloquearodesbloquear.

fin Númerodelúltimoregistroobyteparabloquearodesbloquear.

Comentarios

LasinstruccionesLockyUnlockseutilizanenentornosdondevariosprocesospuedennecesitaraccesoalmismoarchivosimultáneamente.

LasinstruccionesLockyUnlockseutilizansiempreporparejas.LosargumentosdeLockyUnlockdebencoincidirexactamente.

Elprimerregistroobytedeunarchivoseencuentraenlaposición1,elsegundoenlaposición2yasísucesivamente.Siespecificasólounregistro,sólosebloqueaosedesbloqueaeseregistro.Siespecificaunintervaloderegistrosyomiteelregistrodeinicio(inicio),sebloqueanosedesbloqueantodoslosregistrosapartirdelprimerohastaelúltimo(fin)delintervalo.SiseutilizaLocksinnúmeroregistrosebloqueatodoelarchivoysiseutilizaUnlocksinnúmeroregistrosedesbloqueatodoelarchivo.

Sielarchivosehaabiertoparaefectuaroperacionessecuencialesdeentradaosalida,LockyUnlockafectanalarchivocompleto,independientementedelintervaloespecificadoporinicioyfin.

Page 452: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PrecauciónAntesdecerrarunarchivooterminarlaejecucióndeunprograma,noolvidequitartodoslosbloqueospormediodeunainstrucciónUnlock.Sinosequitantodoslosbloqueossepuedenobtenerresultadosimpredecibles.

Page 453: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LSet(Instrucción)

Alineaalaizquierdaunacadenaenunavariabledecadenaocopiaunavariabledeuntipodefinidoporelusuarioaotravariabledeuntipodedatosdiferentedefinidoporelusuario.

Page 454: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

LSetvarcadena=cadena

LSetnombrevar1=nombrevar2

LasintaxisdelainstrucciónLSetconstadelassiguientespartes:

Parte Descripciónvarcadena Requerido.Nombredevariabledecadena.cadena Requerido.Expresióndecadenaquesevaaalinearala

izquierdaenvarcadena.nombrevar1 Requerido.Nombredevariabledeltipodedatosdefinido

porelusuarioalaquesecopia.nombrevar2 Requerido.Nombredevariabledeltipodedatosdefinido

porelusuariodesdelaquesecopia.

Comentarios

LSetreemplazaconespaciosenblancoloscaracteressobrantesenvarcadena.

Sicadenaesmáslargaquevarcadena,LSetcolocasóloloscaracteresqueestánmásalaizquierda,hastalalongituddevarcadena,envarcadena.

AdvertenciaNoserecomiendautilizarLSetparacopiarunavariabledeuntipodedatosdefinidoporelusuarioaunavariabledeotrotipodedatosdiferentedefinidoporelusuario.Copiardatosdeuntipodedatosenunespacioreservadoparaotrotipodedatosdiferentepuedeocasionarresultadosimprevisibles.

Cuandocopiaunavariabledeuntipodedatosdefinidoporelusuarioaotro,simplementesecopianlosdatosbinariosdeunavariableenelespaciodememoriadelaotra,sintenerencuentalostiposdedatosespecificadosparaloselementosincluidosdentrodedichoespacio.

Page 455: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Mid

(Instrucción)

ReemplazaunnúmeroespecificadodecaracteresenunavariabledetipoVariant(String)concaracteresdeotracadena.

Sintaxis

Mid(varcadena,inicio[,longitud])=cadena

LasintaxisdelafunciónMidconstadelassiguientespartes:

Parte Descripciónvarcadena Requerido.Nombredelavariabledecadenaquesevaa

modificar.inicio Requerido;untipoVariant(Long).Posicióndecarácteren

varcadenadondeempiezaeltextoquesevaareemplazar.longitud Opcional;untipoVariant(Long).Númerodecaracteresque

Page 456: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

sevaareemplazar.Siseomiteseutilizatodalacadena.cadena Requerido.Expresióndecadenaquereemplazapartede

varcadena.

Comentarios

Elnúmerodecaracteresreemplazadosessiempremenoroigualalnúmerodecaracteresenvarcadena.

NotaUtilicelainstrucciónMidBcondatosdebyteincluidosenunacadena.EnlainstrucciónMidB,inicioespecificalaposicióndebytedentrodevarcadenadondecomienzalasustituciónylongitudespecificaelnúmerodebytesquesevaareemplazar.

Page 457: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MkDir(Instrucción)

Creaundirectorioocarpeta.

Sintaxis

MkDirruta

Elargumentorequeridorutaesunaexpresióndecadenaqueidentificaeldirectorioocarpetaquesevaacrear.Puedeincluirlaunidaddedisco.Sinoseespecificalaunidaddedisco,lainstrucciónMkDircreaeldirectorioocarpetaenlaunidaddediscoactual.

Page 458: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Name

(Instrucción)

Cambiaelnombredeunarchivo,directorioocarpeta.

Sintaxis

Namenombre_ruta_antiguaAsnombre_ruta_nueva

LasintaxisdelainstrucciónNameconstadelassiguientespartes:

Parte Descripciónnombre_ruta_antigua Requerido.Expresióndecadenaqueespecificael

nombreylaposicióndearchivoexistente.Puedeincluireldirectorioolacarpetaylaunidaddedisco.

nombre_ruta_nueva Requerido.Expresióndecadenaqueespecificaelnombrenuevoylaposicióndelarchivo.Puedeincluireldirectorioolacarpetaylaunidaddedisco.Elnombreyposiciónespecificadosennombre_ruta_nuevano

Page 459: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

puedenserlosdeunarchivoexistente.

Comentarios

LainstrucciónNamecambiaelnombredeunarchivoylomueveaundirectorioocarpetadiferente,siesnecesario.Namepuedemoverunarchivoatravésdeunidadesperosólopuedecambiarelnombreaundirectorioocarpetaexistentecuandotantonombre_ruta_antiguacomoelnombre_ruta_nuevaestánubicadosenlamismaunidad.Namenopuedecrearunnuevoarchivo,directorioocarpeta.

SiseutilizalainstrucciónNameconunarchivoabiertoseproduciráunerror.Cierreunarchivoantesdecambiarleelnombre.LosargumentosdelainstrucciónNamenopuedenincluircaracterescomodínmúltiples(*)nisencillos(?).

Page 460: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OnError(Instrucción)

Page 461: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Activaunarutinadecontroldeerroresyespecificalaubicacióndelamismaenunprocedimiento;tambiénpuedeutilizarseparadesactivarunarutinadecontroldeerrores.

Sintaxis

OnErrorGoTolínea

OnErrorResumeNext

OnErrorGoTo0

LasintaxisdelainstrucciónOnErrorpuedetenercualquieradelosformatossiguientes:

Instrucción DescripciónOnErrorGoTolínea Activalarutinadecontroldeerroresquecomienzaen

lalíneaespecificadaenelargumentonecesariolínea.Elargumentolíneaescualquieretiquetadelíneaonúmerodelínea.Siseproduceunerrorentiempodeejecución,elcontrolpasaalínea,activandoelcontroladordeerrores.LalíneaespecificadaenelargumentolíneadebeencontrarseenelmismoprocedimientoquelainstrucciónOnError;odelo

Page 462: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

contrario,seproduciráunerrorentiempodecompilación.

OnErrorResumeNext

Especificaque,encasodequeseproduzcaunerrorentiempodeejecución,elcontrolpasealainstrucciónquesigueinmediatamenteaaquéllaenlaquesehaproducidoelerror,dondecontinúalaejecución.SerecomiendautilizaresteformatoenlugardeOnErrorGoTocuandoaccedaaobjetos.

OnErrorGoTo0 Desactivacualquiercontroladordeerroresdelprocedimientoactual.

Comentarios

SinoutilizaunainstrucciónOnError,cualquiererrorentiempodeejecuciónqueseproduzcaseráfatal;esdecir,apareceráunmensajedeerrorylaejecuciónsedetendrá.

Uncontroladordeerrores"activado"esaquélquesehahabilitadomedianteunainstrucciónOnErroryuncontroladordeerrores“activo"esuncontroladoractivadoqueseencuentraenelprocesodetratarunerror.Siseproduceunerrormientrasuncontroladorestáactivo(entrelaaparicióndelerroryunainstrucciónResume,ExitSub,ExitFunctionoExitProperty),elcontroladordeerroresdelprocedimientoactualnopuedetratarlo.Elcontrolvuelvealprocedimientoquehacelallamada,ysiéstecuentaconuncontroladordeerroresactivado,seutilizaesecontroladorparatratarelerror.Sitambiénestáactivoelcontroladordeerrordelprocedimientoquehacelallamada,elcontrolvuelvehacialosprocedimientosllamadoresanterioreshastallegarauncontroladordeerroractivado,peronoactivo.Sinoseencuentrauncontroladordeerroresactivadoeinactivo,elerroresfatalenelpuntoenelqueseprodujo.Cadavezqueelcontroladordeerroresdevuelveelcontrolalprocedimientoquehacelallamada,ésteseconvierteenelprocedimientoactual.Unaveztratadounerrorconuncontroladorencualquierprocedimiento,laejecucióncontinúaenelprocedimientoactualenelpuntodesignadoporlainstrucciónResume.

NotaUnarutinadecontroldeerroresnoesunprocedimientoSubniFunction.Esunaseccióndecódigomarcadaconunaetiquetaounnúmerodelínea.

Page 463: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LasrutinasdecontroldeerroressebasanenelvalordelapropiedadNumberdelobjetoErrparadeterminarlacausadelerror.UnarutinadecontroldeerroresdebecomprobaryguardarlosvaloresdelaspropiedadesdelobjetoErrantesdequepuedaproducirseotroerroroantesdequesellameaunprocedimientoquepuedacausarlo.LosvaloresdelaspropiedadesdelobjetoErrreflejansolamenteelerrormásreciente.ElmensajedeerrorasociadoaErr.NumberseencuentraenErr.Description.

OnErrorResumeNexthacequelaejecucióncontinúeenlainstrucciónquesigueinmediatamentealaquecausóelerrorentiempodeejecución,oenlaquesigueinmediatamentealaúltimallamadadesdeelprocedimientoquecontienelainstrucciónOnErrorResumeNext.Estainstrucciónpermitecontinuarlaejecuciónapesardequesehayaproducidounerrorentiempodeejecución..Puedecolocarlarutinadecontroldeerroresdondeseproduciríaelerror,envezdetransferirelcontrolaotraposicióndentrodelprocedimiento.LainstrucciónOnErrorResumeNextpasaaestarinactivacuandosellamaaotroprocedimiento,portantousteddebeejecutarunainstrucciónOnErrorResumeNextencadarutinaquellamadasideseauncontroldeerroresintegradodentrodelapropiarutina.

NotaLaconstrucciónOnErrorResumeNextpuedeserpreferibleaOnErrorGoTocuandosetratenerroresgeneradosduranteelaccesoaotrosobjetos.ComprobarErrdespuésdecadainteracciónconunobjetoeliminalaambigüedadencuantoaquéobjetoestabaaccediendoelcódigocuandoseprodujoelerror.DeestemodopuedesaberquéobjetohacolocadoelcódigodeerrorenErr.Number,asícomoquéobjetogeneróoriginalmenteelerror(elobjetoespecificadoenErr.Source).

OnErrorGoTo0desactivaelcontroldeerroresenelprocedimientoactual.Noespecificalalínea0comoeliniciodelcódigodecontroldeerrores,nisiquieracuandoelprocedimientocontieneunalíneaconelnúmero0.SinunainstrucciónOnErrorGoTo0,elcontroldeerroressedesactivaautomáticamentealsalirdelprocedimiento.

Paraevitarqueelcódigodecontroldeerroresseejecutecuandonosehaproducidoningúnerror,coloqueunainstrucciónExitSub,ExitFunctionoExitPropertyinmediatamenteantesdelarutinadecontroldeerrores,comoenelejemplosiguiente:

Page 464: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SubInicializarMatriz(Var1,Var2,Var3,Var4)

OnErrorGoToControlErrores

...

ExitSub

ControlErrores:

...

ResumeNext

EndSub

Aquí,elcódigodecontroldeerroresvieneacontinuacióndelainstrucciónExitSubyprecedeaEndSubparasepararlodelflujonormaldelprocedimiento.Elcódigodecontroldeerrorespuedesituarseencualquierlugardelprocedimiento.

Loserroresnointerceptadosenlosobjetossedevuelvenalaaplicaciónqueloscontrolacuandoelobjetoestátrabajandocomounarchivoejecutable.Enelentornodedesarrollo,estoserroressólosedevuelvenalaaplicaciónsiseestablecenlasopcionesadecuadas.Consulteladocumentacióndesuaplicaciónhostparaunadescripcióndelasopcionesquedebenestablecerseduranteladepuración,cómoestablecerlasysielhostpuedecrearclases.

Sicreaunobjetoqueaccedeaotrosobjetos,deberáintentartratarloserroresquetalesobjetosdevuelvansinprocesar.Sinopuedetratarlos,copieelcódigodeerrorenErr.Numberenunodesuspropioserroresyluegopáselosalelementoquellamóasuobjeto.DebeespecificarelerroragregandosupropiocódigodeerroralaconstantevbObjectError.Porejemplo,sisucódigodeerrores1052,asígnelodeestaforma:

Err.Number=vbObjectError+1052

NotaLoserroresdelsistemaalrealizarllamadasabibliotecasdevínculosdinámicos(DLL)orecursosdecódigodeMacintoshnogeneranexcepcionesynosepuedentratarconelcontroldeerroresdeVisualBasic.AlllamarafuncionesDLL,debecomprobarenlosvaloresdevueltossilafunciónhatenidoéxitoohafracasado(segúnlasespecificacionesdelaAPI)y,enelcasodeunfallo,comprobarelvalordelapropiedadLastDLLErrordelobjetoErr.LastDLLErrorsiempredevuelveceroenMacintosh.

Page 465: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

On...GoSub,On...GoTo(Instrucciones)

Saltaaunadelaslíneasespecificadas,dependiendodelvalordeunaexpresión.

Sintaxis

Page 466: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OnexpresiónGoSublista_destino

OnexpresiónGoTolista_destino

LasintaxisdelasinstruccionesOn...GoSubyOn...GoToconstadelassiguientespartes:

Parte Descripciónexpresión Requerido.Cualquierexpresiónnuméricacuyovaloresun

númeroenteroentre0y255,inclusive.Siexpresiónescualquiernúmeronoentero,seredondeaantesdeevaluarse.

lista_destino Requerido.Listadenúmerosdelíneaoetiquetasdelíneaseparadosporcomas.

Comentarios

Elvalordeexpresióndeterminaaquélíneadelista_destinosaltalaejecución.Sielvalordeexpresiónesmenorque1omayorqueelnúmerodeelementosenlalista,seproduceunodelossiguientesresultados:

Siexpresiónes EntoncesIguala0 Elcontrolsetransfierealainstrucción

quesigueaOn...GoSuboOn...GoTo.Mayorqueelnúmerodeelementosenunalista

ElcontrolsetransfierealainstrucciónquesigueaOn...GoSuboOn...GoTo.

Negativo Seproduceunerror.Mayorque255 Seproduceunerror.

Puedenmezclarnúmerosdelíneayetiquetasdelíneaenlamismalista.EnlaprácticanohaylímiteparaelnúmerodeetiquetasdelíneaodenúmerosdelíneaquesepuedenutilizarconOn...GoSubyOn...GoTo.Sinembargo,siutilizamásetiquetasonúmerosdelosquepuedecontenerunalíneasimple,debeutilizarelcarácterdecontinuacióndelíneaparaseguirlalínealógicaenlasiguientelíneafísica.

Page 467: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SugerenciaSelectCaseproporcionaunamaneramásestructuradayflexiblederealizarsaltosmúltiples.

Page 468: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Open(Instrucción)

Activaoperacionesdeentrada/salida(E/S)conunarchivo.

Sintaxis

Openrutaacceso[Formodo][Accessacceso][bloquear]As[#]númeroarchivo[Len=longitudregistro]

LasintaxisdelainstrucciónOpenconstalassiguientespartes:

Parte Descripción

Page 469: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

rutaacceso Requerido.Expresióndecadenaqueespecificaunnombredearchivo;puedeincluireldirectorioocarpetaylaunidaddedisco.

modo Requerido.Palabraclavequeespecificaelmododearchivo:Append,Binary,Input,OutputoRandom.Sinoseespecifica,elarchivoseabreconaccesoRandom.

acceso Opcional.Palabraclavequeespecificalasoperacionespermitidasenelarchivoabierto:Read,WriteoReadWrite.

bloquear Opcional.Palabraclavequeespecificalasoperacionespermitidasenelarchivoabiertoporotrosprocesos:Shared,LockRead,LockWriteyLockReadWrite.

númeroarchivo Requerido.Unnúmerodearchivoválidoentre1y511inclusive.ParaobtenerelnúmerodelsiguientearchivodisponibleseutilizalafunciónFreeFile.

longitudregistro Opcional.Númeroigualoinferiora32.767bytes.Enarchivosabiertosparaaccesoaleatorio,estevaloreslalongituddelregistro.Paraarchivossecuenciales,estevaloreselnúmerodecaracteresalmacenadosenbúfer.

Comentarios

AntesdepoderejecutarunaoperacióndeE/Senunarchivo,éstedebeestarabierto.OpenasignaunbúferparaoperacionesdeE/Sconelarchivoydeterminaelmododeaccesoquesedebeutilizarconelbúfer.

Sielarchivoespecificadoconrutaaccesonoexiste,secreaalabrirunarchivoenlosmodosAppend,Binary,OutputoRandom.

Sielarchivoyalohaabiertootroprocesoynosepermiteeltipodeaccesoespecificado,laoperaciónOpenfracasayseproduceunerror.

LacláusulaLenseignorasimodoesBinary.

ImportanteEnlosmodosBinary,InputyRandomsepuedeabrirunarchivoutilizandounnúmerodearchivodistintosinnecesidaddecerrarloantes.EnlosmodosAppendyOutputdebecerrarelarchivoparapoderabrirloconunnúmerodearchivodistinto.

Page 470: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OptionBase(Instrucción)

Seusaenelniveldemóduloparadeclararellímiteinferiorpredeterminadoparasubíndicesdematriz.

Page 471: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

OptionBase{0|1}

Comentarios

Comolabasepredeterminadaes0,lainstrucciónOptionBasenuncaserequiere.Sinembargo,siusalainstruccióndebeaparecerenunmóduloantesdecualquierprocedimiento.OptionBasesólopuedeaparecerunavezenunmóduloydebeprecederalasdeclaracionesdematrizqueincluyenlasdimensiones.

NotaLacláusulaToenlasinstruccionesDim,Private,Public,ReDimyStaticproporcionaunaformamásflexibledecontrolarelintervalodelossubíndicesdeunamatriz.Sinembargo,sinoestableceexplícitamenteellímiteinferiorconunacláusulaTo,puedeusarOptionBaseparacambiarellímiteinferiorpredeterminadoa1.LabasedeunamatrizcreadaconlafunciónArrayolapalabraclaveParamArrayescero;OptionBasenoafectaaParamArray(olafunciónArray,cuandosecalificaconelnombredesubibliotecadetipo,porejemploVBA.Array).

LainstrucciónOptionBasesóloafectaellímiteinferiordelasmatricesenelmódulodondeseubicalainstrucción.

Page 472: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OptionCompare(Instrucción)

Seusaenelniveldemóduloparadeclararelmododecomparaciónpredeterminadoqueseusacuandosecomparandatosdetipocadena.

Page 473: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

OptionCompare{Binary|Text|Database}

Comentarios

Siseusa,lainstrucciónOptionComparedebeaparecerenunmóduloantesdecualquierprocedimiento.

LainstrucciónOptionCompareespecificaelmétododecomparacióndecadena(Binary,TextoDatabase)paraunmódulo.SiunmódulonoincluyeunainstrucciónOptionCompare,elmétododecomparacióndetextopredeterminadoesBinary.

OptionCompareBinarycomparacadenasusandocomocriteriodecomparaciónunordenderivadodelasrepresentacionesinternasbinariasdeloscaracteres.EnMicrosoftWindows,laordenaciónsedeterminadeacuerdoconlapáginadecódigos.Enelejemplosiguientesemuestrauncriteriodeordenaciónbinariotípico:

A<B<E<Z<a<b<e<z<À<Ê<Ø<à<ê<ø

OptionCompareTextcomparacadenasusandocomocriteriounaordenacióndetextoquenodistinguemayúsculasdeminúsculasdeterminadoporlaconfiguraciónregionaldelsistema.CuandoseordenanlosmismoscaracteresmedianteOptionCompareText,seproducelasiguienteordenacióndetexto:

(A=a)<(À=à)<(B=b)<(E=e)<(Ê=ê)<(Z=z)<(Ø=ø)

SolamentepuedeutilizarOptionCompareDatabasedentrodeMicrosoftAccess.Estodacomoresultadocomparacionesdecadenabasadasenelorden,queestádeterminadoporelidentificadorlocaldelabasededatosenlaquetienenlugarlascomparacionesdecadena.

Page 474: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OptionExplicit(Instrucción)

Seusaenelniveldemóduloparaforzardeclaracionesexplícitasdetodaslasvariablesendichomódulo.

Page 475: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

OptionExplicit

Comentarios

Siseusa,lainstrucciónOptionExplicitdebeaparecerenunmóduloantesdecualquierprocedimiento.

CuandoOptionExplicitapareceenunmódulo,debedeclararexplícitamentetodaslasvariablesmediantelasinstruccionesDim,Private,Public,ReDimoStatic.Siintentausarunnombredevariablenodeclarado,ocurriráunerrorentiempodecompilación.

SinousalainstrucciónOptionExplicittodaslasvariablesnodeclaradassonVariant,amenosqueeltipopredeterminadoestéespecificadodeotramaneraconunainstrucciónDeftipo.

NotaUtiliceOptionExplicitparaevitarescribirincorrectamenteelnombredeunavariableexistenteoparaevitarconfusionesenelcódigo,dondeelalcancedelavariablenoestáclaro.

Page 476: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OptionPrivate(Instrucción)

Page 477: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Cuandoseutilizaenaplicacioneshostquepermitenreferenciasatravésdemúltiplesproyectos,OptionPrivateModuleimpidequesehagareferenciaalcontenidodelmódulofueradelproyecto.Enlasaplicacioneshostquenopermitenestetipodereferencias,comoversionesindependientesdeVisualBasic,lainstrucciónOptionPrivatenotieneefecto.

Sintaxis

OptionPrivateModule

Comentarios

Siseusa,lainstrucciónOptionPrivatedebeaparecerenunniveldemódulo,antesdecualquierprocedimiento.

CuandounmódulocontieneOptionPrivateModule,laspartespúblicas,porejemplovariables,objetos,ytiposdefinidosporelusuariodeclaradosenelniveldemódulotodavíaestándisponiblesdentrodelproyectoquecontieneelmódulo,peronoestándisponiblesparaotrasaplicacionesoproyectos.

NotaOptionPrivatesóloseutilizaparaaplicacioneshostqueadmitenlacargasimultáneademúltiplesproyectosypermitenreferenciasentrelosproyectoscargados.Porejemplo,MicrosoftExcelpermitecargarmúltiplesproyectosysepuedeutilizarOptionPrivateModulepararestringirla

Page 478: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

visibilidaddeproyectoscruzados.AunqueVisualBasicpermitecargarmúltiplesobjetos,nuncasepermitenenVisualBasiclasreferenciasentreproyectos.

Page 479: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 480: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Print#(Instrucción)

Escribeenunarchivosecuenciallosdatosconformatodepresentación.

Sintaxis

Print#númeroarchivo,[listasalida]

LasintaxisdelainstrucciónPrint#constalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.listasalida Opcional.Expresiónolistadeexpresionespara

imprimir.

Valor

Elargumentolistasalidatienelosvaloressiguientes:

Page 481: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

[{Spc(n)|Tab[(n)]}][expresión][posicióncarácter]

Parte DescripciónSpc(n) Seutilizaparainsertarcaracteresdeespacioenlasalida,

dondeneselnúmerodecaracteresdeespacioparainsertar.Tab(n) Seutilizaparacolocarelpuntodeinserciónenunanúmero

decolumnaabsoluta,dondeneselnúmerodecolumna.UtiliceTabsinargumentosparacolocarelpuntodeinserciónalcomienzodelasiguientezonadeimpresión.

expresión Expresiónnuméricaoexpresióndecadenaquesevaaimprimir.

posicióncarácter Especificaelpuntodeinsercióndelcaráctersiguiente.Seutilizaunpuntoycoma(;)paraespecificarqueelpuntodeinsercióndebeestarinmediatamentedespuésdelúltimocaráctermostrado.UtiliceTab(n)paracolocarelpuntodeinserciónenunnúmerodecolumnaabsoluta.UtiliceTabsinargumentosparacolocarelpuntodeinserciónalcomienzodelasiguientezonadeimpresión.Siseomiteposicióncarácter,elsiguientecarácterseimprimeenlalíneasiguiente.

Comentarios

LosdatosqueseescribenenunarchivoconPrint#seleennormalmenteconLineInput#oInput.

Siomitelistasalidaysóloincluyeunseparadordelistasdespuésdenúmeroarchivo,seimprimeunalíneaenblancoenelarchivo.Sepuedensepararvariasexpresionespormediodeunespacioenblancoodeunpuntoycoma.

EnelcasodedatosdetipoBooleanseimprimeTrueoFalse.LaspalabrasclaveTrueyFalsenosetraducen,cualquieraquesealaconfiguraciónregional.

LosdatosdetipoDateseescribenenelarchivoutilizandoelformatocortodefechaestándarreconocidoporelsistema.Cuandonoseponeelcomponentecorrespondientealafechaoalahora,oésteesigualacero,sóloseescribeenel

Page 482: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

archivolapartesuministrada.

NoseescribenadaenelarchivosilosdatosdelistasalidasondetipoEmpty.Sinembargo,silistasalidaesNull,Nullseescribeenelarchivo.

ParadatosdeError,lasalidaaparececomoErrorcódigoerror.LapalabraclaveErrornosetraducen,cualquieraquesealaconfiguraciónregional.

TodoslosdatosqueseescribenenelarchivoconPrint#seadaptanregionalmente;esdecir,sedaformatoaldatousandoelseparadordecimaladecuado.

PuestoquePrint#escribeunaimagendelosdatosenelarchivo,debedelimitarlosdatosparaqueseimprimancorrectamente.SiutilizaTabsinargumentosparamoverlaposicióndeimpresiónalasiguientezonadeimpresión,Print#tambiénescribeenelarchivolosespaciosentrecamposdeimpresión.

NotaSienelfuturodesealeerdatosdeunarchivopormediodelainstrucciónInput#,utilicelainstrucciónWrite#envezdelainstrucciónPrint#paraescribirlosdatosenelarchivo.LautilizacióndeWrite#aseguralaintegridaddecadacampodedatosseparado,aldelimitarloadecuadamente,demodoquesepuedaleerotravezutilizandoInput#.LautilizacióndeWrite#aseguratambiénquelosdatossepuedanleercorrectamenteencualquierconfiguraciónregional.

Page 483: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 484: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 485: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Private(Instrucción)

Seusaenelniveldemóduloparadeclararvariablesprivadasyparaasignarespaciodealmacenamiento.

Sintaxis

Private[WithEvents]nombre_variable[([subíndices])][As[New]tipo][,[WithEvents]nombre_variable[([subíndices])][As[New]tipo]]...

LasintaxisdelainstrucciónPrivateconstadelassiguientespartes:

Page 486: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte DescripciónWithEvents Opcional.Palabraclavequeespecificaquenombre_variablees

unavariabledeobjetoutilizadapararesponderaeventosdesencadenadosporunobjetoActiveX.WithEventssolamenteesválidoenmódulosdeclase.PuededeclarartantasvariablesindividualescomodeseemedianteWithEvents,peronopuedecrearmatricesconWithEvents.NopuedeutilizarNewconWithEvents.

nombre_variable

Requerido.Nombredelavariable;siguelasconvencionesestándardenombresdevariable.

subíndices Opcional.Dimensionesdeunavariabledematriz;sepuedendeclararhasta60dimensionesmúltiples.Elargumentosubíndicesutilizalasiguientesintaxis:

[inferiorTo]superior[,[inferiorTo]superior]... Cuandonosedeclaraexplícitamenteeninferior,ellímite

inferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.EllímiteinferiorescerosinohayningunainstrucciónOptionBase.

New Opcional.Palabraclavequepermitelacreaciónimplícitadeunobjeto.SiutilizaNewcuandodeclaralavariabledeobjeto,secreaunanuevainstanciadelobjetocomoprimerareferencia,deformaquenotienequeutilizarlainstrucciónSetparaasignarlareferenciadelobjeto.LapalabraclaveNewnosepuedeutilizarparadeclararvariablesdecualquiertipodedatosintrínseco,nosepuedeutilizarparadeclararinstanciasdeobjetosdependientesynosepuedeutilizarconWithEvents.

tipo Opcional.Tipodedatosdelavariable;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,untipodefinidoporelusuario,ountipodeobjeto.UtiliceunacláusulaAstipodistintaparacadavariablequedefina.

Comentarios

Page 487: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LasvariablesPrivatesóloestándisponiblesparaelmóduloenelquesedeclaran.

UselainstrucciónPrivateparadeclarareltipodedatosdeunavariable.Porejemplo,lainstrucciónsiguientedeclaraunavariablecomountipoInteger:

PrivateNúmeroDeEmpleadosAsInteger

UtilicetambiénunainstrucciónPrivateparadeclarareltipodeobjetodeunavariable.Lasiguientelíneadeclaraunavariableparaunanuevainstanciadeunahojadecálculo.

PrivateXAsNewWorksheet

SinoutilizalapalabraclaveNewaldeclararunavariabledeobjeto,lavariablequeserefierealobjetodebeasignarseaunobjetoexistentemediantelainstrucciónSetantesdequepuedautilizarse.Hastaqueseleasigneunobjeto,lavariabledeobjetodeclaradatieneelvalorespecialNothing,elcualindicaquenoserefiereaningunainstanciaenparticulardeunobjeto.

SinoseespecificauntipodedatosountipodeobjetoynoexisteunainstrucciónDeftipoenelmódulo,lavariablepredeterminadaesVariant.

TambiénpuedeusarlainstrucciónPrivateconparéntesisvacíosparadeclararmatricesdinámicas.Despuésdedeclararunmatrizdinámica,uselainstrucciónReDimdentrodeunprocedimientoparadefinirelnúmerodedimensionesyelementosdeunamatriz.SiintentavolveradeclararunadimensiónparaunavariabledematrizcuyotamañosehaespecificadoexplícitamenteenunainstrucciónPrivate,PublicoDim,ocurriráunerror.

Cuandoseinicializanlasvariables,unavariablenuméricaseinicializaa0,unacadenadelongitudvariableseinicializaaunacadenadelongitudcero("")yunacadenadelongitudfijaserellenaconceros.LasvariablesVariantseinicializanaEmpty.Cadaelementodeunavariabledeuntipodefinidoporelusuarioseinicializacomosifueraunavariabledistinta.

NotaCuandoutilicelainstrucciónPrivateenunprocedimiento,generalmenteincluirádichainstrucciónPrivatealprincipiodelprocedimiento.

Page 488: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 489: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 490: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PropertyGet(Instrucción)

Page 491: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declaraelnombre,losargumentosyelcódigoquecomponenelcuerpodeunprocedimientoProperty,elcualobtieneelvalordeunapropiedad.

Sintaxis

[Public|Private|Friend][Static]PropertyGetnombre[(lista_argumentos)][Astipo][instrucciones][nombre=expresión][ExitProperty][instrucciones][nombre=expresión]

EndProperty

LasintaxisdelainstrucciónPropertyGetconstadelassiguientespartes:

Parte DescripciónPublic Opcional.IndicaqueelprocedimientoPropertyGetes

accesibleparatodoslosdemásprocedimientosdetodoslosmódulos.SiseusaenunmóduloquecontieneunainstrucciónOptionPrivate,elprocedimientonoestarádisponiblefueradelproyecto.

Private Opcional.IndicaqueelprocedimientoPropertyGetsóloesaccesibleparaotrosprocedimientoscontenidosenelmódulodondesedeclara.

Friend Opcional.Seusasolamenteenunmódulodeclase.IndicaqueelprocedimientoPropertyGetesvisibleatravésdelproyecto,peronoesvisibleparauncontroladordeunainstanciadeunobjeto.

Page 492: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Static Opcional.IndicaquelasvariableslocalesdelprocedimientoPropertyGetseconservanentredistintasllamadas.ElatributoStaticnoafectaalasvariablesdeclaradasfueradelprocedimientoPropertyGet,inclusoaunqueseutilicenenelmismo.

nombre Requerido.NombredelprocedimientoPropertyGet;siguelasconvencionesestándardenombresdevariables,exceptoenqueelnombrepuedeserelmismoqueeldeunprocedimientoPropertyLetoPropertySetdelmismomódulo.

lista_argumentos

Opcional.ListadevariablesquerepresentanargumentosquesepasanalprocedimientoPropertyGetcuandosellamaaéste.Losdistintosargumentosseseparanmediantecomas.ElnombreyeltipodedatosdecadaargumentodeunprocedimientoPropertyGetdebenserigualesqueenlosargumentoscorrespondientesdeunprocedimientoPropertyLet(silohay).

tipo Opcional.TipodedatosdelvalordevueltoporelprocedimientoPropertyGet;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(exceptolongitudfija),Object,Variant,tipodefinidoporelusuario,ymatrices.

EltipoderetornodeunprocedimientoPropertyGetdebeserdelmismotipodedatosqueelúltimo(aveceselúnico)argumentodeunprocedimientoPropertyLetcorrespondiente(silohay)quedefineelvalorasignadoalapropiedadenlapartederechadeunaexpresión.

instrucciones Opcional.CualquiergrupodeinstruccionesqueseejecutandentrodelcuerpodelprocedimientoPropertyGet.

expresión Opcional.ValordelapropiedaddevueltoporelprocedimientodefinidoporlainstrucciónPropertyGet.

Elargumentolista_argumentosconstadelassiguientespartesysintaxis:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo][=valor_predeterminado]

Parte Descripción

Page 493: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Optional Opcional.Indicaquenosenecesitaunargumento.Siseutiliza,todoslosargumentossubsiguientesdelista_argumentostambiéndebenseropcionalesysedebendeclararmediantelapalabraclaveOptional.

ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeselargumentopredeterminadoenVisualBasic.ParamArray Opcional.Sóloseutilizacomoúltimoargumentode

lista_argumentosparaindicarqueelargumentofinalesunamatrizOptionaldeelementostipoVariant.LapalabraclaveParamArraylepermiteproporcionarunnúmeroarbitrariodeargumentos.NosepuedeutilizarconByVal,ByRefuOptional.

nombre_variable

Requerido.Nombredelavariablequerepresentaalargumento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Eltipodedatosdelargumentopasadoalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(nocompatibleactualmente),Date,String(sólodelongitudvariable),Object,Variant,ountipodeobjetoespecífico.SielparámetronoesOptional,sepuedeespecificartambiénuntipodefinidoporelusuario.

valor_predeterminado

Opcional.Cualquierconstanteoexpresióndeconstante.SóloesválidoparaparámetrosOptional.SieltipoesObject,unvalorpredeterminadoexplícitosólopuedeserNothing.

Comentarios

SinoseespecificaexplícitamentemediantePublic,PrivateoFriend,losprocedimientosPropertysonpúblicosdemanerapredeterminada.SinoseusaStatic,elvalordelasvariableslocalesnoseconservaentredistintasllamadas.LapalabraclaveFriendsolamentepuedeutilizarseenmódulosdeclase.Sinembargo,sepuedeaccederalosprocedimientosFriendporprocedimientosencualquiermódulodeunproyecto.UnprocedimientoFriendnoapareceenla

Page 494: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

bibliotecadetipodesuclaseprimaria.

Todoelcódigoejecutabledebeestarenprocedimientos.NopuededefinirunprocedimientoPropertyGetdentrodeotroprocedimientoProperty,SuboFunction.

LainstrucciónExitPropertycausalainmediatasalidadeunprocedimientoPropertyGet.LaejecucióndelprogramacontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoPropertyGet.CualquiernúmerodeinstruccionesExitPropertypuedeaparecerencualquierlugardeunprocedimientoPropertyGet.

AligualqueunprocedimientoSubyPropertyLet,unprocedimientoPropertyGetesunprocedimientodistintoquepuedetomarargumentos,llevaracabounaseriedeinstruccionesycambiarelvalordesusargumentos.Sinembargo,adiferenciadeunprocedimientoSuboPropertyLet,puedeutilizarunprocedimientoPropertyGetenelladoderechodeunaexpresióndelamismaformaenqueutilizaFunctionoelnombredeunapropiedadcuandodeseadevolverelvalordeunapropiedad.

Page 495: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 496: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 497: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PropertyLet(Instrucción)

Page 498: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declaraelnombre,losargumentos,yelcódigoqueformanelcuerpodeunprocedimientoPropertyLet,elcualasignaunvaloraunapropiedad.

Sintaxis

[Public|Private|Friend][Static]PropertyLetnombre([lista_argumentos,]valor)[instrucciones][ExitProperty][instrucciones]

EndProperty

LasintaxisdelainstrucciónPropertyLetconstadelassiguientespartes:

Parte DescripciónPublic Opcional.IndicaqueelprocedimientoPropertyLetes

accesibleparatodoslosdemásprocedimientosdetodoslosmódulos.SiseusaenunmóduloquecontieneunainstrucciónOptionPrivate,elprocedimientonoseencuentradisponiblefueradelproyecto.

Private Opcional.IndicaqueelprocedimientoPropertyLetesaccesiblesóloparaotrosprocedimientosdelmódulodondesehadeclarado.

Page 499: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Friend Opcional.Sóloseutilizaenunmódulodeclase.IndicaqueelprocedimientoPropertyLetesvisibleatravésdelproyecto,peronoporuncontroladordeunainstanciadeunobjeto.

Static Opcional.IndicaquelasvariableslocalesdelprocedimientoPropertyLetseconservanentredistintasllamadas.ElatributoStaticnoafectaalasvariablesquesehandeclaradofueradelprocedimientoPropertyLet,inclusoaunqueseusenenelprocedimiento.

nombre Requerido.NombredelprocedimientoPropertyLet;siguelasconvencionesestándardenombresdevariables,exceptoenqueelnombrepuedeserelmismoqueeldelosprocedimientosPropertyGetoPropertySetdelmismomódulo.

lista_argumentos

Requerido.ListadevariablesquerepresentanargumentosquesepasanalllamaralprocedimientoPropertyLet.Losdistintosargumentosseseparanmediantecomas.ElnombreyeltipodedatosdecadaargumentodeunprocedimientoPropertyLetdebenserigualesquelosargumentoscorrespondientesdeunprocedimientoPropertyGet.

valor Requerido.Variablequecontieneelvalorqueseasignaalapropiedad.Cuandosellamaalprocedimiento,esteargumentoapareceenlapartederechadelaexpresiónquehacelallamada.EltipodedatosdevalordebeserelmismoqueeldeltipodevueltoporelcorrespondienteprocedimientoPropertyGet.

instrucciones Opcional.CualquiergrupodeinstruccionesqueseejecutedentrodelprocedimientoPropertyLet.

Elargumentolista_argumentosconstadelassiguientespartesysintaxis:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo][=valor_predeterminado]

Parte DescripciónOptional Opcional.Indicaquenosenecesitaunargumento.Sise

utiliza,todoslosargumentossubsiguientesdelista_argumentostambiéndebenseropcionalesysedeben

Page 500: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

declararmediantelapalabraclaveOptional.ObservequelapartederechadeunaexpresiónPropertyLetnopuedeserOptional.

ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeselargumentopredeterminadoenVisualBasic.ParamArray Opcional.Sóloseutilizacomoelúltimoargumentode

lista_argumentosparaindicarqueelargumentofinalesunamatrizOptionaldeelementostipoVariant.LapalabraclaveParamArraylepermiteproporcionarunnúmeroarbitrariodeargumentos.NosepuedeutilizarconByVal,ByRefuOptional.

nombre_variable

Requerido.Elnombredelavariablequerepresentaalargumento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Eltipodedatosdelargumentopasadoalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(solamentedelongitudvariable),Object,Variant,ountipodeobjetoespecífico.SielparámetronoesOptional,tambiénsepuedeespecificaruntipodefinidoporelusuario.

valor_predeterminado

Opcional.Cualquierconstanteoexpresióndeconstante.SóloesválidoparaparámetrosOptional.SieltipoesObject,unvalorpredeterminadoexplícitosólopuedeserNothing.

NotaCualquierinstrucciónPropertyLetdebedefinirporlomenosunargumentoparaelprocedimientoquedefine.Eseargumento(oelúltimoargumentosihaymásdeuno)contieneelvalorrealqueseasignaalapropiedadcuandoseinvocaelprocedimientodefinidoporlainstrucciónPropertyLet.Eseargumentosedenominavalorenlasintaxisanterior.

Comentarios

SinoseespecificaexplícitamentemediantePublic,PrivateoFriend,los

Page 501: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

procedimientosPropertysonpúblicosdemanerapredeterminada.SinoseusaStatic,elvalordelasvariableslocalesnoseconservaentredistintasllamadas.LapalabraclaveFriendsolamentesepuedeusarenmódulosdeclase.Sinembargo,losprocedimientosencualquiermódulodeunproyectopuedenaccederalosprocedimientosFriend.UnprocedimientoFriendnoapareceenlabibliotecadetipodesuclaseprimaria,nisepuedeenlazarposteriormente.

Todocódigoejecutabledebeestarenprocedimientos.NopuededefinirunprocedimientoPropertyLetdentrodeotroprocedimientoProperty,SuboFunction.

LainstrucciónExitPropertycausalainmediatasalidadeunprocedimientoPropertyLet.LaejecucióndelprogramacontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoPropertyLet.CualquiernúmerodeinstruccionesExitPropertypuedeaparecerencualquierlugardeunprocedimientoPropertyLet.

AligualqueunprocedimientoFunctionyPropertyGet,unprocedimientoPropertyLetesunprocedimientodistintoquepuedetomarargumentos,llevaracabounaseriedeinstruccionesycambiarelvalordesusargumentos.Sinembargo,adiferenciadeunprocedimientoFunctionyPropertyGet,loscualesdevuelvenunvalor,unprocedimientoPropertyLetsólosepuedeusarenelladoizquierdodeunaexpresióndeasignacióndepropiedadodeunainstrucciónLet.

Page 502: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 503: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 504: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PropertySet(Instrucción)

Page 505: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declaraelnombre,losargumentos,yelcódigoquecomponenelcuerpodeunprocedimientoProperty,elcualasignaunareferenciaaunobjeto.

Sintaxis

[Public|Private|Friend][Static]PropertySetnombre([lista_argumentos,]referencia)[instrucciones][ExitProperty][instrucciones]

EndProperty

LasintaxisdelainstrucciónPropertySetconstadelassiguientespartes:

Parte DescripciónOptional Opcional.Indicaqueelargumentolopuedeproporcionarel

llamadorono.Public Opcional.IndicaqueelprocedimientoPropertySetes

accesibleparatodoslosdemásprocedimientosdetodoslosmódulos.SiseusaenunmóduloquecontienelainstrucciónOptionPrivate,elprocedimientonoestádisponiblefueradelproyecto.

Private Opcional.IndicaqueelprocedimientoPropertySetesaccesiblesóloparaotrosprocedimientosdelmódulodondesedeclara.

Friend Opcional.Seutilizasóloenunmódulodeclase.IndicaqueelprocedimientoPropertySetesvisibleatravésdelproyecto,peronoporuncontroladordeunainstanciadeunobjeto.

Static Opcional.Indicaquelasvariableslocalesdelprocedimiento

Page 506: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PropertySetseconservanentredistintasllamadas.ElatributoStaticnoafectaalasvariablesquesedeclaranfueradelprocedimientoProperty,inclusoaunqueseusenenelprocedimiento.

nombre Requerido.NombredelprocedimientoPropertySet;siguelasconvencionesestándardenombresdevariables,exceptoenqueelnombrepuedeserelmismoqueeldelosprocedimientosPropertyGetoPropertyLetdelmismomódulo.

lista_argumentos

Requerido.ListadevariablesquerepresentanargumentosquesepasanalprocedimientoPropertySetcuandoselellama.Losdistintosargumentosseseparanmediantecomas.

referencia Requerido.Variablequecontienelareferenciadeobjetoutilizadaenlapartederechadelaasignacióndereferenciadeobjeto.

instrucciones Opcional.CualquiergrupodeinstruccionesqueseejecutandentrodelcuerpodelprocedimientoProperty.

Elargumentolista_argumentosconstadelassiguientespartesysintaxis:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo][=valor_predeterminado]

Parte DescripciónOptional Opcional.Indicaquenosenecesitaunargumento.Sise

utiliza,todoslosargumentossubsiguientesdelista_argumentostambiéndebenseropcionalesysedebendeclararmediantelapalabraclaveOptional.ObservequelapartederechadeunaexpresiónPropertySetnopuedeserOptional.

ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeselmodopredeterminadoenVisualBasic.ParamArray Opcional.Sóloseutilizacomoelúltimoargumentoen

lista_argumentosparaindicarqueelargumentofinalesunamatrizOptionaldeelementostipoVariant.Lapalabraclave

Page 507: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ParamArraylepermiteproporcionarunnúmeroarbitrariodeargumentos.NosepuedeutilizarconByVal,ByRefuOptional.

nombre_variable

Requerido.Nombredelavariablequerepresentaelargumento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Tipodedatosdelargumentoquepasaalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(solamentelongitudvariable),Object,Variant,ountipodeobjetoespecífico.SielparámetronoesOptional,sepuedeespecificartambiénuntipodefinidoporelusuario.

valor_predeterminado

Opcional.Cualquierconstanteoexpresióndeconstante.SóloesválidoparaparámetrosOptional.SieltipoesObject,unvalorpredeterminadoexplícitosólopuedeserNothing.

NotaCualquierinstrucciónPropertySetdebedefinirporlomenosunargumentoparaelprocedimientoquedefine.Eseargumento(oelúltimoargumentosihaymásdeuno)contendrálareferenciadelobjetorealparalapropiedadcuandoseinvoqueelprocedimientodefinidoporlainstrucciónPropertySet.Seledenominareferenciaenlasintaxisanterior.NopuedeserOptional.

Comentarios

SinoseespecificanexplícitamentemediantePublic,PrivateoFriend,losprocedimientosPropertyseránpúblicosdemanerapredeterminada.SinoseusaStatic,elvalordelasvariableslocalesnoseconservaentredistintasllamadas.LapalabraclaveFriendsolamentesepuedeusarenmódulosdeclase.Sinembargo,losprocedimientosencualquiermódulodeunproyectopuedenaccederalosprocedimientosFriend.UnprocedimientoFriendnoapareceenlabibliotecadetipodesuclaseprimaria,nisepuedeenlazarposteriormente.

Todocódigoejecutabledebeestarenprocedimientos.NopuededefinirunprocedimientoPropertySetdentrodeotroprocedimientoProperty,Subo

Page 508: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Function.

LainstrucciónExitPropertycausalainmediatasalidadeunprocedimientoPropertySet.LaejecucióndelprogramacontinúaconlainstrucciónquesiguealainstrucciónquellamóalprocedimientoPropertySet.CualquiernúmerodeinstruccionesExitPropertypuedeaparecerencualquierlugardeunprocedimientoPropertySet.

AligualqueunprocedimientoFunctionyPropertyGet,PropertySetesunprocedimientodistintoquepuedetomarargumentos,llevaracabounaseriedeinstruccionesycambiarelvalordesusargumentos.Sinembargo,adiferenciadeunprocedimientoFunctionyPropertyGet,loscualesdevuelvenunvalor,unprocedimientoPropertySetsólosepuedeusarenelladoizquierdodeunaasignacióndereferenciadeobjeto(instrucciónSet).

Page 509: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 510: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 511: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Public(Instrucción)

Seusaenelniveldemóduloparadeclararvariablespúblicasyasignarlesespacioparaalmacenamiento.

Page 512: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Public[WithEvents]nombre_variable[([subíndices])][As[New]tipo][,[WithEvents]nombre_variable[([subíndices])][As[New]tipo]]...

LasintaxisdelainstrucciónPublicconstadelassiguientespartes:

Parte DescripciónWithEvents Opcional.Lapalabraclaveespecificaquevarnameesuna

variabledeobjetoutilizadapararesponderaloseventosdesencadenadosporunobjetoActiveX.WithEventsesválidosolamenteenmódulosdeclase.PuededeclarartantasvariablesindividualescomodeseemedianteWithEvents,peronopuedecrearmatricesconWithEvents.NopuedeutilizarNewconWithEvents.

nombre_variable

Requerido.Nombredelavariable;siguelasconvencionesestándardenombresdevariable.

Subíndices Opcional.Dimensionesdeunavariabledematriz;sepuedendeclararhasta60dimensionesmúltiples.Elargumentosubíndicesusalasintaxissiguiente:

[inferiorTo]superior[,[inferiorTo]superior]...

Cuandonosedeclaraexplícitamenteeninferior,ellímiteinferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.EllímiteinferiorescerosinohayningunainstrucciónOptionBase.

New Opcional.Palabraclavequepermitelacreaciónimplícitadeunobjeto.SiutilizaNewcuandodeclaralavariabledeobjeto,secreaunanuevainstanciadelobjetocomoprimerareferencia,deformaquenotienequeutilizarlainstrucciónSetparaasignarlareferenciadeobjeto.LapalabraclaveNewnosepuedeutilizarparadeclararvariablesdecualquiertipodedatosintrínseco,nosepuedeutilizarparadeclararinstanciasdeobjetosdependientesynosepuedeutilizarconWithEvents.

tipo Opcional.Tipodedatosdelavariable;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String,(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,

Page 513: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

untipodefinidoporelusuario,ountipodeobjeto.UseunacláusulaAstipodistintaparacadavariablequesedefina.

Comentarios

LasvariablesdeclaradasmediantelainstrucciónPublicestándisponiblesparatodoslosprocedimientosentodoslosmódulosdetodaslasaplicaciones,amenosqueOptionPrivateModuleestéenefecto;enestecaso,lasvariablessólosonpúblicasdentrodelproyectoenelqueresiden.

PrecauciónLainstrucciónPublicnosepuedeusarenunmódulodeclaseparadeclararunavariabledecadenadelongitudfija.

UselainstrucciónPublicparadeclarareltipodedatosdeunavariable.Porejemplo,lainstrucciónsiguientedeclaraunavariablecomodetipoInteger:

PublicNúmeroDeEmpleadosAsInteger

UtilicetambiénlainstrucciónPublicparadeclarareltipodeobjetodeunavariable.Lainstrucciónsiguientedeclaraunavariableparaunanuevainstanciadeunahojadecálculo.

PublicXAsNewWorksheet

SinoutilizalapalabraclaveNewaldeclararunavariabledeobjeto,lavariablequeserefiereaunobjetodebeasignarseaunobjetoexistentemediantelainstrucciónSetantesdequesepuedausar.Hastaqueseleasigneunobjeto,lavariabledeobjetodeclaradatieneelvalorespecialNothing,elcualindicaquenoserefiereaningunainstanciaenparticulardeunobjeto.

TambiénpuedeutilizarunainstrucciónPublicconparéntesisvacíosparadeclararmatricesdinámicas.Despuésdedeclararunamatrizdinámica,uselainstrucciónReDimdentrodeunprocedimientoparadefinirelnúmerodedimensionesyelementosdelamatriz.SiintentavolveradeclararundimensiónparaunamatrizcuyotamañosehaespecificadoexplícitamenteenunainstrucciónPrivate,PublicoDim,ocurriráunerror.

Page 514: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SinoespecificauntipodedatosountipodeobjetoynoexisteunainstrucciónDeftipoenelmódulo,lavariableesVariantdemanerapredeterminada.

Cuandoseinicializanlasvariables,unavariablenuméricaseinicializaa0,unacadenadelongitudvariableseinicializaaunacadenadelongitudcero("")yunacadenadelongitudfijaserellenaconceros.LasvariablesVariantseinicializanaEmpty.Cadaelementodeunavariabledeuntipodefinidoporelusuarioseinicializacomosifueraunavariabledistinta.

Page 515: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Put(Instrucción)

Escribeenunarchivodediscolosdatoscontenidosenunavariable.

Sintaxis

Page 516: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Put[#]númeroarchivo,[númeroregistro],nombrevariable

LasintaxisdelainstrucciónPutconstalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.númeroregistro Opcional.TipoVariant(Long).Númeroderegistro

(archivosenmodoRandom)onúmerodebyte(archivosenmodoBinary,enelcualsecomienzaaescribir.

nombrevariable Requerido.Nombredelavariablequecontienelainformaciónquesevaaescribireneldisco.

Comentarios

LosdatosqueseescribenconPutnormalmenteseleendeunarchivoconGet.

Elprimerregistroobytedeunarchivoseencuentraenlaposición1,elsegundoenlaposición2yasísucesivamente.Siomitenúmeroregistro,seescribeelsiguienteregistroobytequeseencuentradespuésdelaúltimainstrucciónGetoPutoaquélalqueseñalalaúltimafunciónSeek.Debeincluircomasdedelimitación,porejemplo:

Put#4,,BúferArchivo

EnlosarchivosabiertosenmodoRandomrigenlassiguientesreglas:

AunquelalongituddelosdatosescritosseamenorquelaespecificadaenlacláusulaLendelainstrucciónOpen,Putescribelosregistrossiguientessegúnloslímitesdelongitudderegistroyllenaelespacioentreelfindeunregistroyelcomienzodelsiguienteconelcontenidodelbúferdelarchivo.Puestoquelacantidaddedatosderellenonosepuededeterminarconcerteza,esconvenientequeelregistrotengalamismalongitudquelosdatosqueseescriben.SilalongituddelosdatosqueseescribenesmayorquelaespecificadaenlacláusulaLendelainstrucciónOpen,ocurreunerror.

Silavariableenlaqueseescribeesunacadenadelongitudvariable,la

Page 517: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

instrucciónPutescribeundescriptorde2bytesqueindicalalongituddelacadenayluegoescribelavariable.Lalongituddelregistro,especificadaporlacláusuladelainstrucciónOpen,debeserporlomenos2bytesmayorquelalongitudrealdelacadena.

SilavariablequesevaaescribiresunVariantdeuntiponumérico,Putescribe2bytesparaidentificarelVarTypedelVariantyluegoescribelavariable.Porejemplo,alescribirunVariantdeVarType3,Putescribe6bytes:2bytesparaidentificarunVariantdeVarType3(Long)y4bytesquecontienenlosdatosdeltipoLong.Lalongituddelregistro,especificadaporlacláusulaLendelainstrucciónOpen,debeserporlomenos2bytesmayorqueelnúmerorealdebytesnecesariosparaalmacenarlavariable.NotaPuedeutilizarlainstrucciónPutparaescribirunamatrizVariantendisco,peronopuedeemplearPutparaescribirendiscounVariantescalarquecontieneunamatriz.TampocopuedeutilizarPutparaescribirobjetosendisco.

SilavariableescritaesunaVariantdeltipoVarType8(String),Putescribe2bytesparaidentificarelVarType,2bytesparaindicarlalongituddelacadenayluegolosdatosdelacadena.Lalongituddelregistro,especificadaporlacláusulaLendelainstrucciónOpen,debeserporlomenos4bytesmayorquelalongitudrealdelacadena.

Silavariableescritaesunamatrizdinámica,Putescribeundescriptorcuyalongitudequivalea2más8veceselnúmerodedimensiones,esdecir,2+8*NumberOfDimensions.Lalongituddelregistro,especificadaporlacláusulaLendelainstrucciónOpen,debesermayoroigualquelasumadetodoslosbytesnecesariosparaescribirlosdatosyeldescriptordelamatriz.Porejemplo,lasiguientedeclaracióndematrizrequiere118bytescuandolamatrizseescribeendisco.DimMiMatriz(1To5,1To10)AsInteger

Los118bytessedistribuyendelasiguienteforma:18bytesparaeldescriptor(2+8*2)y100bytesparalosdatos(5*10*2).

Silavariableescritaesunamatrizdetamañofijo,Putsolamenteescribelosdatos.Noseescribeendisconingúndescriptor.

Page 518: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Silavariablequeseescribeesdecualquierotrotipo(niunacadenadelongitudvariableniunaVariant),Putescribesolamentelosdatosdelavariable.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebesermayoroigualquelalongituddelosdatosescritos.

Putescribeelementosdetiposdefinidosporelusuariocomosiescribieracadaunoporseparado,peronocolocadatosderellenoentreloselementos.Eneldisco,unamatrizdinámicaenuntipodefinidoporelusuarioescritaconPutincluyecomoprefijoundescriptorcuyalongitudesiguala2más8veceselnúmerodedimensiones,esdecir,2+8*NumberOfDimensions.LalongituddelregistroespecificadaporlacláusulaLendelainstrucciónOpendebesermayoroigualquelasumadetodoslosbytesnecesariosparaescribirloselementosporseparado,incluyendoalgunasmatricesysusdescriptores.

ParaarchivosabiertosenmodoBinary,tienenvigenciatodaslasreglasdelmodoRandom,conlassiguientesexcepciones:

LacláusulaLendelainstrucciónOpennotieneefecto.Putescribetodaslasvariableseneldiscoenformacontigua,esdecirsinrellenoentreregistros.

Paracualquiermatrizdistintadelaindicadaenuntipodefinidoporelusuario,Putescribesolamentelosdatos.Noescribeningúndescriptor.

Putescribelascadenasdecaracteresdelongitudvariablequenosonelementosdetiposdefinidosporelusuariosineldescriptordelongitudde2bytes.Elnúmerodebytesqueseescribeesigualalnúmerodecaracteresdelacadena.Porejemplo,enlassiguientesinstruccionesseescribe10bytesenelarchivonúmero1:VarCadena$=String$(10,"")

Put#1,,VarCadena$

Page 519: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Randomize(Instrucción)

Inicializaelgeneradordenúmerosaleatorios.

Sintaxis

Randomize[número]

ElargumentoopcionalnúmeroesuntipoVariantocualquierexpresiónnuméricaválida.

Page 520: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LainstrucciónRandomizeutilizanúmeroparainicializarelgeneradordenúmerosaleatoriosdelafunciónRndyleasignaunnuevovalordesemilla.Siomitenúmero,elvalordevueltoporelrelojdelsistemaseusacomoelnuevovalordesemilla.

SinoutilizalainstrucciónRandomize,lafunciónRnd(sinargumentos)utilizaelmismonúmerocomovalordesemillalaprimeravezqueselainvoca,usandodespuéscomovalordesemillaelúltimonúmerogenerado.

NotaPararepetirsecuenciasdenúmerosaleatorios,llamealafunciónRndconunargumentonegativoantesdeutilizarlainstrucciónRandomizeconunargumentonumérico.AlutilizarlainstrucciónRandomizeconelmismovalordenúmeronoserepitelasecuenciaanterior.

Page 521: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 522: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 523: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ReDim(Instrucción)

Seutilizaenelniveldeprocedimientoparareasignarespaciodealmacenamientoparavariablesdematrizdinámica.

Page 524: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

ReDim[Preserve]nombre_variable(subíndices)[Astipo][,nombre_variable(subíndices)[Astipo]]...

LasintaxisdelainstrucciónReDimconstadelassiguientespartes:

Parte DescripciónPreserve Opcional.Palabraclaveutilizadaparaconservarlosdatosdeuna

matrizexistentecuandosecambiaeltamañodelaúltimadimensión.

nombre_variable

Requerido.Nombredelavariable;siguelasconvencionesestándardenombredevariable.

subíndices Requerido.Dimensionesdeunavariabledematriz;sepuedendeclararhasta60dimensionesmúltiples.Elargumentosubíndicesutilizalasintaxissiguiente:

[inferiorTo]superior[,[inferiorTo]superior]...

Cuandonosedeclaraexplícitamenteeninferior,ellímiteinferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.EllímiteinferiorescerosinohayningunainstrucciónOptionBase.

tipo Opcional.Tipodedatosdelavariable;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,untipodefinidoporelusuario,ountipodeobjeto.UtiliceunacláusulaAstipodistintaparacadavariablequedefina.ParaunaVariantquecontieneunamatriz,tipodescribeeltipodecadaelementodelamatriz,peronocambialaVariantaalgúnotrotipo.

Comentarios

LainstrucciónReDimseutilizaparaasignarocambiareltamañodeunamatrizdinámicaqueyasehadeclaradoformalmentemediantelasinstruccionesPrivate,PublicoDimconparéntesisvacíos(sinsubíndicesdedimensiones).

Page 525: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PuedeutilizarlainstrucciónReDimrepetidamenteparacambiarelnúmerodeelementosydimensionesdeunamatriz.Sinembargo,nopuededeclararunamatrizdeuntipodedatosyluegousarReDimparacambiarlamatrizaotrotipodedatos,amenosquelamatrizestécontenidaenunaVariant.SilamatrizestácontenidaenunaVariant,eltipodeloselementossepuedecambiarmedianteunacláusulaAstipo,amenosqueestéutilizandolapalabraclavePreserve,encuyocasonosepermitencambiosaltipodedatos.

SiutilizalapalabraclavePreservesólopuedecambiareltamañodelaúltimadimensióndelamatrizynoesposiblecambiarelnúmerodedimensiones.Porejemplo,silamatrizsólotieneunadimensión,puedecambiareltamañodeesadimensiónporqueeslaúltimayúnicadimensión.Sinembargo,silamatriztienedosomásdimensiones,sólopuedecambiarladimensióndelaúltimaytodavíaconservarelcontenidodelamatriz.Elejemplosiguientemuestracómopuedeaumentareltamañodelaúltimadimensióndeunamatrizdinámicasinborrarningunodelosdatosexistentescontenidosenlamatriz.

ReDimX(10,10,10)

...

ReDimPreserveX(10,10,15)

Demodoparecido,cuandoutilizaelargumentoPreservepuedecambiareltamañodelamatrizsólocambiandoellímitesuperior;cambiarellímiteinferiorproduceunerror.

Sihacequeunamatrizseamáspequeñadeloqueera,perderálosdatosdeloselementoseliminados.Sitransfiereunamatrizaunprocedimientoporreferencia,nopuedecambiareltamañodelamatrizdentrodelprocedimiento.

Cuandoseinicializanlasvariables,unavariablenuméricaseinicializaa0,unacadenadelongitudvariableseinicializaaunacadenadelongitudcero("")yunacadenadelongitudfijaserellenaconceros.LasvariablesVariantseinicializanaEmpty.Cadaelementodeunavariabledeuntipodefinidoporelusuarioseinicializacomosifueraunavariabledistinta.AunavariablequeserefiereaunobjetoseledebeasignarunobjetoexistentemediantelainstrucciónSetantesdequesepuedausar.Hastaqueseasignaaunobjeto,lavariabledeobjetodeclaradatieneelvalorespecialNothing,elcualindicaquenoserefierea

Page 526: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ningunainstanciaenparticulardeunobjeto.

PrecauciónLainstrucciónReDimactúacomounainstruccióndeclarativasilavariablequedeclaranoexisteenelniveldemódulooniveldeprocedimiento.Simástardecreaotravariableconelmismonombre,inclusoconunalcancemayor,ReDimharáreferenciaalacreadamástardeynocausaránecesariamenteunerrordecompilación,inclusoaunqueOptionExplicitestéenefecto.Paraevitarestosconflictos,ReDimnosedebeutilizarcomounainstruccióndeclarativa,sinosóloparacambiareltamañodelasmatrices.

NotaParacambiareltamañodeunamatrizcontenidaenunaVariant,debedeclararexplícitamentelavariableVariantantesdeintentarcambiareltamañodesumatriz.

Page 527: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Rem(Instrucción)

Seusaparaincluirnotasaclaratoriasenunprograma.

Page 528: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Remcomentario

Tambiénpuedeutilizarlasiguientesintaxis:

'comentario

Elargumentoopcionalcomentarioeseltextodecualquiercomentarioquedeseaincluir.DespuésdelapalabraclaveRemserequiereunespaciodelantedecomentario.

Comentarios

Siusanúmerosdelíneaoetiquetasdelínea,esposiblederivardeunainstrucciónGoTooGoSubaunalíneaquecontengalainstrucciónRem.LaejecucióncontinúaconlaprimerainstrucciónejecutablequesiguealainstrucciónRem.SilapalabraclaveRemsigueaotrasinstruccionesenunalínea,sedebeseparardelasinstruccionesconunsignodedospuntos(:).

Puedeusarunacomillasimpleounapóstrofo(')envezdelapalabraclaveRem.Cuandoutiliceunapóstrofe,nosenecesitaelsignodedospuntosdespuésdeotrasinstrucciones.

Page 529: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Reset(Instrucción)

CierratodoslosarchivosdediscoabiertosmediantelainstrucciónOpen.

Sintaxis

Reset

Comentarios

LainstrucciónResetcierratodoslosarchivosactivosabiertosconlainstrucciónOpenyescribeeneldiscoelcontenidodetodoslosbúferesdelosarchivos.

Page 530: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Resume(Instrucción)

Continúalaejecucióncuandoterminaunarutinadegestióndeerrores"controldeerrores"

Page 531: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

Resume[0]

ResumeNext

Resumelínea

LasintaxisdelainstrucciónResumepuedetenercualquieradelosformatossiguientes:

Instrucción DescripciónResume Sielerrorsehaproducidoenelprocedimientoquecontiene

elcontroladordeerrores,laejecucióncontinúaenlainstrucciónquelocausó.Sielerrorsehaproducidoenunprocedimientollamado,laejecucióncontinúaenlainstruccióncontroldeerroresdesdelacualsellamóalprocedimientoquecontienelarutinadegestióndeerrores.

ResumeNext Sielerrorsehaproducidoenelmismoprocedimientoquecontieneelcontroladordeerrores,laejecucióncontinúaconlainstrucciónquesigueinmediatamentealaquecausóelerror.Sielerrorsehaproducidoenunprocedimientollamado,laejecucióncontinúaenlainstruccióninmediatamenteposterioralainstruccióndesdelacualsellamóalprocedimientoquecontienelarutinadegestióndeerrores"controldeerrores"(olainstrucciónOnErrorResumeNext)

Resumelínea Laejecucióncontinúaenlalíneaespecificadaenelargumentoobligatoriolínea.Elargumentolíneaesunaetiquetadelíneaounnúmerodelíneaydebeestarenelmismoprocedimientoqueelcontroladordeerrores.

Comentarios

SiutilizaunainstrucciónResumeenotrositioquenoseaunarutinadecontroldeerrores,ocurreunerror.

Page 532: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RmDir(Instrucción)

Eliminaundirectorioocarpetaexistente.

Sintaxis

RmDirruta

Elargumentorequeridorutaesunaexpresióndecadenaqueidentificaeldirectorioocarpetaquesevaaeliminar.Puedeincluirlaunidaddedisco.Sinoseespecificaunaunidaddedisco,RmDireliminaeldirectorioocarpetadelaunidaddediscoactual.

Comentarios

SiseintentautilizarlainstrucciónRmDirenundirectorioocarpetaquecontienearchivos,seproduciráunerror.UselainstrucciónKillparaeliminartodoslosarchivosdeesedirectorioocarpetaantesdeintentareliminarel

Page 533: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

directorioocarpeta.

Page 534: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RSet(Instrucción)

Alineaaladerechaunacadenadentrodeunavariabledecadena.

Sintaxis

RSetvarcadena=cadena

LasintaxisdelainstrucciónRSetconstadelassiguientespartes:

Parte Descripción

Page 535: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

varcadena Requerido.Nombredeunavariabledecadena.cadena Requerido.Expresióndecadenaquesevaaalinearaladerechaen

varcadena.

Comentarios

Sivarcadenaesmáslargaquecadena,RSetreemplazacualquiercaráctersobrantealaizquierdadevarcadenaconespaciosenblanco,empezandodesdeelprincipio.

NotaRSetnosepuedeutilizarcontiposdefinidosporelusuario.

Page 536: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SaveSetting(Instrucción)

GuardaocreaunaentradaparaunaaplicaciónenelregistrodeconfiguracióndeWindows.O(enMacintosh)informaciónenelarchivodeinicializacióndelaaplicación.

Page 537: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

SaveSettingappname,section,key,setting

LasintaxisdelainstrucciónSaveSettingtienelossiguientesargumentosconnombre:

Parte Descripciónappname Obligatorio.Expresióndecadenaquecontieneelnombredela

aplicaciónoproyectoalqueseaplicaelvalor.EnMacintosh,ésteeselnombredelarchivodeinicializaciónenlacarpetaPreferenciasenlacarpetadelSistema.

section Obligatorio.Expresióndetipocadenaquecontieneelnombredelaseccióndondesevaaguardarlaclave.

key Obligatorio.Expresióndetipocadenaquecontieneelnombredelaclavequesevaaguardar.

setting Obligatorio.Expresiónquecontieneelvalorquesevaaestablecerenkey.

Comentarios

Seproduceunerrorsiporalgúnmotivonosepuedeguardarelvalordelaclave.

Page 538: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seek(Instrucción)

EstablecelaposicióndelapróximaoperacióndelecturaoescrituraenunarchivoabiertomediantelainstrucciónOpen.

Sintaxis

Seek[#]númeroarchivo,posición

LasintaxisdelainstrucciónSeekconstalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.posición Requerido.Unnúmeroentre1y2.147.483.647inclusive,

queindicalaposiciónenlaquesedebeejecutarlapróximaoperacióndelecturaoescritura.

Comentarios

LosnúmerosderegistroespecificadosenlasinstruccionesGetyPutanulanlaposicióndearchivoespecificadaporSeek.

SiseejecutaunaoperacióndeescrituradearchivodespuésdeunainstrucciónSeekmásalládelfindeunarchivo,seextiendeelarchivo.Siseintentaejecutar

Page 539: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

unainstrucciónSeekenunaposiciónnegativaocero,seproduceunerror.

Page 540: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SelectCase(Instrucción)

Ejecutaunodevariosgruposdeinstrucciones,dependiendodelvalordeunaexpresión.

Page 541: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

SelectCaseexpresión_prueba[Caselista_expresion-n[instrucciones-n]]...[CaseElse[instrucciones_else]]

EndSelect

LasintaxisdelainstrucciónSelectCaseconstadelassiguientespartes:

Parte Descripciónexpresión_prueba Requerido.Cualquierexpresiónnuméricaoexpresiónde

cadena.lista_expresión-n RequeridosiaparecelapalabraclaveCase.Lista

delimitadaporcomasdeunaomásdelasformassiguientes:expresión,expresiónToexpresión,Isexpresiónoperador_de_comparación.Lapalabraclaveespecificaunintervalodevalores.SiseutilizalapalabraclaveTo,elvalormenordebeaparecerantesdeTo.UtilicelapalabraclaveIsconoperadoresdecomparación(exceptoIsyLike)paraespecificarunintervalodevalores.Sinoseescribe,lapalabraclaveIsseinsertaráautomáticamente.

instrucciones-n Opcional.Unaomásinstruccionesejecutadassiexpresión_pruebacoincideconcualquierpartedelista_expresión-n.

instrucciones_else

Opcional.Unaomásinstruccionesqueseejecutensiexpresión_pruebanocoincideconnadadelacláusulaCase.

Comentarios

Siexpresión_pruebacoincideconcualquierlista_expresiónasociadaconunacláusulaCase,lasinstruccionesquesiguenaesacláusulaCaseseejecutanhastalasiguientecláusulaCaseo,paralaúltimacláusula,hastalainstrucciónEndSelect.ElcontrolpasadespuésalainstrucciónquesigueaEndSelect.Si

Page 542: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

expresión_pruebacoincideconunaexpresióndelista_expresiónenmásdeunacláusulaCase,sóloseejecutanlasinstruccionesquesiguenalaprimeracoincidencia.

LacláusulaCaseElseseutilizaparaindicarlasinstruccionesquesevanaejecutarsinoseencuentrancoincidenciasentreexpresión_pruebayunalista_expresiónencualquieradelasotrasseleccionesdeCase.Aunquenoesnecesario,esbuenaideatenerunainstrucciónCaseElseenelbloqueSelectCaseparacontrolarvaloresimprevistosdeexpresión_prueba.CuandonohayunainstrucciónCaseElseyningunaexpresióndelalistaenlascláusulasCasecoincideconlaexpresióndeprueba,laejecucióncontinúaenlainstrucciónquesigueaEndSelect.

SepuedenutilizarexpresionesmúltiplesointervalosencadacláusulaCase.Porejemplo,lalíneasiguienteesválida:

Case1To4,7To9,11,13,Is>MaxNumber

NotaEloperadordecomparaciónIsnoeslomismoquelapalabraclaveIsutilizadaenlainstrucciónSelectCase.

Tambiénpuedeespecificarintervalosyexpresionesmúltiplesparacadenasdecaracteres.Enelsiguienteejemplo,Casecoincideconlascadenasquesonexactamenteigualesatodo,cadenasqueestánentrenuecesysopaenordenalfabéticoyelvaloractualdeElemPrueba:

Case"igualesatodo","nueces"To"sopa",ElemPrueba

LasinstruccionesSelectCasesepuedenanidar.CadainstrucciónSelectCasedebetenersucorrespondienteinstrucciónEndSelect.

Page 543: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SendKeys(Instrucción)

Envíaunaomáspulsacionesdeteclasalaventanaactiva,comosisehubieranpresionadodesdeelteclado.

Page 544: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

SendKeysstring[,wait]

LasintaxisdelainstrucciónSendKeysconstadeestosargumentosconnombre:

Parte Descripciónstring Requerido.Expresióndecadenaqueespecificalaspulsacionesde

teclasquesevanaenviar.wait Opcional.ValorBooleanqueindicaelmododeespera.Siestevalor

esFalse(predeterminado),sedevuelveelcontrolalprocedimientoinmediatamentedespuésdeenviarlaspulsaciones.SiesTrue,seprocesanlaspulsacionesantesdedevolverelcontrolalprocedimiento.

Comentarios

Cadateclaestárepresentadaporunoomáscaracteres.Paraespecificarunúnicocarácterdelteclado,seutilizaelcarácterpropiamentedicho.Porejemplo,pararepresentarlaletraA,utilice"A"comostring.Sisedesearepresentarmásdeuncarácter,agreguecadacarácteradicionalalqueloprecede.PararepresentarlasletrasA,ByC,utilice"ABC"parastring.

Elsignomás(+),elsímbolodeintercalación(^),elsímbolodeporcentaje(%),latilde(~)ylosparéntesis()tienensignificadosespecialesparaSendKeys.Paraespecificarunodeestoscaracteres,debeincluirloentrellaves.Porejemplo,paraespecificarelsignomás,utilice{+}.Loscorchetes([])notienenunsignificadoespecialparaSendKeys,perodebeescribirlosentrellavesporque,enotrasaplicaciones,lotienenyesopuedetenerimportanciacuandoseproduceunintercambiodinámicodedatos(DDE).Paraespecificarllaves,utilice{{}y{}}.

Paraespecificarcaracteresquenosemuestranalpresionarunatecla(comoporejemploEntraroTab)yteclasquerepresentanacciones,enlugardecaracteres,seutilizanlossiguientescódigos:

Tecla CódigoRetroceso {BACKSPACE},{BS}o{BKSP}

{BREAK}

Page 545: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PausaBloqMayús {CAPSLOCK}

Supr {DELETE}o{DEL}Flechaabajo {DOWN}

Fin {END}

Entrar {ENTER}o~Esc {ESC}

Ayuda {HELP}

Inicio {HOME}

Insert {INSERT}o{INS}Flechaizquierda {LEFT}

BloqNum {NUMLOCK}

RePág {PGDN}

AvPág {PGUP}

ImprPant {PRTSC}

Flechaderecha {RIGHT}

BloqDespl {SCROLLLOCK}

Tab {TAB}

Flechaarriba {UP}

F1 {F1}

F2 {F2}

F3 {F3}

F4 {F4}

F5 {F5}

F6 {F6}

F7 {F7}

F8 {F8}

F9 {F9}

F10 {F10}

F11 {F11}

F12 {F12}

F13 {F13}

Page 546: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

F14 {F14}

F15 {F15}

F16 {F16}

ParaespecificarteclasconcualquiercombinacióndelasteclasMAYÚS,CTRLyALT,introduzcadelantedelcódigodelateclaunoomásdelossiguientescódigos:

Tecla CódigoMayús +

Ctril(Control) ^

Alt %

ParaespecificarquesedebemantenerpresionadaunacombinacióncualquieradelasteclasMayús,CtrlyAltmientrassepresionanotrasteclas,pongaentreparéntesiselcódigorelativoaesasteclas.Porejemplo,paraespecificarquesedebemantenerpresionadaMAYÚSmientrassepresionanlasteclasEyC,utilice"+(EC)".ParaespecificarquesedebemantenerpresionadaMayúsmientrassepresionalateclaEyqueluegosedebepresionarC,sinpresionarMayús,utilice"+EC".

Paraespecificarpulsacionesrepetidasdeteclas,utiliceelformato{teclanúmero}.Debedejarunespacioenblancoentreteclaynúmero.Porejemplo,{LEFT42}significaquesedebepresionarlateclaFlechaIzquierda42veces;{h10}significaquesedebepresionarlateclah10veces.

NotaNopuedeutilizarSendKeysparaenviarpulsacionesdeteclasaaplicacionesquenoesténdiseñadasparafuncionarconMicrosoftWindows.oMacintoshSendKeyspuedeenviartambiénlapulsacióndelateclaImprPant(PRTSC)acualquieraplicación.

Page 547: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Set(Instrucción)

Page 548: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Asignaunareferenciadeobjetoaunavariableopropiedad.

Sintaxis

Setvariable_objeto={[New]expresión_objeto|Nothing}

LasintaxisdelainstrucciónSetconstadelassiguientespartes:

Parte Descripciónvariable_objeto Requerido.Nombredelavariableodelapropiedad;sigue

lasconvencionesestándardenombresdevariables.New Opcional.Newseutilizanormalmenteduranteuna

declaraciónparapermitirlacreaciónimplícitadeunobjeto.CuandoutilizaNewconlainstrucciónSetsecreaunanuevainstanciadelaclase.Sivariable_objetoconteníaunareferenciaaunobjeto,estareferenciaseliberacuandoseasignaelnuevoobjeto.LapalabraclaveNewnosepuedeutilizarparacrearnuevasinstanciasdecualquiertipodedatosintrínseconiparacrearobjetosdependientes.

expresión_objeto Requerido.Expresiónqueconsisteenelnombredeunobjeto,otravariabledeclaradadelmismotipodeobjetos,ounafunciónométodoquedevuelveunobjetodelmismotipodeobjeto.

Page 549: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Nothing Opcional.Interrumpeunaasociacióndevariable_objetoconcualquierobjetoespecífico.AlasignarNothingavariable_objetoseliberantodoslosrecursosdelsistemaydememoriaasociadosconelobjetoalquesehizoreferenciapreviamentecuandoningunaotravariableserefiereaél.

Comentarios

Paraserválido,variable_objetodebeseruntipodeobjetocoherenteconelobjetoqueselehaasignado.

LasinstruccionesDim,Private,Public,ReDimyStaticsólodeclaranunavariablequeserefiereaunobjeto.NoseharáreferenciaaningúnobjetorealhastaqueuselainstrucciónSetparaasignarunobjetoespecífico.

ElsiguienteejemploilustraelusodeDimparadeclararunamatrizdeltipoForm1.ActualmentenoexisteningunainstanciadeForm1.SetasignareferenciasanuevasinstanciasdeForm1alavariablemisFormulariosSecundarios.EstecódigosepodríautilizarparacrearformulariossecundariosenunaaplicaciónMDI.

DimmisFormulariosSecundarios(1to4)AsForm1

SetmisFormulariosSecundarios(1)=NewForm1

SetmisFormulariosSecundarios(2)=NewForm1

SetmisFormulariosSecundarios(3)=NewForm1

SetmisFormulariosSecundarios(4)=NwqForm1

Generalmente,cuandousaSetparaasignarunareferenciadeobjetoaunavariable,nosecreaningunacopiadelobjetoparaesavariable.Ensulugarsecreaunareferenciaalobjeto.Másdeunavariabledeobjetosepuedereferiralmismoobjeto.Puestoqueestasvariablessonreferenciasalobjeto(nocopiasdeél),cualquiercambioenelobjetosereflejaentodaslasvariablesqueserefierenaél.Noobstante,cuandoutilizalapalabraclaveNewenlainstrucciónSet,enrealidadestácreandounainstanciadelobjeto.

Page 550: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SetAttr(Instrucción)

Establecelosatributosdeunarchivo.

Sintaxis

Page 551: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SetAttrpathname,attributes

LasintaxisdelainstrucciónSetAttrconstadelossiguientesargumentosconnombres:

Parte Descripciónpathname Requerido.Expresióndecadenaqueespecificaunnombre

dearchivo.Puedeincluireldirectorioocarpetaylaunidaddedisco.

attributes Requerido.Constanteoexpresiónnumérica,cuyasumaespecificalosatributosdearchivo.

Valores

Elargumentoyvaloresdeattributesson:

Constante Valor DescripciónvbNormal 0 Normal(predeterminado)vbReadOnly 1 SólolecturavbHidden 2 OcultovbSystem 4 Archivodesistema.No

disponibleenMacintosh.vbArchive 32 Elarchivohasido

modificadodespuésdehaberseefectuadolaúltimacopiadeseguridad.

vbAlias 64 Elnombreespecificadoesunalias.DisponiblesóloenMacintosh.

NotaVisualBasicparaaplicacionesespecificaestasconstantes.Comoresultadodeello,esosnombressepuedenutilizarencualquierlugardelcódigosustituyendoalvalorcorrespondiente.

Comentarios

Page 552: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sisetratadeestablecerlosatributosdeunarchivoabierto,seproduciráunerrorentiempodeejecución.

Page 553: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 554: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 555: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Static(Instrucción)

Page 556: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seusaenelniveldeprocedimientoparadeclararvariablesyasignarlesespaciodealmacenamiento.LasvariablesdeclaradasconlainstrucciónStaticconservansuvalormientraselcódigoseestáejecutando.

Sintaxis

Staticnombre_variable[([subíndices])][As[New]tipo][,nombre_variable[([subíndices])][As[New]tipo]]...

LasintaxisdelainstrucciónStaticconstadeestaspartes:

Parte Descripciónnombre_variable

Requerido.Nombredelavariable;siguelasconvencionesestándardenombresdevariable.

subíndices Opcional.Dimensionesdeunavariabledematriz;sepuedendeclararhasta60dimensionesmúltiples.Elargumentosubíndicesusalasintaxissiguiente:

[inferiorTo]superior[,[inferiorTo]superior]...

Cuandonosedeclaraexplícitamenteeninferior,ellímiteinferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.EstelímiteinferiorescerosinohayningunainstrucciónOptionBase.

New Opcional.Palabraclavequepermitelacreaciónimplícitadeunobjeto.SiutilizaNewcuandodeclaralavariabledeobjeto,secreaunanuevainstanciadelobjetocomoprimerareferencia,deformaquenotienequeutilizarlainstrucciónSetparaasignarlareferenciadelobjeto.LapalabraclaveNewnosepuedeutilizarparadeclararvariablesdecualquiertipodedatosintrínseconiparadeclararinstanciasdeobjetosdependientes.

tipo Opcional.Tipodedatosdelavariable;puedeserByte,Boolean,

Page 557: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String,(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,untipodefinidoporelusuario,ountipodeobjeto.UseunacláusulaAstipodistintoparacadavariablequedefina.

Comentarios

Unavezqueelcódigodelmóduloseestáejecutando,lasvariablesdeclaradasconlainstrucciónStaticconservansuvalorhastaquesereinicieorestablezcaelmódulo.Enlosmódulosdeclase,lasvariablesdeclaradasconlainstrucciónStaticconservansuvalorencadainstanciadeclasehastaquesedestruyelainstancia.Enmódulosdeformulario,lasvariablesestáticasconservansuvalorhastaquesecierraelformulario.UselainstrucciónStaticenprocedimientosnoestáticosparadeclararexplícitamentevariablesquesonvisiblessólodentrodeunprocedimiento,perocuyavidaeslamismaqueladelmóduloenlaquesedefinióelprocedimiento.

UtiliceunainstrucciónStaticdentrodeunprocedimientoparadeclarareltipodedatosdeunavariablequeconservasuvalorentrellamadasaprocedimiento.Porejemplo,lainstrucciónsiguientedeclaraunamatrizdeenterosdetamañofijo:

StaticNúmeroDeEmpleados(200)AsInteger

Lasiguientelíneadeclaraunavariableparaunanuevainstanciadeunahojadecálculo:

StaticXAsNewWorksheet

SilapalabraclaveNewnoseutilizaaldeclararunavariabledeobjeto,lavariablequehacereferenciaaunobjetodebeasignarseaunobjetoexistentemediantelainstrucciónSetantesdepoderutilizarla.Antesdequeseleasigneunobjeto,lavariabledeobjetodeclaradatieneelvalorespecialNothing,queindicaquenohacereferenciaaningunainstanciaenparticulardeunobjeto.CuandoutilizalapalabraclaveNewenladeclaración,secreaunainstanciadelobjetoenlaprimerareferenciadelmismo.

Page 558: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SinoespecificauntipodedatosountipodeobjetoynoexisteunainstrucciónDeftipoenelmódulo,lavariableesVariantdemanerapredeterminada.

NotaLainstrucciónStaticylapalabraclaveStaticsonsimilares,peroseutilizanparaconseguirefectosdiferentes.SideclaraunprocedimientoconlapalabraclaveStatic(comoenStaticSubContarVentas()),elespaciodealmacenamientocorrespondienteatodaslasvariableslocalesdentrodelprocedimientoseasignaunaúnicavezyelvalordelasvariablesseconservadurantetodoeltiempoqueseestéejecutandoelprograma.Paraprocedimientosnoestáticos,elespaciodealmacenamientoparalasvariablesseasignacadavezquesellamaalprocedimientoyseliberacuandosesaledelprocedimiento.LainstrucciónStaticseusaparadeclararvariablesespecíficasdentrodeprocedimientosnoestáticosparaconservarsuvalormientraselprogramaseestéejecutando.

Alinicializarlasvariables,unavariablenuméricaseinicializaa0,unacadenadelongitudvariableseinicializaaunacadenadelongitudcero("")yunacadenadelongitudfijaserellenaconceros.LasvariablesVariantseinicializanaEmpty.Cadaelementodeunavariabledeuntipodefinidoporelusuarioseinicializacomosifueraunavariabledistinta.

NotaCuandoutiliceinstruccionesStaticdentrodeunprocedimiento,colóquelasalprincipiodelprocedimientoconotrasinstruccionesdedeclaracióncomoDim.

Page 559: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Stop(Instrucción)

Suspendelaejecución.

Sintaxis

Stop

Comentarios

SepuedencolocarinstruccionesStopencualquierpartedelosprocedimientosparasuspenderlaejecución.ElusodelainstrucciónStopessimilaraestablecer

Page 560: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

unpuntodeinterrupciónenelcódigo.

LainstrucciónStopsuspendelaejecución,peroadiferenciadeEndnocierraningúnarchivoniborravariables,amenosqueseaunarchivoejecutablecompilado(.exe).

Page 561: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 562: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 563: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 564: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sub(Instrucción)

Declaraelnombre,losargumentos,yelcódigoquecomponenelcuerpodeunprocedimientoSub.

Sintaxis

[Private|Public|Friend][Static]Subnombre[(lista_argumentos)][instrucciones][ExitSub][instrucciones]

Page 565: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndSub

LasintaxisdelainstrucciónSubconstadelassiguientespartes:

Parte DescripciónPublic Opcional.IndicaqueelprocedimientoSubesaccesiblepara

todoslosdemásprocedimientosdetodoslosmódulos.SiseusaenunmóduloquecontieneunainstrucciónOptionPrivate,elprocedimientonoestádisponiblefueradelproyecto.

Private Opcional.IndicaqueelprocedimientoSubesaccesiblesóloparaotrosprocedimientosdelmóduloenelquesedeclara.

Friend Opcional.Seutilizasolamenteenunmódulodeclase.IndicaqueelprocedimientoSubesvisibleatravésdelproyecto,peronoporuncontroladordeunainstanciadeunobjeto.

Static Opcional.IndicaquelasvariableslocalesdelprocedimientoSubseconservanentredistintasllamadas.ElatributoStaticnoafectaalasvariablesquesedeclaranfueradeSub,inclusoaunqueseusenenelprocedimiento.

nombre Requerido.NombredelprocedimientoSub;siguelasconvencionesestándardenombresdevariable.

lista_argumentos

Opcional.ListadevariablesquerepresentanlosargumentosquesepasanalprocedimientoSubcuandoselellama.Lasdistintasvariablesseseparanmediantecomas.

instrucciones Opcional.CualquiergrupodeinstruccionesqueseejecutandentrodelprocedimientoSub.

Elargumentolista_argumentosconstadelassiguientespartesysintaxis:

[Optional][ByVal|ByRef][ParamArray]nombre_variable[()][Astipo][=valor_predeterminado]

Parte DescripciónOptional Opcional.Palabraclavequeindicaquenoserequiereningún

argumento.Siseusa,todoslosargumentossubsiguientesdelista_argumentostambiéndebenseropcionalesydeclararse

Page 566: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

mediantelapalabraclaveOptional.OptionalnosepuedeutilizarparaningúnargumentosiseusaParamArray.

ByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeselmodopredeterminadoenVisualBasic.ParamArray Opcional.Sóloseutilizacomoelúltimoargumentode

lista_argumentosparaindicarqueelargumentofinalesunamatrizOptionaldeelementostipoVariant.LapalabraclaveParamArraylepermiteproporcionarunnúmeroarbitrariodeargumentos.NosepuedeutilizarconByVal,ByRefuOptional.

nombre_variable

Requerido.Nombredelavariablequerepresentaelargumento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Eltipodedatosdelargumentoquesepasaalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidoactualmente),Date,String(solamentelongitudvariable),Object,Variant,ountipodeobjetoespecífico.SielparámetronoesOptional,sepuedeespecificartambiénuntipodefinidoporelusuario.

valor_predeterminado

Opcional.Cualquierconstanteoexpresióndeconstante.SóloesválidoparaparámetrosOptional.SieltipoesObject,unvalorpredeterminadoexplícitosólopuedeserNothing.

Comentarios

SinoseespecificaexplícitamentemediantePublic,PrivateoFriend,losprocedimientosSubsonpúblicosdemanerapredeterminada.SinoseusaStatic,elvalordelasvariableslocalesnosemantieneentredistintasllamadas.LapalabraclaveFriendsolamentesepuedeusarenmódulosdeclase.Sinembargo,losprocedimientosencualquiermódulodeunproyectopuedenaccederalosprocedimientosFriend.UnprocedimientoFriendnoapareceenlabibliotecadetipodesuclaseprimaria,nisepuedeenlazarposteriormente.

Page 567: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

PrecauciónLosprocedimientosSubpuedenserrecursivos;esdecir,sepuedenllamarasímismospararealizarunatareadeterminada.Sinembargo,estopuedellevaraldesbordamientodelapila.LapalabraclaveStaticgeneralmentenoseutilizaconprocedimientosrecursivosSub.

Todocódigoejecutabledebeestarenprocedimientos.NopuededefinirunprocedimientoSubdentrodeotroprocedimientoSub,FunctionoProperty.

LaspalabrasclaveExitSubcausanlainmediatasalidadeunprocedimientoSub.LaejecucióndelprogramacontinúaconlainstrucciónquesiguealainstrucciónquellamóelprocedimientoSub.CualquiernúmerodeinstruccionesExitSubpuedeaparecerencualquierlugardeunprocedimientoSub.

AligualqueunprocedimientoFunction,unprocedimientoSubesunprocedimientodistintoquetomaargumentos,llevaacabounaseriedeinstruccionesycambiaelvalordesusargumentos.Sinembargo,adiferenciadeunprocedimientoFunction,elcualdevuelveunvalor,unprocedimientoSubnosepuedeutilizarenunaexpresión.

ParallamaraunprocedimientoSub,useelnombredelprocedimientoseguidodelalistadeargumentos.ConsultelainstrucciónCallparaobtenerinformaciónespecíficaacercadecómollamaralosprocedimientosSub.

LasvariablesusadasenprocedimientosSubsedividenendoscategorías:lasqueestánexplícitamentedeclaradasdentrodelprocedimientoylasquenoloestán.Lasvariablesdeclaradasexplícitamenteenunprocedimiento(medianteDimounequivalente)siempresonlocalesdelprocedimiento.Otrasvariablesusadasperonodeclaradasexplícitamenteenunprocedimientotambiénsonlocales,amenosquesedeclarenexplícitamenteenalgúnnivelsuperiorfueradelprocedimiento.

PrecauciónUnprocedimientopuedeusarunavariablequenoestédeclaradaexplícitamenteenelprocedimiento,peropuedeocurrirunconflictodenombressicualquiercosaquehadefinidoenelniveldemódulotieneelmismonombre.Sielprocedimientoserefiereaunavariablenodeclaradaquetieneelmismonombrequeotroprocedimiento,constanteovariable,sesuponequeelprocedimientoseestárefiriendoalnombredeeseniveldemódulo.Paraevitarestetipodeconflictos,declarelasvariablesexplícitamente.Puedeusaruna

Page 568: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

instrucciónOptionExplicitparaforzarladeclaraciónexplícitadevariables.

NotaNosepuedeusarGoSub,GoTooReturnparaobteneraccesoosalirdeunprocedimientoSub.

Page 569: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Time(Instrucción)

Establecelahoraactualdelsistema.

Sintaxis

Time=hora

Elargumentohoraescualquierexpresiónnumérica,expresióndecadenaocualquiercombinaciónquepuedarepresentarunahora.

Comentarios

Page 570: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sihoraesunacadena,Timeintentaconvertirlaenunahorausandolosseparadoresdehoraqueseespecificaronparasusistema.Sinosepuedeconvertirenunahoraválida,seproduciráunerror.

Page 571: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 572: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 573: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Type(Instrucción)

Page 574: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seusaenelniveldemóduloparadefiniruntipodedatosdefinidoporelusuarioquecontieneunoomáselementos.

Sintaxis

[Private|Public]Typenombre_variablenombre_elemento[([subíndices])]Astipo[nombre_elemento[([subíndices])]Astipo]...

EndType

LasintaxisdelainstrucciónTypeconstadelassiguientespartes:

Parte DescripciónPublic Opcional.Seusaparadeclarartiposdefinidosporelusuario

queestándisponiblesparatodoslosprocedimientosentodoslosmódulosdetodoslosproyectos.

Private Opcional.Seusaparadeclarartiposdefinidosporelusuarioquesóloestándisponiblesdentrodelmódulodondesehaceladeclaración.

nombre_variable

Requerido.Nombredeltipodefinidoporelusuario;siguelasconvencionesestándardenombresdevariable.

nombre_elemento

Requerido.Nombredeunelementodeltipodefinidoporelusuario.Losnombresdeelementostambiénsiguenlasconvencionesestándardenombres,exceptoenquesepuedenutilizarpalabrasclave.

subíndices Cuandonosedeclaraexplícitamenteeninferior,ellímiteinferiordeunamatrizsecontrolamediantelainstrucciónOptionBase.Ellímiteinferiorescerosinohayninguna

Page 575: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

instrucciónOptionBase.tipo Requerido.Tipodedatosdelelemento;puedeserByte,

Boolean,Integer,Long,Currency,Single,Double,Decimal(noadmitidaactualmente),Date,String(paracadenasdelongitudvariable),String*length(paracadenasdelongitudfija),Object,Variant,otrotipodefinidoporelusuarioountipodeobjeto.

Comentarios

LainstrucciónTypesólopuedeutilizarseenelniveldemódulo.UnavezquehadeclaradountipodefinidoporelusuarioconlainstrucciónType,puededeclararunavariabledeesetipoencualquierlugardentrodelalcancedeladeclaración.UseDim,Private,Public,ReDimoStaticparadeclararunavariabledeuntipodefinidoporelusuario.

Enlosmódulosestándarymódulosdeclase,lostiposdefinidosporelusuariosonpúblicosdemanerapredeterminada.EstavisibilidadsepuedecambiarmediantelapalabraclavePrivate.

NúmerosdelíneayetiquetasdelíneanoestánpermitidosenbloquesType...EndType.

Lostiposdefinidosporelusuarioseutilizanamenudoconregistrosdedatos,loscualesconsistenfrecuentementeenunaseriedeelementosrelacionadosdediferentestiposdedatos.

Enesteejemplosemuestraelusodematricesdetamañofijoenuntipodefinidoporelusuario:

TypeDatosRegión

CógigoCiudad(1To100)AsInteger'Declaraunamatrizestática.

CondadoAsString*30

EndType

DimWashington(1To100)AsDatosRegión

Page 576: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Enelejemploanterior,DatosRegiónincluyelamatrizestáticaCódigoCiudadyelregistroWashingtontienelamismaestructuraqueDatosRegión.

Cuandodeclaraunamatrizdetamañofijodentrodeuntipodefinidoporelusuario,susdimensionesdebendeclararseconliteralesnuméricosoconstantesenlugardevariables.

Page 577: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

While...Wend(Instrucción)

EjecutaunaseriedeinstruccionesmientrasunacondicióndadaseaTrue.

Sintaxis

Whilecondición[intrucciones]

Wend

LasintaxisdelainstrucciónWhile...Wendconstadelassiguientespartes:

Page 578: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripcióncondición Requerido.Expresiónnuméricaoexpresióndecadenacuyo

valoresTrueoFalse.SicondiciónesNull,condiciónseconsideraFalse.

instrucciones Opcional.UnaomásinstruccionesqueseejecutanmientraslacondiciónesTrue.

Comentarios

SicondiciónesTrue,todaslasinstruccionesseejecutanhastaqueseencuentralainstrucciónWend.Después,elcontrolvuelvealainstrucciónWhileysecompruebadenuevocondición.SicondiciónesaúnTrue,serepiteelproceso.SinoesTrue,laejecuciónsereanudaconlainstrucciónquesiguealainstrucciónWend.

LosbuclesWhile...Wendsepuedenanidaracualquiernivel.CadaWendcoincideconelWhilemásreciente.

SugerenciaLainstrucciónDo...Loopproporcionaunamaneramásflexibleyestructuradaderealizarlosbucles.

Page 579: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Width#

(Instrucción)

AsignaelanchodelíneadesalidaaunarchivoabiertomediantelainstrucciónOpen.

Sintaxis

Width#númeroarchivo,ancho

LasintaxisdelainstrucciónWidthconstalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivo.ancho Requerido.Unaexpresiónnuméricaentre0y255inclusive,

queindicacuántoscaracteresaparecenenunalíneaantesdeempezarunanuevalínea.Sianchoesiguala0,nohayningúnlímiteparalalongituddelínea.Elvalorpredeterminadodeanchoes0.

Page 580: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

With(Instrucción)

Ejecutaunaseriedeinstruccionessobreunúnicoobjetoosobreuntipodefinidoporelusuario.

Sintaxis

Withobjeto[instrucciones]

EndWith

LasintaxisdelainstrucciónWithconstadelassiguientespartes:

Page 581: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Parte Descripciónobjeto Requerido.Nombredeunobjetoodeuntipodefinidopor

elusuario.instrucciones Opcional.Unaomásinstruccionesquesevanaejecutar

sobreobjeto.

Comentarios

LainstrucciónWithpermiterealizarunaseriedeinstruccionessobreunobjetoespecificadosinvolveracalificarelnombredelobjeto.Porejemplo,paracambiarunnúmerodepropiedadesdiferentesenunúnicoobjeto,esmásconvenientecolocarlasinstruccionesdeasignacióndelaspropiedadesenlaestructuradecontrolWith,haciendoreferenciaalobjetounavez,enlugardehacerloconcadaasignacióndepropiedad.ElsiguienteejemploilustraelusodelainstrucciónWithparaasignarvaloresavariaspropiedadesdelmismoobjeto.

WithMyLabel

.Height=2000

.Width=2000

.Caption="Estaesmietiqueta"

EndWith

NotaUnavezquesehaentradoenunbloqueWithnoesposiblecambiarelobjeto.Portanto,nopuedeutilizarunaúnicainstrucciónWithparavariosobjetos.

SepuedenanidarinstruccionesWithcolocandounbucleWithdentrodeotro.Sinembargo,comolosmiembrosdelosbloquesexternosWithestánenmascaradosporlospropiosbloquesWith,deberáproporcionaruncualificadorcompletocomoreferenciaalobjetoenelbloqueWithparareferirseacualquierotroobjetofueradelbloqueWith.

NotaEngeneral,noesaconsejablequesaltehaciadentroohaciafueradebloquesWith.SiseejecutaninstruccionesenbloquesWith,sinqueseejecutenlasinstruccionesWithoEndWithpermaneceenmemoriaunavariable

Page 582: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

temporalquecontieneunareferenciaalobjetohastaquesalgadelprocedimiento.

Page 583: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Write#(Instrucción)

Page 584: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Escribedatosenunarchivosecuencial.

Sintaxis

Write#númeroarchivo,[listasalida]

LasintaxisdelainstrucciónWriteconstalassiguientespartes:

Parte Descripciónnúmeroarchivo Requerido.Cualquiernúmerodearchivoválido.listasalida Opcional.Unaovariasexpresionesnuméricasoexpresiones

decadenadelimitadasporcomasquesedeseaescribirenunarchivo.

Comentarios

LosdatosqueseescribenconWrite#normalmenteseleendeunarchivoconInput#.

Siomitelistasalidaeincluyeunpuntoycomadespuésdenúmeroarchivo,seimprimeunalíneaenblancoenelarchivo.Sepuedensepararmúltiplesexpresionesconunespacio,unpuntoycoma(;)ounacoma.Unespaciotieneelmismoefectoqueunpuntoycoma.

Page 585: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CuandoseutilizaWrite#paraintroducirinformaciónenunarchivo,sesiguendistintasconvencionesuniversales,demodoquelosdatossiempresepuedenleereinterpretarcorrectamentemedianteInput#,independientementedelaconfiguraciónregional:

Losdatosnuméricossiempreseescribenutilizandolacoma(,)comoseparadordecimal.

ParadatosdetipoBooleanseimprime#TRUE#o#FALSE#.Laspalabrasclave#TRUE#o#FALSE#nosetraducen,independientementedelaconfiguraciónregionalenqueseestétrabajando.

LosdatosdetipoDateseescribenenelarchivousandoelformatodefechauniversal.Sielcomponentecorrespondientealafechaoalahorafaltaoesigualacero,sóloseescribeenelarchivolapartesuministrada.

SilosdatosdelistasalidasondetipoEmptynoseescribenadaenelarchivo.Sinembargo,enelcasodedatosNulllasalidaes#NULL#.

SieldatodelistasalidaNull,seescribe#NULL#enelarchivo.

ParadatosdeError,lasalidaapareceenelformato#ERRORcódigoerror#.LapalabraclaveErrornosetraduce,independientementedelaconfiguraciónregionalenqueestétrabajando.

AdiferenciadelainstrucciónPrint#,lainstrucciónWrite#insertapuntosycomaentreelementosycomillasalrededordecadenas,cuandoseescribenenelarchivo.Noesnecesariocolocardelimitadoresenlalista.Write#insertauncarácterdenuevalínea,queesunretornodecarroyunavancedelínea(Chr(13)+Chr(10)),despuésdequesehaescritoelúltimocarácterdelistasalidaenelarchivo.

NotaNodeberíaescribircadenasquecontenganmarcasdecomillas

Page 586: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

incrustadas,porejemplo,"1,2""X"parautilizarlasconlainstrucciónInput#:Input#analizalacadenacomodoscadenascompletasyseparadas.

Page 587: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Add(Método)

Page 588: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AgregaunmiembroaunobjetoCollection.

Sintaxis

objeto.Additem,key,before,after

LasintaxisdelmétodoAddconstadelcalificadordeobjetoylosargumentosconnombresiguientes:

Parte Descripciónobjeto Requerido.Unaexpresióndeobjetoquedacomoresultadoun

objetoincluidoenlalistaSeaplicaa.item Requerido.Unaexpresióndecualquiertipoqueespecificael

miembroquesevaaagregaralacolección.key Opcional.Unaexpresióndecadenaúnicaqueespecificauna

cadenaclaveparautilizarlaenlugardeuníndiceposicionalalteneraccesoaunmiembrodelacolección.

before Opcional.Expresiónqueespecificaunaposiciónrelativaenlacolección.Elmiembroaagregarsecolocaráenlacolecciónantesdelmiembroidentificadoporelargumentoargumentobefore.Siesunaexpresiónnumérica,beforedebeserunnúmeroentre1yelvalordelapropiedadCountdelacolección.Siesunaexpresióndecadena,beforedebecorresponderalargumentokeyespecificadoalagregaralacolecciónelmiembroalquesehacereferencia.Esposibleespecificarposicionesconbeforeoconafter,peronoconambos.

after Opcional.Expresiónqueespecificaunaposiciónrelativaenlacolección.Elmiembroquesevaaagregarsecolocaráenlacoleccióndespuésdelmiembroidentificadoporelargumento

Page 589: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

after.Siesnumérico,afterdebeserunnúmeroentre1yelvalordelapropiedadCountdelacolección.Siesunacadena,afterdebecorresponderalargumentokeyespecificadoalagregaralacolecciónelmiembroalquesehacereferencia.Esposibleespecificarposicionesconbeforeoconafter,peronoconambos.

Comentarios

Siemprequeelargumentobeforeoafterseaunaexpresióndecadenaonumérica,sedebereferiraunmiembroexistentedelacolección;delocontrarioocurriráunerror.

Tambiénocurreunerrorsiunakeyespecificadaduplicalakeydeunmiembroexistentedelacolección.

Page 590: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Add(Método)

Descripción

Agregaunparelemento,claveaunobjetoDictionary.

Sintaxis

objeto.Addclave,elemento

ElmétodoAddconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDictionary.clave Requerido.Laclaveasociadaconelelementoquese

agrega.elemento Requerido.Elelementoasociadoconlaclavequeseagrega.

Comentarios

Seproduceunerrorsilaclaveyaexiste.

Page 591: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AddFolders(Método)

Descripción

AgregaunobjetoFoldernuevoaunacolecciónFolders.

Sintaxis

objeto.AddnombreDeCarpeta

ElmétodoAddconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunacolección

Folders.nombreDeCarpeta Requerido.ElnombredelobjetoFoldersqueseagrega.

Comentarios

OcurreunerrorsinombreDeCarpetayaexiste.

Page 592: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

BuildPath(Método)

Descripción

Anexaunnombreaunarutaexistente.

Sintaxis

objeto.BuildPath(ruta,nombre)

LasintaxisdelmétodoBuildPathconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

FileSystemObject.ruta Requerido.Rutaexistentealaqueseanexaelnombre.La

rutapuedeserabsolutaorelativaynonecesitaespecificarunacarpetaexistente.

nombre Requerido.Nombrequeseanexaalarutaexistente.

Comentarios

ElmétodoBuildPathintroduceunseparadorderutaadicionalentrelarutaexistenteyelnombresólosiesnecesario.

Page 593: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Clear(Método)

BorratodaslaspropiedadesestablecidasdelobjetoErr.

Sintaxis

objeto.Clear

ElobjetoessiempreelobjetoErr.

Comentarios

UseClearparaborrarexplícitamenteelobjetoErrdespuésdecontrolarunerror,porejemplo,cuandohaestablecidoeltratamientodiferidodeunerrorconOnErrorResumeNext.SellamaautomáticamentealmétodoCleardespuésdeejecutarcualquieradeestasinstrucciones:

CualquiertipodeinstrucciónResume

Page 594: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ExitSub,ExitFunction,ExitProperty

CualquierinstrucciónOnErrorNotaLaestructuraOnErrorResumeNextespreferibleaOnErrorGoToalcontrolarerroresgeneradosduranteelaccesoaotrosobjetos.ComprobarErrdespuésdecadainteracciónconunobjetoeliminalaambigüedadsobreaquéobjetosetieneaccesomediantecódigo.PuedesaberquéobjetohapuestoelerrorenErr.Number,asícomoquéobjetohageneradoelerror(elobjetoespecificadoenErr.Source).

Page 595: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Close(Método)

Descripción

CierraunarchivoTextStreamabierto.

Sintaxis

objeto.Close

ElobjetosiempreeselnombredeunobjetoTextStream.

Page 596: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Copy(Método)

Descripción

Copiaunacarpetaoarchivoespecificadodesdeunaubicaciónaotra.

Sintaxis

objeto.Copydestino[,sobrescribir]

LasintaxisdelmétodoCopyconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileoFolder.destino Requerido.Destinodondesecopiaelarchivoocarpeta.No

sepermitencaracterescomodín.sobrescribir Opcional.ElvalorBooleanqueesTrue(predeterminado)si

sevanasobrescribirarchivosocarpetasexistentes;Falsesinosevanasobrescribir.

Comentarios

LosresultadosdelmétodoCopyenunobjetoFileoFoldersonidénticosalasoperacionesqueserealizanutilizandoFileSystemObject.CopyFileo

Page 597: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileSystemObject.CopyFolderdondeelarchivoocarpetaalqueobjetohacereferenciasepasacomounargumento.Debetenerencuenta,sinembargo,quelosmétodosalternativossoncapacesdecopiarmúltiplesarchivosocarpetas.

Page 598: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CopyFile(Método)

Descripción

Copiaunoomásarchivosdesdeunaubicaciónaotra.

Sintaxis

objeto.CopyFileorigen,destino[,sobrescribir]

LasintaxisdelmétodoCopyFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Elobjetosiempreeselnombredeunobjeto

FileSystemObject.origen Requerido.Especificacióndelarchivodecadenasde

caracteres,quepuedeincluircaracterescomodín,paraunoomásarchivosquesecopian.

destino Requerido.Eldestinodelacadenadecaracteresdondesevanacopiarelarchivooarchivosdesdeelorigen.Nosepermitenloscaracterescomodín.

sobrescribir Opcional.UnvalorBooleanqueindicasilosarchivosexistentessevanasobrescribir.SiesTrue,losarchivossesobrescriben;siesFalse,nosesobrescriben.Elvalor

Page 599: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

predeterminadoesTrue.TengaencuentaqueelmétodoCopyFilefallarásieldestinotieneestablecidoelatributodesólolectura,independientementedelvalordesobrescribir.

Comentarios

Loscaracterescomodínsólosepuedenutilizarenelúltimocomponentedelarutadelargumentoorigen.Porejemplo,puedeutilizar:

FileSystemObject.CopyFile"c:\Misdocumentos\cartas\*.doc","c:\carpetatemp\"

Peronopuedeutilizar:

FileSystemObject.CopyFile"c:\Misdocumentos\*\R1???97.xls","c:\carpetatemp"

Sielorigencontienecaracterescomodínoeldestinofinalizaconunseparadorderuta(\),sesuponequedestinoesunacarpetaexistenteenlaquesecopiaránlosarchivoscoincidentes.Sino,sesuponequeeldestinoeselnombredeunarchivoquesevaacrear.Encualquiercaso,puedenocurrirtrescosascuandosecopiaunarchivoindividual.

Sieldestinonoexiste,elorigensecopia.Esteeselcasonormal.

Sieldestinoesunarchivoexistente,seproduceunerrorsisobrescribiresFalse.Sino,sehaceunintentodecopiarorigensobreelarchivoexistente.

Sieldestinoesundirectorio,seproduceunerror.

Tambiénseproduceunerrorsiunorigenqueutilizacaracterescomodínnocoincideconningúnarchivo.ElmétodoCopyFilesedetieneenelprimererrorqueencuentra.Nosehaceningúnintentodevolveratrásodeshacercualquiercambiorealizadoantesdequeseproduzcaunerror.

Page 600: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CopyFolder(Método)

Descripción

Copiarecursivamenteunacarpetadesdeunaubicaciónaotra.

Sintaxis

objeto.CopyFolderorigen,destino[,sobrescribir]

LasintaxisdelmétodoCopyFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.origen Requerido.Especificacióndelacarpetadecadenasde

caracteres,quepuedeincluircaracterescomodín,paraunaomáscarpetasquesecopian.

destino Requerido.Eldestinodelacadenadecaracteresdondesevanacopiarlacarpetaosubcarpetasdesdeelorigen.Nosepermitenloscaracterescomodín.

sobrescribir Opcional.UnvalorBooleanqueindicasilascarpetasexistentessevanasobrescribir.SiesTrue,losarchivossesobrescriben;siesFalse,nosesobrescriben.ElvalorpredeterminadoesTrue.

Page 601: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Loscaracterescomodínsólosepuedenutilizarenelúltimocomponentedelarutadelargumentoorigen.Porejemplo,puedeutilizar:

FileSystemObject.CopyFolder"c:\Misdocumentos\cartas\*","c:\carpetatemp\"

Peronopuedeutilizar:

FileSystemObject.CopyFolder"c:\Misdocumentos\*\*","c:\carpetatemp\"

Sielorigencontienecaracterescomodínoeldestinofinalizaconunseparadorderuta(\),sesuponequedestinoesunacarpetaexistenteenlaquecopiarlascarpetasysubcarpetascoincidentes.Sino,sesuponequeeldestinoeselnombredeunacarpetaquesevaacrear.Encualquiercaso,puedenocurrircuatrocosascuandosecopiaunacarpetaindividual.

Sinoexisteeldestino,secopianlacarpetaorigenytodosucontenido.Esteeselcasonormal.

Sieldestinoesunarchivoexistente,seproduceunerror.

Sieldestinoesundirectorio,sehaceunintentodecopiarlacarpetaytodosucontenido.Siexisteyaeneldestinounarchivocontenidoenorigen,seproduceunerrorsisobrescribiresFalse.Sino,seintentarácopiarelarchivosobreelarchivoexistente.

Sieldestinoesundirectoriodesólolectura,seproduceunerrorsisehaceunintentodecopiarunarchivodesólolecturaexistenteenesedirectorioysobrescribiresFalse.

Tambiénseproduceunerrorsiunorigenqueutilizacaracterescomodínnocoincideconningunacarpeta.

ElmétodoCopyFoldersedetieneenelprimererrorqueencuentra.Nosehace

Page 602: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ningúnintentodevolveratrásodeshacercualquiercambiorealizadoantesdequeseproduzcaunerror.

Page 603: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CreateFolder(Método)

Descripción

Creaunacarpeta.

Sintaxis

objeto.CreateFolder(nombreDeLaCarpeta)

ElmétodoCreateFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

FileSystemObject.nombreDeLaCarpeta Requerido.Unaexpresióndecadenaqueidentificala

carpetaquesevaacrear.

Page 604: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Seproduceunerrorsiyaexistelacarpetaespecificada.

Page 605: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CreateTextFile(Método)

Descripción

CreaunnombredearchivoespecificadoydevuelveunobjetoTextStreamquesepuedeutilizarparaleerdesdeoescribiraunarchivo.

Sintaxis

objeto.CreateTextFile(nombreDeArchivo[,sobrescribir[,unicode]])

ElmétodoCreateTextFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

FileSystemObjectoFolder.nombreDeArchivo Requerido.Unaexpresióndecadenaqueidentificaelarchivo

quesevaacrear.

Page 606: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

sobrescribir Opcional.UnvalorBooleanqueindicasiunarchivoexistentesepuedesobrescribir.ElvaloresTruesielarchivosepuedesobrescribiryFalsesinosepuedesobrescribir.Siseomite,losarchivosexistentesnosesobrescriben.

unicode Opcional.UnvalorBooleanqueindicasielarchivosecreacomounarchivoUnicodeoASCII.ElvaloresTruesielarchivosecreacomounarchivoUnicodeyFalsesisecreacomounarchivoASCII.Siseomite,sesuponequeesunarchivoASCII.

Comentarios

ElcódigosiguientedemuestracómoutilizarelmétodoCreateTextFileparacrearyabrirunarchivodetexto:

SubCreateAfile

Setfs=CreateObject("Scripting.FileSystemObject")

Seta=fs.CreateTextFile("c:\archivoprueba.txt"

a.WriteLine("Estoesunaprueba.")

a.Close

EndSub

SielargumentosobrescribiresFalseonoseproporciona,paraunnombreDeArchivoyaexistente,seproduceunerror.

Page 607: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Delete(Método)

Descripción

Eliminaunarchivoocarpetaespecificada.

Sintaxis

objeto.Deleteforzar

LasintaxisdelmétodoDeleteconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileoFolder.forzar Opcional.ValorBooleanqueesTruesisevanaeliminarlos

archivosocarpetasconelatributodesólolecturaestablecidoyFalse(predeterminado)sinosevanaeliminar.

Comentarios

Seproduceunerrorsielarchivoolacarpetaespecificadosnoexisten.

LosresultadosdelmétodoDeleteenunobjetoFileoFoldersonidénticosalasoperacionesrealizadasutilizandoFileSystemObject.DeleteFileo

Page 608: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileSystemObject.DeleteFolder.

ElmétodoDeletenodistingueentrelascarpetasquetienencontenidoylasqueno.Lacarpetaespecificadaseeliminaindependientementedesitieneonocontenido.

Page 609: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DeleteFile(Método)

Descripción

Eliminaunarchivoespecificado.

Sintaxis

objeto.DeleteFileespecArchivo[,forzar]

LasintaxisdelmétodoDeleteFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunFileSystemObject.especArchivo Requerido.Elnombredelarchivoquesevaaeliminar.El

argumentoespecArchivopuedecontenercaracterescomodínenelúltimocomponentedelaruta.

forzar Opcional.UnvalorBooleanqueesTruesisevanaeliminarlosarchivosconelatributodesólolecturaestablecidoyFalse(predeterminado)sinosevanaeliminar.

Comentarios

Seproduceunerrorsinoseencuentranarchivoscoincidentes.Elmétodo

Page 610: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DeleteFilesedetieneenelprimererrorqueencuentra.Noseintentavolveratrásodeshacercualquiercambioquesehicieraantesdequeseproduzcaunerror.

Page 611: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DeleteFolder(Método)

Descripción

Eliminaunacarpetaespecificadaysucontenido.

Sintaxis

objeto.DeleteFolderespecCarpeta[,forzar]

LasintaxisdelmétodoDeleteFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunFileSystemObject.especCarpeta Requerido.Elnombredelacarpetaquesevaaeliminar.El

argumentoespecCarpetapuedecontenercaracterescomodínenelúltimocomponentedelaruta.

forzar Opcional.UnvalorBooleanqueesTruesisevanaeliminarlascarpetasconelatributodesólolecturaestablecidoyFalse(predeterminado)sinosevanaeliminar.

Comentarios

ElmétodoDeleteFoldernodistingueentrecarpetasquetienencontenidoylas

Page 612: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

queno.Lacarpetaespecificadaseeliminaindependientementedesitieneonocontenido.

Sinoseencuentrancarpetascoincidentes,seproduceunerror.ElmétodoDeleteFoldersedetieneenelprimererrorqueencuentra.Nosehaceningúnintentodevolveratrásodeshacerningúncambioquesehicieraantesdequeseprodujeraunerror.

Page 613: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DriveExists(Método)

Descripción

DevuelveTruesiexistelaunidadespecificadayFalsesinoexiste.

Sintaxis

objeto.DriveExists(especUnidad)

LasintaxisdelmétodoDriveExistsconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especUnidad Requerido.Unaletradeunidadounaespecificaciónderuta

completa.

Comentarios

Paraunidadesconmediosseparables,elmétodoDriveExistsdevuelveTrueinclusosinohaymediospresentes.UtilicelapropiedadIsReadydelobjetoDriveparadeterminarsiunaunidadestápreparada.

Page 614: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Exists(Método)

Descripción

DevuelveTruesiexisteunaclaveespecificadaenelobjetoDictionaryyFalsesinoexiste.

Sintaxis

objeto.Exists(clave)

LasintaxisdelmétodoExistsconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDictionary.clave Requerido.Valordelaclavequesebuscaenelobjeto

Dictionary.

Page 615: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileExists(Método)

Descripción

DevuelveTruesiexisteunarchivoespecificadoyFalsesinoexiste.

Sintaxis

objeto.FileExists(especArchivo)

LasintaxisdelmétodoFileExistsconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especArchivo Requerido.Elnombredelarchivocuyaexistenciasevaa

determinar.Sedebeproporcionarunaespecificaciónderutacompleta(absolutaorelativa)sinoseesperaqueexistaelarchivoenlacarpetaactual.

Page 616: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FolderExists(Método)

Descripción

DevuelveTruesiexisteunacarpetaespecificadayFalsesinoexiste.

Sintaxis

objeto.FolderExists(especCarpeta)

LasintaxisdelmétodoFolderExistsconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especCarpeta Requerido.Elnombredelacarpetacuyaexistenciasevaa

determinar.Sedebeproporcionarunaespecificaciónderutacompleta(absolutaorelativa)sinoseesperaqueexistalacarpetaenlacarpetaactual.

Page 617: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetAbsolutePathName(Método)

Descripción

Devuelveunarutainequívocaycompletadesdeunaespecificaciónderutaproporcionada.

Sintaxis

objeto.GetAbsolutePathName(especRuta)

LasintaxisdelmétodoGetAbsolutePathNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeun

FileSystemObject.especRuta Requerido.Laespecificacióndelarutaquesevaa

cambiarporunarutacompletaeinequívoca.

Comentarios

Unarutaescompletaeinequívocasiproporcionaunareferenciacompletadelaraízdelaunidadespecificada.Unarutacompletasólopuedefinalizarconuncarácterseparadorderuta(\)siespecificalacarpetadelaraízdeunaunidad

Page 618: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

asignada.

Suponiendoqueeldirectorioactualesc:\Misdocumentos\informes,latablasiguienteilustraelcomportamientodelmétodoGetAbsolutePathName.

especRuta Returnedruta"c:" "c:\Misdocumentos\informes""c:.." "c:\Misdocumentos""c:\\\" "c:\""c:*.*\mayo97" "c:\Misdocumentos\informes\*.*\mayo97""region1" "c:\Misdocumentos\informes\region1""c:\..\..\Misdocumentos"

"c:\Misdocumentos"

Page 619: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetBaseName(Método)

Descripción

Devuelveunacadenaquecontieneelnombrebasedelúltimocomponentedelaruta,sinlaextensióndelarchivo.

Sintaxis

objeto.GetBaseName(ruta)

LasintaxisdelmétodoGetBaseNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.ruta Requerido.Laespecificacióndelarutaparaelcomponente

cuyonombrebasesevaadevolver.

Comentarios

ElmétodoGetBaseNamedevuelveunacadenadelongitudcero("")siningúncomponentecoincideconelargumentoruta.

NotaElmétodoGetBaseNamesólofuncionaenlacadenaderuta

Page 620: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

proporcionada.Nointentaresolverlaruta,nicompruebasuexistencia.

Page 621: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetDrive(Método)

Descripción

DevuelveunobjetoDrivequecorrespondealaunidaddeunarutaespecificada.

Sintaxis

objeto.GetDriveespecUnidad

LasintaxisdelmétodoGetDriveconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especUnidad Requerido.ElargumentoespecUnidadpuedeserunaletrade

unidad(c),unaletradeunidadcondospuntosanexados(c:),unaletradeunidadcondospuntosyunseparadorderutasanexados(c:\),ocualquierespecificaciónderecursocompartidodered(\\equipo2\recursocompartido1).

Comentarios

Pararecursoscompartidosdered,sehaceunacomprobaciónparaasegurarqueexisteelrecursocompartido.

Page 622: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SeproduceunerrorsiespecUnidadnoseajustaaunodelosformulariosaceptadososinoexiste.

ParallamaralmétodoGetDriveenunacadenaderutanormal,utilicelasiguientesecuenciaparaconseguirunacadenaadecuadaqueutilizarenespecUnidad:

DriveSpec=GetDriveName(GetAbsolutePathName(Path))

Page 623: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetDriveName(Método)

Descripción

Devuelveunacadenaquecontieneelnombredelaunidadparaunarutaespecificada.

Sintaxis

objeto.GetDriveName(ruta)

LasintaxisdelmétodoGetDriveNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.ruta Requerido.Laespecificacióndelarutaparaelcomponentecuyo

nombredeunidadsevaadevolver.

Comentarios

ElmétodoGetDriveNamedevuelveunacadenadelongitudcero("")silaunidadnosepuededeterminar.

NotaElmétodoGetDriveNamesólofuncionaenlacadenaderuta

Page 624: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

proporcionada.Nointentaresolverlaruta,nicompruebasuexistencia.

Page 625: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetExtensionName(Método)

Descripción

Devuelveunacadenaquecontieneelnombredelaextensióndelúltimocomponenteenunaruta.

Sintaxis

objeto.GetExtensionName(ruta)

LasintaxisdelmétodoGetExtensionNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.ruta Requerido.Laespecificacióndelarutaparaelcomponentecuyo

nombredeextensiónsevaadevolver.

Comentarios

Paraunidadesdered,seconsideraqueeldirectorioraíz(\)esuncomponente.

ElmétodoGetExtensionNamedevuelveunacadenadelongitudcero("")siningúncomponentecoincideconelargumentodelaruta.

Page 626: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetFile(Método)

Descripción

DevuelveunobjetoFilequecorrespondealarchivoenunarutaespecificada.

Sintaxis

objeto.GetFile(especArchivo)

LasintaxisdelmétodoGetFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especArchivo Requerido.ElargumentoespecArchivoeslaruta(absolutao

relativa)deunarchivoespecífico.

Comentarios

Seproduceunerrorsielarchivoespecificadonoexiste.

Page 627: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetFileName(Método)

Descripción

Devuelveelúltimocomponentedelarutaespecificadaquenoespartedelaespecificacióndelaunidad.

Sintaxis

objeto.GetFileName(especRuta)

LasintaxisdelmétodoGetFileNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.especRuta Requerido.Laruta(absolutaorelativa)deunarchivo

específico.

Comentarios

ElmétodoGetFileNamedevuelveunacadenadelongitudcero("")siespecRutanoterminaconelcomponentenombrado.

NotaElmétodoGetFileNamesólofuncionaenlacadenadelaruta

Page 628: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

proporcionada.Nointentaresolverlaruta,nicompruebasuexistencia.

Page 629: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetFolder(Método)

Descripción

DevuelveunobjetoFolderquecorrespondealacarpetaenunarutaespecificada.

Sintaxis

objeto.GetFolder(especCarpeta)

LasintaxisdelmétodoGetFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunFileSystemObject.especCarpeta Requerido.ElargumentoespecCarpetaeslaruta(absolutao

relativa)deunacarpetaespecífica.

Comentarios

Seproduceunerrorsilacarpetaespecificadanoexiste.

Page 630: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetParentFolderName(Método)

Descripción

Devuelveunacadenaquecontieneelnombredelacarpetaprincipaldelúltimocomponenteenunarutaespecificada.

Sintaxis

objeto.GetParentFolderName(ruta)

LasintaxisdelmétodoGetParentFolderNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.ruta Requerido.Laespecificacióndelarutaparaelcomponentecuya

carpetaprincipalsevaadevolver.

Comentarios

ElmétodoGetParentFolderNamedevuelveunacadenadelongitudcero("")sinohaycarpetaprincipalparaelcomponenteespecificadoenelargumentoruta.

NotaElmétodoGetParentFolderNamesólofuncionaenlacadenaderuta

Page 631: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

proporcionada.Nointentaresolverlaruta,nicompruebasuexistencia.

Page 632: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetSpecialFolder(Método)

Descripción

Devuelvelacarpetaespecialespecificada.

Sintaxis

objeto.GetSpecialFolder(especCarpeta)

LasintaxisdelmétodoGetSpecialFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

FileSystemObject.especCarpeta Requerido.Elnombredelacarpetaespecialquesevaa

devolver.PuedesercualquieradelasconstantesquesemuestranenlasecciónValores.

Valores

ElargumentoespecCarpetapuedetenercualquieradelosvaloressiguientes:

Constante Valor Descripción

Page 633: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

WindowsFolder 0 LacarpetaWindowscontienearchivosinstaladosporelsistemaoperativoWindows.

SystemFolder 1 LacarpetaSistemacontienebibliotecas,fuentesyunidadesdedispositivo.

TemporaryFolder 2 LacarpetaTempseutilizaparaalmacenararchivostemporales.SurutaseencuentraenlavariabledelentornoTMP.

Page 634: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

GetTempName(Método)

Descripción

Devuelveunnombredecarpetaoarchivotemporalgeneradoaleatoriamentequeesútilpararealizaroperacionesquerequierenunarchivoocarpetatemporales.

Sintaxis

objeto.GetTempName

ElobjetoopcionalessiempreelnombredeunobjetoFileSystemObject.

Comentarios

ElmétodoGetTempNamenocreaunarchivo.SóloproporcionaunnombredearchivotemporalquesepuedeutilizarconelmétodoCreateTextFileparacrearunarchivo.

Page 635: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Item(Método)

Page 636: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DevuelveunmiembroespecíficodeunobjetoCollectionalindicarsuposiciónosuclave.

Sintaxis

objeto.Item(índice)

LasintaxisdelmétodoItemconstadelcalificadordeobjetoyelargumentosiguientes:

Parte Descripciónobjeto Requerido.Unaexpresióndeobjetoquedacomoresultadounobjeto

incluidoenlalistaSeaplicaa.índice Requerido.Unaexpresiónqueespecificalaposicióndeunmiembrode

lacolección.Siesunaexpresiónnumérica,índicedebeserunnúmeroentre1yelvalordelapropiedadCountdelacolección.Siesunaexpresióndecadena,índicedebecorresponderalvalorespecificadoenelargumentokeyalagregaralacolecciónelmiembroalquesehacereferencia.

Comentarios

Sielvalorindicadocomoíndicenocoincideconningúnmiembroexistentedelacolección,seproduciráunerror.

ElmétodoItemeselpredeterminadodelascolecciones.Portanto,lassiguienteslíneasdecódigosonequivalentes:

PrintMiColección(1)

PrintMiColección.Item(1)

Page 637: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Items(Método)

Descripción

DevuelveunamatrizquecontienetodosloselementosenunobjetoDictionary.

Sintaxis

objeto.Items

ElobjetoessiempreelnombredeunobjetoDictionary.

Comentarios

ElcódigosiguientedemuestralautilizacióndelmétodoItems.

Dima,d,i'Crearalgunasvariables

Setd=CreateObject("Scripting.Dictionary")

d.Add"a","Athens"'Agregaralgunasclavesyelementos

d.Add"b","Belgrade"

d.Add"c","Cairo"

a=d.Items'Obtenerloselementos

Fori=0Tod.Count-1'Iterarporcadaelementodelamatriz

Printa(i)'Imprimirelelemento

Page 638: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Next

...

Page 639: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Keys(Método)

Descripción

DevuelveunamatrizquecontienetodaslasclavesexistentesenunobjetoDictionary.

Sintaxis

objeto.Keys

ElobjetoessiempreelnombredeunobjetoDictionary.

Comentarios

ElcódigosiguientedemuestralautilizacióndelmétodoKeys:

Dima,d,i'Crearalgunasvariables

Setd=CreateObject("Scripting.Dictionary")

d.Add"a","Athens"'Agregaralgunasclavesyelementos

d.Add"b","Belgrade"

d.Add"c","Cairo"

a=d.keys'Conseguirlasclaves

Fori=0Tod.Count-1'Iterarporcadaelementodelamatriz

Page 640: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Printa(i)'Imprimirlaclave

Next

...

Page 641: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Move(Método)

Descripción

Mueveunarchivoocarpetaespecificadosdesdeunaubicaciónaotra.

Sintaxis

objeto.Movedestino

LasintaxisdelmétodoMoveconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileoFolder.destino Requerido.Eldestinodondesevaamoverelarchivoocarpeta.

Nosepermitenloscaracterescomodín.

Comentarios

LosresultadosdelmétodoMoveenunobjetoFileoFoldersonidénticosparalasoperacionesrealizadasutilizandoFileSystemObject.MoveFileoFileSystemObject.MoveFolder.Debetenerencuenta,sinembargo,quelosmétodosalternativossoncapacesdemovermúltiplesarchivosocarpetas.

Page 642: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MoveFile(Método)

Descripción

Mueveunoomásarchivosdesdeunaubicaciónaotra.

Sintaxis

objeto.MoveFileorigen,destino

LasintaxisdelmétodoMoveFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.origen Requerido.Larutadelarchivooarchivosquesevanamover.

Lacadenadelargumentoorigenpuedecontenercaracterescomodínsóloenelúltimocomponentedelaruta.

destino Requerido.Larutadondesevaamoverelarchivoolosarchivos.Elargumentodestinonopuedecontenercaracterescomodín.

Comentarios

Siorigencontienecomodínesodestinoterminaconunserparadorderuta(\),se

Page 643: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

suponequedestinoespecificaunacarpetaexistentealaquesevanamoverlosarchivoscoincidentes.Sino,sesuponequedestinoeselnombredeunarchivodedestinoquesevaacrear.Encualquiercaso,puedenocurrirtrescosascuandosemueveunarchivoindividual:

Sidestinonoexiste,elarchivosemueve.Esteeselcasonormal.

Sidestinoesunarchivoexistente,seproduceunerror.

Sidestinoesundirectorio,seproduceunerror.

Tambiénseproduceunerrorsiunorigenqueutilizacaracterescomodínnocoincideconningúnarchivo.ElmétodoMoveFilesedetieneenelprimererrorqueseencuentra.Nosehaceningúnintentodevolveratrásodeshacercualquiercambiorealizadoantesdequeseproduzcaelerror.

ImportanteEstemétodopermitemoverarchivosentrevolúmenessólosiéstossoncompatiblesconelsistemaoperativo.

Page 644: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MoveFolder(Método)

Descripción

Mueveunaomáscarpetasdesdeunaubicaciónaotra.

Sintaxis

objeto.MoveFolderorigen,destino

LasintaxisdelmétodoMoveFolderconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileSystemObject.origen Requerido.Larutadelacarpetaocarpetasquesevanamover.

Lacadenadelargumentoorigenpuedecontenercaracterescomodínsóloenelúltimocomponentedelaruta.

destino Requerido.Larutadondesevanamoverlacarpetaocarpetas.Elargumentodestinonopuedecontenercaracterescomodín.

Comentarios

Siorigencontienecomodínesodestinofinalizaconunseparadorderuta(\),sesuponequedestinoespecificaunacarpetaexistentealaquesevanamoverlos

Page 645: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

archivoscoincidentes.Sino,sesuponequedestinoeselnombredeunacarpetadedestinoquesevaacrear.Encualquiercaso,puedenocurrirtrescosascuandosemueveunacarpetaindividual:

Sidestinonoexiste,lacarpetasemueve.Esteeselcasonormal.

Sidestinoesunarchivoexistente,seproduceunerror.

Sidestinoesundirectorio,seproduceunerror.

Tambiénseproduceunerrorsiunorigenqueutilizacaracterescomodínnocoincideconningunacarpeta.ElmétodoMoveFoldersedetieneenelprimererrorqueseencuentra.Nosehaceningúnintentodevolveratrásodeshacercualquiercambiorealizadoantesdequeseproduzcaelerror.

ImportanteEstemétodopermitemovercarpetasentrevolumenessólosiéstossoncompatiblesconelsistemaoperativo.

Page 646: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OpenAsTextStream(Método)

Descripción

AbreunarchivoespecificadoydevuelveunobjetoTextStreamquesepuedeutilizarparaleerdesde,escribira,oanexaralarchivo.

Sintaxis

objeto.OpenAsTextStream([modoES,[formato]])

LasintaxisdelmétodoOpenAsTextStreamconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFile.modoES Opcional.Indicaelmododeentrada/salida.Puedeser

unadelastresconstantessiguientes:ForReading,ForWritingoForAppending.

formato Opcional.UnodelostresvaloresTristate(constantestriestado)queseutilizanparaindicarelformatodelarchivoabierto.Siseomite,elarchivoseabrecomoASCII.

Valores

Page 647: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ElargumentomodoESpuedetenercualquieradelosvaloressiguientes:

Constante Valor DescripciónForReading 1 Abrirunarchivocomosólolectura.Nose

puedeescribirenestearchivo.ForWriting 2 Abrirunarchivoparaescribir.Siexisteun

archivoconelmismonombre,sesobrescribeelcontenidoanterior.

ForAppending 8 Abrirunarchivoyescribiralfinaldelmismo.

Elargumentoformatopuedetenercualquieradelossiguientesvalores:

Constante Valor DescripciónTristateUseDefault –2 Abrirelarchivoutilizandoelvalor

predeterminadodelsistema.TristateTrue –1 AbrirelarchivocomoUnicode.TristateFalse 0 AbrirelarchivocomoASCII.

Comentarios

ElmétodoOpenAsTextStreamproporcionalamismafuncionalidadqueelmétodoOpenTextFiledelobjetoFileSystemObject.Además,elmétodoOpenAsTextStreamsepuedeutilizarparaescribirenunarchivo.

ElcódigosiguientedemuestralautilizacióndelmétodoOpenAsTextStreams:

SubTextStreamTest

ConstForReading=1,ForWriting=2,ForAppending=3

ConstTristateUseDefault=-2,TristateTrue=-1,

TristateFalse=0

Dimfs,f,ts,s

Setfs=CreateObject("Scripting.FileSystemObject")

fs.CreateTextFile"prueba1.txt"'Crearunarchivo

Page 648: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setf=fs.GetFile("prueba1.txt")

Setts=f.OpenAsTextStream(ForWriting,TristateUseDefault

ts.Write"¡Holamundo!"

ts.Close

Setts=f.OpenAsTextStream(ForReading,TristateUseDefault

s=ts.ReadLine

MsgBoxs

ts.Close

EndSub

Page 649: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OpenTextFile(Método)

Descripción

AbreunarchivoespecificadoydevuelveunobjetoTextStreamquesepuedeutilizarparaleerdesdeoanexaralarchivo.

Sintaxis

objeto.OpenTextFile(nombreDeArchivo[,modoES[,crear[,formato]]])

ElmétodoOpenTextFileconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

FileSystemObject.nombreDeArchivo Requerido.Unaexpresióndecadenaqueidentificael

archivoquesevaaabrir.

Page 650: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

modoES Opcional.Indicaelmododeentrada/salida.PuedeserunadelasdosconstantesForReadingoForAppending.

crear Opcional.UnvalorBooleanqueindicasisepuedecrearunarchivonuevocuandoelnombreDeArchivoespecificadonoexiste.ElvaloresTruesisecreaunarchivonuevoyFalsesinosecrea.ElvalorpredeterminadoesFalse.

formato Opcional.UnodelostresvaloresTristate(constantestriestado)queseutilizanparaindicarelformatodelarchivoabierto.Siseomite,elarchivoseabrecomoASCII.

Valores

ElargumentomodoESpuedetenercualquieradelosvaloressiguientes:

Constante Valor DescripciónForReading 1 Abrirunarchivosóloparalectura.Nopuede

escribirenestearchivo.ForAppending 8 Abrirunarchivoyescribiralfinaldelarchivo.

Elargumentoformatopuedetenercualquieradelosvaloressiguientes:

Constante Valor DescripciónTristateUseDefault –2 Abrirelarchivoutilizandoelvalor

predeterminadodelsistema.TristateTrue –1 AbrirelarchivocomoUnicode.TristateFalse 0 AbrirelarchivocomoASCII.

Comentarios

ElcódigosiguientedemuestralautilizacióndelmétodoOpenTextFileparaabrirunarchivoparaanexartexto:

Page 651: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SubOpenTextFileTest

ConstForReading=1,ForWriting=2,ForAppending=3

Dimfs,f

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.OpenTextFile("c:\archivotexto.txt"

f.Write"¡Holamundo!"

f.Close

EndSub

Page 652: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 653: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Print(Método)

ImprimetextoenlaventanaInmediato.

Sintaxis

Page 654: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

objeto.Print[listasalida]

LasintaxisdelmétodoPrintconstadelcalificadordeobjetoyelargumentosiguientes:

Parte Descripciónobjeto Opcional.Unaexpresióndeobjetoquedacomoresultadoun

objetoincluidoenlalistaSeaplicaa.listasalida Opcional.Expresiónolistadeexpresionesquesevanaimprimir.

Siseomite,seimprimiráunalíneaenblanco.

Elargumentolistasalidatienelasintaxisyloscomponentessiguientes:

{Spc(n)|Tab(n)}expresión,posicióncarácter

Parte DescripciónSpc(n) Opcional.Seutilizaparainsertarcaracteresdeespacioenla

salida,dondeneselnúmerodeespaciosquesevanainsertar.

Tab(n) Opcional.Seutilizaparasituarelpuntodeinserciónenunnúmerodecolumnaabsoluto,dondeneselnúmerodecolumna.UtiliceTabsinargumentosparasituarelpuntodeinserciónalprincipiodelasiguientezonadeimpresión.

expresión Opcional.Expresiónnuméricaoexpresióndecadenaquesevaaimprimir.

posicióncarácter Opcional.Especificaelpuntodeinsercióndelcaráctersiguiente.Utiliceunpuntoycoma(;)parasituarelpuntodeinsercióninmediatamenteacontinuacióndelúltimocaráctermostrado.UtiliceTab(n)parasituarelpuntodeinserciónenunnúmerodecolumnaabsoluto,oTabsinargumentosparasituarloalprincipiodelasiguientezonadeimpresión.Siseomiteposicióncarácter,elcaráctersiguienteseimprimiráenlalíneasiguiente.

Comentarios

Page 655: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Lasexpresionesmúltiplespuedensepararseconunespaciooconunpuntoycoma.

TodoslosdatosimpresosenelpanelInmediatotienenelformatoadecuadosegúnelseparadordecimalcorrespondientealaconfiguraciónregionalestablecidaensusistema.Laspalabrasclavesemuestranenelidiomacorrespondientealaaplicaciónhost.

ParalosdatosdetipoBooleanseimprimeVerdaderooFalso.LaspalabrasclaveTrueyFalsesetraducencomocorrespondaalaconfiguraciónregionalespecificadaenlaaplicaciónhost.

LosdatosdetipoDateseescribenconelformatodefechacortaestándarquereconoceelsistema.Cuandoelcomponentedefechaodehorafaltaosescero,sóloseescribiráeldatoqueseproporcione.

NoseescribiránadasilosdatosdelistasalidasonEmpty.Sinembargo,silistasalidaesNull,enlasalidaseindicaráNulo.Denuevo,lapalabraclaveNullsetraduceenlasalidacomocorresponda.

Paralosdatosdeerror,lasalidaesErrorcódigoError.LapalabraclaveErrorsetraduceenlasalidacomocorresponda.

Esnecesarioobjetosielmétodoseusafueradeunmóduloquetengaunespaciodepresentaciónpredeterminado.Porejemplo,sucedeunerrorsisellamaalmétododesdeunmóduloestándarsinespecificarunobjeto,perosisellamadesdeunmódulodeformulario,listasalidasemuestraenelformulario.

NotaPuestoqueelmétodoPrintimprimenormalmenteconcaracteresdeespacioproporcional,esimportanterecordarquenohayrelaciónalgunaentreelnúmerodecaracteresimpresosyelnúmerodecolumnasdeanchofijoqueocupantalescaracteres.Porejemplo,unaletraancha,como"W",ocupamásdeunacolumnadeanchofijo,mientrasqueunaletraestrecha,como"I",ocupamenos.Paratenerencuentaloscasosenlosqueseutilizancaracteresconunanchomayorquelamedia,deberáasegurarsedequelascolumnasdelastablasseencuentrenlobastantelejosunasdeotras.Comoalternativa,puedeutilizarenlaimpresiónunafuentedeanchofijo(comoCourier)parahacerquecadacarácterutilicesólounacolumna.

Page 656: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Raise(Método)

Page 657: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Generaunerrorentiempodeejecución.

Sintaxis

objeto.Raisenumber,source,description,helpfile,helpcontext

ElmétodoRaisetieneelcalificadordeobjetoylosargumentosconnombresiguientes:

Argumento Descripciónobjeto Requerido.SiempreelobjetoErr.number Requerido.EnterodetipoLongqueidentificala

naturalezadelerror.LoserroresdeVisualBasic(tantolosdefinidosporVisualBasiccomolosdefinidosporelusuario)seencuentranentre0y65535.Elintervalode0a512estáreservadoparaerroresdelsistema;elintervalo513a65535estádisponibleparaerroresdefinidosporelusuario.AlestablecerenlapropiedadNumbersupropiocódigodeerrorenunmódulodeclase,agregasucódigodeerroralaconstantevbObjectError.Porejemplo,paragenerarelnúmerodeerror513,asignevbObjectError+513alapropiedadNumber.

source Opcional.Expresióndecadenaqueindicaelobjetoola

Page 658: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

aplicaciónquegeneróelerror.Alestablecerestapropiedadparaunobjeto,useelformatoproyecto.clase.Sinoespecificanada,seutilizaráelidentificadorprogramáticodelproyectodeVisualBasicactual.

description Opcional.Expresióndecadenaquedescribeelerror.Sinoseespecifica,seexaminaelvalordeNumber.SisecorrespondeconuncódigodeerrorentiempodeejecucióndeVisualBasic,seutilizaparaDescriptionlacadenaquedevolveríalafunciónError.SinohaycorrespondenciaconningúnerrordeVisualBasic,enNumberseutiliza"Errordefinidoporlaaplicaciónoelobjeto".

helpfile Opcional.RutareconocidadelarchivodeAyudaenelqueseencuentralainformaciónsobreelerror.Sinoseespecifica,VisualBasicutilizarálaunidad,rutaynombrereconocidosdelarchivodeAyudadeVisualBasic.

helpcontext Opcional.IdentificadordecontextoqueespecificaeltemadelarchivoindicadoenHelpFilequecontienelainformacióndeayudadelerror.Siseomite,seutilizaráelidentificadordecontextodelarchivodeAyudadeVisualBasiccorrespondientealvalordelapropiedadNumber,sitalidentificadorexiste.

Comentarios

Todoslosargumentossonopcionales,exceptonumber.Sinembargo,siutilizaRaisesinespecificaralgunosargumentos,ylosvaloresdelaspropiedadesdelobjetoErrnosehanborrado,dichosvaloresseconservaránparaelerroractual.

RaiseseutilizaparagenerarerroresentiempodeejecuciónypuedeusarseenlugardelainstrucciónError.Raiseesútilparagenerarerroresalescribirmódulosdeclase,yaqueelobjetoErrproporcionamásinformacióndelaqueofrecenloserroresgeneradosconlainstrucciónError.Porejemplo,conelmétodoRaisepuedeespecificarseelorigendelerrorenlapropiedadSource,puedeinvocarAyudaenpantallasobreelerror,etc.

Page 659: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Read(Método)

Descripción

LeeunnúmeroespecificadodecaracteresdesdeunarchivoTextStreamydevuelvelacadenaresultante.

Sintaxis

objeto.Read(caracteres)

LasintaxisdelmétodoReadconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoTextStream.caracteres Requerido.Elnúmerodecaracteresquedesealeerdesdeel

archivo.

Page 660: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ReadAll(Método)

Descripción

LeeunarchivoTextStreamcompletoydevuelvelacadenaresultante.

Sintaxis

objeto.ReadAll

ElobjetosiempreeselnombredeunobjetoTextStream.

Comentarios

Paraarchivosgrandes,alutilizarelmétodoReadAllsedesperdicianrecursosdememoria.Debenutilizarseotrastécnicasparaleerunarchivo,comoleerlolíneaporlínea.

Page 661: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ReadLine(Método)

Descripción

Leeunalíneacompleta(hastaelcarácterdenuevalíneaperosinincluirlo)desdeunarchivoTextStreamydevuelvelacadenaresultante.

Sintaxis

objeto.ReadLine

ElargumentoobjetoessiempreelnombredeunobjetoTextStream.

Page 662: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Remove(Método)

Page 663: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

QuitaunmiembrodeunobjetoCollection.

Sintaxis

objeto.Removeíndice

LasintaxisdelmétodoRemovecuentaconelcalificadordeobjetoylosargumentossiguientes:

Parte Descripciónobjeto Requerido.Unaexpresióndeobjetoquedacomoresultadounobjeto

incluidoenlalistaSeaplicaa.índice Requerido.Unaexpresiónqueespecificalaposicióndeunmiembrode

lacolección.Sisetratadeunaexpresiónnumérica,índicedebeestarcomprendidoentre1yelvalordelapropiedadCountdelacolección.Siesunaexpresióndecadena,índicedebecorresponderalvalordelargumentokeyespecificadoalagregaralacolecciónelmiembroalquesehacereferencia.

Comentarios

Sielvalorindicadocomoíndicenocoincideconningúnmiembroexistenteenlacolección,seproduceunerror.

Page 664: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Remove(Método)

Descripción

Quitaunparelemento,clavedesdeunobjetoDictionary.

Sintaxis

objeto.Remove(clave)

LasintaxisdelmétodoRemoveconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDictionary.clave Requerido.Laclaveasociadaconelelementodelparquedesea

quitardelobjetoDictionary.

Comentarios

Seproduceunerrorsielparelemento,claveespecificadonoexiste.

ElcódigosiguientedemuestralautilizacióndelmétodoRemove:

Dima,d,i'Crearalgunasvariables

Page 665: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setd=CreateObject("Scripting.Dictionary")

d.Add"a","Atenas"'Agregaralgunasclavesyelementos

d.Add"b","Belgrado"

d.Add"c","Cairo"

...

a=d.Remove()'Quitarelsegundopar

Page 666: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RemoveAll(Método)

Descripción

ElmétodoRemoveAllquitatodoslospareselemento,clavedeunobjetoDictionary.

Sintaxis

objeto.RemoveAll

ElobjetosiempreeselnombredeunobjetoDictionary.

Comentarios

ElcódigosiguientedemuestralautilizacióndelmétodoRemoveAll:

Dima,d,i'Crearalgunasvariables

Setd=CreateObject("Scripting.Dictionary")

d.Add"a","Atenas"'Agregaralgunasclavesyelementos

d.Add"b","Belgrado"

d.Add"c","Cairo"

...

a=d.RemoveAll'Borrareldiccionario

Page 667: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Skip(Método)

Descripción

SaltaunnúmeroespecificadodecaracterescuandoseleeunarchivoTextStream.

Sintaxis

objeto.Skip(caracteres)

LasintaxisdelmétodoSkipconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoTextStream.caracteres Requerido.Elnúmerodecaracteresquesevaasaltarcuandose

leaunarchivo.

Comentarios

Loscaracteressaltadossedescartan.

Page 668: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SkipLine(Método)

Descripción

SaltalapróximalíneacuandoseleeunarchivoTextStream.

Sintaxis

objeto.SkipLine

ElobjetosiempreeselnombredeunobjetoTextStream.

Comentarios

Saltarunalíneasignificaleerydescartartodosloscaracteresenunalíneahastaelpróximocarácternuevalínea,ésteincluido.

Seproduceunerrorsielarchivonoseabreparalectura.

Page 669: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Write(Método)

Descripción

EscribeunacadenaespecificadaaunarchivoTextStream.

Sintaxis

objeto.Write(cadena)

LasintaxisdelmétodoWriteconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunobjeto

TextStream.cadena Requerido.Eltextoquedeseaescribiralarchivo.

Comentarios

Lascadenasespecificadasseescribenalarchivosinespaciosintermediosocaracteresentrecadacadena.UtiliceelmétodoWriteLineparaescribirunacaracternewlineounacadenaquefinaliceconuncaracternewline.

Page 670: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

WriteBlankLines(Método)

Descripción

EscribeunnúmeroespecificadodecaracteresnuevalíneaaunarchivoTextStream.

Sintaxis

objeto.WriteBlankLines(líneas)

LasintaxisdelmétodoWriteBlankLinesconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoTextStream.líneas Requerido.Elnúmerodecaracteresnuevalíneaquedeseaescribiral

archivo.

Page 671: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

WriteLine(Método)

Descripción

EscribeuncaracternuevalíneayunacadenaespecificadaaunarchivoTextStream.

Sintaxis

objeto.WriteLine([cadena])

LasintaxisdelmétodoWriteLineconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoTextStream.cadena Opcional.Eltextoquedeseaescribiralarchivo.Siseomite,se

escribeuncaracternuevalíneaalarchivo.

Page 672: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Collection(Objeto)

UnobjetoCollectionesunconjuntoordenadodeelementosalosquesepuedehacerreferenciacomounaunidad.

Page 673: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

ElobjetoCollectionpermitehacerreferenciadeformasencillaaungrupodeelementosrelacionadoscomounúnicoobjeto.Loselementosomiembrosdeunacolecciónsólotienenqueestarrelacionadosporelhechodeexistirenlacolección.Losmiembrosdeunacolecciónnotienenquecompartirelmismotipodedato.

LosobjetosCollectionsepuedencreardelamismaformaqueelrestodelosobjetos.Porejemplo:

DimXAsNewCollection

UnavezcreadounobjetoCollection,selepuedenagregarmiembrosconelmétodoAddyquitárselosconelmétodoRemove.PuedenobtenersemiembrosespecíficosdelobjetoCollectionconelmétodoItem,yhacerunaiteraciónsobrelacoleccióncompletaconlainstrucciónForEach...Next.

Page 674: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Debug(Objeto)

ElobjetoDebugenvíalasalidaalaventanaDepuraciónentiempodeejecución.

Page 675: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dictionary(Objeto)

Descripción

Objetoquealmacenaparesdatoselemento,clave.

Sintaxis

Scripting.Dictionary

Comentarios

UnobjetoDictionaryeselequivalentedeunamatrizasociativaPERL.Loselementos,quepuedensercualquierformadedatos,sealmacenanenlamatriz.Cadaelementoseasociaconunaclaveúnica.Laclaveseutilizapararecuperarunelementoindividualyesnormalmenteunenteroounacadena,peropuedesercualquiercosaexceptounamatriz.

Page 676: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ElcódigosiguientedemuestracómocrearunobjetoDictionary:

Dimd'Crearunavariable

Setd=CreateObject(Scripting.Dictionary)

d.Add"a","Atenas"'Agregaralgunasclavesyelementos

d.Add"b","Belgrado"

d.Add"c","Cairo"

...

Page 677: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Drive(Objeto)

Descripción

Proporcionaaccesoalaspropiedadesdeunrecursocompartidoderedounaunidaddediscoparticular.

Comentarios

ElcódigosiguientedemuestralautilizacióndelobjetoDriveparaelaccesoalaspropiedadesdelaunidad:

SubShowFreeSpace(drvPath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(fs.GetDriveName(drvPath)

s="Drive"&UCase(drvPath)&"-"

Page 678: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&d.VolumeName&vbCrLf

s=s&"FreeSpace:"&FormatNumber(d.FreeSpace/1024,0)

s=s&"Kbytes"

MsgBoxs

EndSub

Page 679: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Drives(Colección)

Descripción

Coleccióndesólolecturadetodaslasunidadesdisponibles.

Comentarios

NohacefaltaquelasunidadesdemediosseparablestenganmediosintroducidosparaqueaparezcanenlacolecciónDrives.

ElcódigosiguientedemuestracómoconseguirlacolecciónDrivesyrecorrerlacolecciónutilizandolainstrucciónForEach...Next:

SubShowDriveList

Dimfs,d,dc,s,n

Setfs=CreateObject("Scripting.FileSystemObject")

Page 680: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setdc=fs.Drives

ForEachdindc

s=s&d.DriveLetter&"-"

Ifd.DriveType=RemoteThen

n=d.ShareName

Else

n=d.VolumeName

EndIf

s=s&n&vbCrLf

Next

MsgBoxs

EndSub

Page 681: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Err(Objeto)

Contieneinformaciónsobreerroresentiempodeejecución.

Page 682: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

LaspropiedadesdelobjetoErrlasestablecequiengeneraelerror:VisualBasic,unobjetooelprogramadorenVisualBasic.

LapropiedadpredeterminadadelobjetoErresNumber.ComolapropiedadpredeterminadapuederepresentarseconelnombredeobjetoErr,noesnecesariomodificarelcódigoanteriorescritousandolafunciónErrolainstrucciónErr.

Cuandoseproduceunerrorentiempodeejecución,laspropiedadesdelobjetoErrsellenanconinformaciónqueidentificaalerrordeformaúnicayquepuedeutilizarseparaprocesarlo.Paragenerarunerrorentiempodeejecuciónenelcódigo,utiliceelmétodoRaise.

LaspropiedadesdelobjetoErrserestablecenacerooacadenasdelongitudcero("")trascualquierformadelasinstruccionesResumeuOnError,asícomodespuésdelasinstruccionesExitSub,ExitFunctionoExitPropertydeunarutinadetratamientodeerrores.TambiénpuedeutilizarseelmétodoClearpararestablecerexplícitamenteErr.

UtiliceelmétodoRaise,enlugardelainstrucciónError,paragenerarerroresentiempodeejecuciónenmódulosdeclase.LadecisióndeutilizaronoelmétodoRaiseenotrocódigodependerádelacantidaddeinformaciónquesedeseeproporcionar.

Erresunobjetointrínsecoconalcanceglobal.Noesnecesariocrearunainstanciadelmismoenelcódigo.

Page 683: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

File(Objeto)

Descripción

Proporcionaaccesoatodaslaspropiedadesdeunarchivo.

Comentarios

ElcódigosiguientedemuestracómoobtenerunobjetoFileyverunadesuspropiedades.

SubShowFileInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=f.DateCreated

MsgBoxs

Page 684: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndSub

Page 685: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Files(Colección)

Descripción

ColeccióndetodoslosobjetosFiledentrodeunacarpeta.

Comentarios

ElcódigosiguientedemuestracómoconseguirunacolecciónFilesyrecorrerlacolecciónutilizandolainstrucciónForEach...Next:

SubShowFolderList(folderspec)

Dimfs,f,f1,fc,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(folderspec)

Setfc=f.Files

ForEachf1infc

Page 686: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&f1.name

s=s&vbCrLf

Next

MsgBoxs

EndSub

Page 687: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileSystemObject(Objeto)

Descripción

Proporcionaaccesoalsistemadearchivosdeunequipo.

Sintaxis

Scripting.FileSystemObject

Comentarios

ElcódigosiguientedemuestracómoseutilizaelobjetoFileSystemObjectparadevolverunobjetoTextStreamquesepuedeleeroenelquesepuedeescribir:

Setfs=CreateObject("Scripting.FileSystemObject

Seta=fs.CreateTextFile("c:\archivoprueba.txt",True)

a.WriteLine("Estoesunaprueba.")

Page 688: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

a.Close

Enelcódigoquesemuestraarriba,lafunciónCreateObjectdevuelveelobjetoFileSystemObject(fs).ElmétodoCreateTextFilecreaentonceselarchivocomounobjetoTextStream(a)yelmétodoWriteLineescribeunalíneadetextoalarchivodetextocreado.ElmétodoClosevacíaelbúferycierraelarchivo.

Page 689: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Folder(Objeto)

Descripción

Proporcionaaccesoatodaslaspropiedadesdeunacarpeta.

Comentarios

ElcódigosiguientedemuestracómoobtenerunobjetoFolderycómodevolverunadesuspropiedades:

SubShowFolderInfo(folderspec)

Dimfs,f,s,

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(folderspec)

s=f.DateCreated

MsgBoxs

Page 690: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndSub

Page 691: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Folders(Colección)

Descripción

ColeccióndetodoslosobjetosFoldercontenidosdentrodeunobjetoFolder.

Comentarios

ElcódigosiguientedemuestracómoconseguirunacolecciónFoldersycómorecorrerlacolecciónutilizandolainstrucciónForEach...Next:

SubShowFolderList(folderspec)

Dimfs,f,f1,fc,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(folderspec)

Setfc=f.SubFolders

ForEachf1infc

Page 692: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&f1.name

s=s&vbCrLf

Next

MsgBoxs

EndSub

Page 693: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TextStream(Objeto)

Descripción

Facilitaelaccesosecuencialalarchivo.

Sintaxis

TextStream.{propiedad|método}

LosargumentospropiedadymétodopuedensercualquieradelaspropiedadesymétodosasociadosalobjetoTextStream.TengaencuentaqueTextStreamsereemplazaporunmarcadordeposiciónvariablequerepresentaelobjetoTextStreamdevueltoporFileSystemObject.

Comentarios

Enelcódigosiguiente,aeselobjetoTextStreamdevueltoporelmétodo

Page 694: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CreateTextFileenelobjetoFileSystemObject:

Setfs=CreateObject("Scripting.FileSystemObject")

Seta=fs.CreateTextFile("c:\archivoprueba.txt",True)

a.WriteLine("Estoesunaprueba.")

a.Close

WriteLineyClosesondosmétodosdelobjetoTextStream.

Page 695: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

&(Operador)

Page 696: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizaparaforzarlaconcatenacióndelascadenasdedosexpresiones.

Sintaxis

resultado=expresión1&expresión2

Lasintaxisdeloperador&constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariabletipoStringo

Variant.expresión1 Requerido;cualquierexpresión.expresión2 Requerido;cualquierexpresión.

Comentarios

Siunaexpresiónnoesunacadenadecaracteres,seconvierteenuntipoStringtipovariant.EltipodedatodelresultadoesStringsiambasexpresionessonexpresionesdecadena;delocontrario,elresultadoesunaStringtipovariant.SiambasexpresionessonNull,elresultadoestambiénNull.Sinembargo,sisólounaexpresiónesNull,esaexpresiónseconsideracomounacadenadelongitudcero("")alconcatenarseconlaotraexpresión.CualquierexpresiónEmptyseconsideratambiénunacadenadelongitudcero.

Page 697: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 698: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

*(Operador)

Seutilizaparamultiplicardosnúmeros.

Sintaxis

resultado=número1*número2

Lasintaxisdeloperador*constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.

Page 699: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

número1 Requerido;cualquierexpresiónnumérica.número2 Requerido;cualquierexpresiónnumérica.

Comentarios

Eltipodedatodelresultadoesgeneralmenteeldelaexpresiónmásexacta.Elordendeprecisión,demenosexactoamásexacto,esByte,Integer,Long,Single,Double,CurrencyyDecimal.Estareglatienelassiguientesexcepciones:

Si ElresultLamultiplicaciónimplicauntipoSingleyuntipoLong,

seconvierteauntipoDouble.

EltipodedatoderesultadoesuntipovariantLong,SingleoDatequesesaledelintervaloválido,

seconvierteaunVariantquecontieneuntipoDouble.

EltipodedatoderesultadoesunBytetipovariantquesesaledelintervaloválido,

seconvierteaunIntegertipovariant.

EltipodedatoderesultadoesunIntegertipovariantquesesaledelintervaloválido,

seconvierteaunLongtipovariant.

SiunaoambasdelasexpresionessondetipoNull,eltipodedatosdelresultadoesNull.SiunaexpresiónesdeltipoEmpty,seconsideracomo0.

NotaElordendeprecisiónutilizadoporlasumaylarestanoesigualqueelordendeprecisiónutilizadoporlamultiplicación.

Page 700: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 701: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

+(Operador)

Page 702: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizaparasumardosnúmeros.

Sintaxis

resultado=expresión1+expresión2

Lasintaxisdeloperador+constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.Expresión1 Requerido;cualquierexpresión.expresión2 Requerido;cualquierexpresión.

Comentarios

Cuandoutiliceeloperador+,quizánopuedadeterminarsisevaarealizarunasumaounaconcatenacióndecadenas.Utiliceeloperador&paralaconcatenación,demodoqueseevitenambigüedadesysesuministrenprogramasclarosyexplícitos.

SihayalmenosunaexpresiónquenoseadetipoVariant,seaplicanlassiguientesreglas:

Si EntoncesAmbasexpresionessontiposdedatosnuméricos(Byte,Boolean,Integer,Long,Single,Double,Date,CurrencyoDecimal)

Suma.

AmbasexpresionessondeltipoString Concatenación.Unaexpresiónesdeuntipodedatos Suma.

Page 703: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

numéricoylaotracualquiertipoVariantexceptoNullUnaexpresiónesdeltipoStringylaotracualquiertipoVariantexceptoNull

Concatenación.

UnaexpresiónesdeltipoEmptyVariant Devuelvesinmodificacioneslaexpresiónrestantecomoresultado.

UnaexpresiónesdeuntipodedatosnuméricoylaotradetipoString

PuedeocurrirunErrordetipos.

CualquieradelasexpresionesesNull resultadoesNull.

SiambasexpresionessondeltipoVariant,seaplicanlassiguientereglas:

Si EntoncesAmbasexpresionestipoVariantsonnuméricas

Suma.

AmbasexpresionestipoVariantsoncadenasdecaracteres

Concatenación.

UnaexpresióntipoVariantesnuméricaylaotraesunacadenadecaracteres

Suma.

Enadicionesaritméticassimplesdeexpresionesdetiposdedatosnuméricosúnicamente,eltipodedatoderesultadoeshabitualmenteelmismoqueeldelaexpresiónconmayorprecisión.Elordendeprecisión,demenosexactoamásexacto,esByte,Integer,Long,Single,Double,CurrencyyDecimal.Estareglatienelassiguientesexcepciones:

Si ElresultadoesSesumanuntipoSingleyuntipoLong,

untipoDouble.

EltipodedatoderesultadoesLong,SingleoDatetipovariantquedesbordasuintervaloválido,

seconvierteaunDoubletipovariant.

EltipodedatoderesultadoesunByte seconvierteaunIntegertipovariant.

Page 704: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

tipovariantquesesaledelintervaloválido,EltipodedatoderesultadoesunIntegertipovariantquesesaledelintervaloválido,

seconvierteaunLongtipovariant.

UnDateseagregaacualquiertipodedato,

untipoDate.

SiunadelasexpresionesoambassonexpresionesdetipoNull,resultadoesNull.SiambasexpresionessonEmpty,elresultadoesInteger.Sinembargo,sólounadelasexpresionesesEmpty,sedevuelvelaotrasinmodificacionescomoresultado.

NotaElordendeprecisiónutilizadoporlasumaylarestanoesigualqueelordendeprecisiónutilizadoporlamultiplicación.

Page 705: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 706: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

-(Operador)

Seutilizaparahallarladiferenciaentredosnúmerosoparaindicarelvalornegativodeunaexpresiónnumérica.

Page 707: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis1

resultado=número1-número2

Sintaxis2

–número

Lasintaxisdeloperador–constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.número Requerido;cualquierexpresiónnumérica.número1 Requerido;cualquierexpresiónnumérica.número2 Requerido;cualquierexpresiónnumérica.

Comentarios

Enlasintaxis1,–eseloperadordesubstracciónaritméticautilizadoparahallarladiferenciaentredosnúmeros.Enlasintaxis2,–seutilizacomoeloperadordenegaciónunariaparaindicarelvalornegativodeunaexpresión.

Eltipodedatoderesultadoesgeneralmenteeldelaexpresiónmásexacta.Elordendeprecisión,demenosexactoamásexacto,esByte,Integer,Long,Single,Double,CurrencyyDecimal.Esteordentienelassiguientesexcepciones:

Si ElresultEsunasubstraccióndeuntipoSingleyuntipoLong,

seconvierteatipoDouble.

EltipodedatoderesultadoesuntipovariantLong,SingleoDatequesesaledelintervaloválido,

seconvierteaunVariantquecontieneuntipoDouble.

EltipodedatoderesultadoesunBytetipovariantquesesaledelintervaloválido,

seconvierteaunIntegertipovariant.

Eltipodedatoderesultadoesun seconvierteaunLongtipovariant.

Page 708: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Integertipovariantquesesaledelintervaloválido,LasubstracciónimplicaauntipoDateycualquierotrotipodedato,

esuntipoDate.

LasubstracciónimplicadosexpresionestipoDate,

esuntipoDouble.

SiunaoambasdelasexpresionessondetipoNull,eltipodedatosdelresultadoesNull.SiunaexpresiónesdeltipoEmpty,seconsideracomosifuera0.

NotaElordendeprecisiónutilizadoporlasumaylarestanoesigualqueelordendeprecisiónutilizadoporlamultiplicación.

Page 709: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 710: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

/(Operador)

Seutilizaparadividirdosnúmerosyobtenerunresultadodesignoflotante.

Sintaxis

resultado=número1/número2

Lasintaxisdeloperador/constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.número1 Requerido;cualquierexpresiónnumérica.número2 Requerido;cualquierexpresiónnumérica.

Comentarios

EltipodedatoderesultadoesnormalmenteunDoubletipovariantountipo

Page 711: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Double.Estareglatienelassiguientesexcepciones:

Si ElresultadoesAmbasexpresionessonexpresionesdetipoByte,IntegeroSingle,

untipoSingleamenosquesalgadesuintervaloválido,encuyocasoseproduceunerror.

AmbasexpresionessonByte,IntegeroSingletipovariant,

untipoSingleamenosquesalgadesuintervaloválido;enestecasoresultadoesuntipoVariantquecontieneuntipoDouble.

LadivisióncontieneuntipoDecimalycualquierotrotipodedato,

untipoDecimal.

SiunaoambasdelasexpresionessondetipoNull,eltipodedatosdelresultadoesNull.SiunaexpresiónesdeltipoEmpty,seconsidera0

Page 712: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

\(Operador)

Page 713: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizaparadividirdosnúmerosyobtenerunresultadoentero.

Sintaxis

resultado=número1\número2

Lasintaxisdeloperador\constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.número1 Requerido;cualquierexpresiónnumérica.número2 Requerido;cualquierexpresiónnumérica.

Comentarios

AntesdeefectuarladivisiónseredondeanlasexpresionesnuméricasparaconvertirlasenexpresionestipoByte,IntegeroLong.

Normalmente,eltipodedatodelresultadoestipoByte,Bytetipovariant,tipoIntegeroIntegertipovariant,tipoLongoLongtipovariant,independientementedesielresultadoesunnúmeroenteroono.Lapartefraccionariasetrunca.Sinembargo,sicualquieradelasexpresionesesNull,resultadoesNull.TodaexpresiónqueseaEmptyseconsideracomo0.

Page 714: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

^(Operador)

Page 715: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizaparaelevarunnúmeroalapotenciadelexponente.

Sintaxis

resultado=número^exponente

Lasintaxisdeloperador^constadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.número Requerido;cualquierexpresiónnumérica.exponente Requerido;cualquierexpresiónnumérica.

Comentarios

Unnúmeropuedesernegativosólosiexponenteesunentero.Cuandoseefectúamásdeunaexponenciaciónenunaúnicaexpresión,eloperador^seresuelveenelordenenqueesté,deizquierdaaderecha.

Generalmente,eltipodedatodelresultadoesunDoubleounVariantquecontieneunDouble.Sinembargo,sinúmerooexponenteesunaexpresiónNullresultadoestambiénNull.

Page 716: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

=(Operador)

Descripción

Utilizadoparaasignarunvaloraunavariableopropiedad.

Page 717: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sintaxis

variable=valor

Lasintaxisdeloperador=constadelassiguientespartes:

Parte Descripciónvariable Cualquiervariableocualquierpropiedadquesepuede

escribir.valor Cualquierliteraldecadenaonumérico,constanteoexpresión.

Comentarios

Elnombredelladoizquierdodelsignoigualpuedeserunavariablesimpleounelementodeunamatriz.Laspropiedadesdelladoizquierdodelsignoigualsólopuedenserpropiedadesquesepuedenescribirentiempodeejecución.

Page 718: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

And(Operador)

Seutilizaparaefectuarunaconjunciónlógicadedosexpresiones.

Sintaxis

Page 719: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

resultado=expresión1Andexpresión2

LasintaxisdeloperadorAndconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.expresión1Requerido;cualquierexpresión.expresión2Requerido;cualquierexpresión.

Comentarios

SiysólosiambasexpresionesseevalúancomoTrue,elresultadoesTrue.SicualquieradelasexpresionesesFalse,elresultadoesFalse.Lasiguientetablailustracómosedeterminaelresultado:

Siexpresión1es Yexpresión2es ElresultadoesTrue True TrueTrue False FalseTrue Null NullFalse True FalseFalse False FalseFalse Null FalseNull True NullNull False FalseNull Null Null

EloperadorAndejecutatambiénunacomparaciónbitabitparaidentificarlosbitsdedosexpresionesnuméricasquetienenlamismaposiciónyestableceelbitcorrespondienteenelresultadosegúnlasiguientetabladedecisiónlógica:

Sielbitenexpresión1es

Yelbitenexpresión2es Elresultadoes

0 0 00 1 0

Page 720: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

1 0 01 1 1

Page 721: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Eqv(Operador)

Seutilizaparaefectuarunaequivalencialógicadedosexpresiones.

Sintaxis

Page 722: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

resultado=expresión1Eqvexpresión2

LasintaxisdeloperadorEqvconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.Expresión1 Requerido;cualquierexpresión.Expresión2 Requerido;cualquierexpresión.

Comentarios

SicualquieradelasexpresionesesdetipoNull,elresultadoestambiénNull.SiningunadelasexpresionesesNull,elresultadosedeterminasegúnlasiguientetabla:

Siexpresión1es Yexpresión2es ElresultadoesTrue True TrueTrue False FalseFalse True FalseFalse False True

EloperadorEqvejecutaunacomparaciónbitabitparaidentificarlosbitsdedosexpresionesnuméricasquetienenlamismaposiciónyestableceelbitcorrespondienteenelresultadosegúnlasiguientetabladedecisiónlógica:

Sibitenexpresión1es

Ybitenexpresión2es Elresultadoes

0 0 10 1 01 0 01 1 1

Page 723: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Imp(Operador)

Seutilizaparaefectuarunaimplicaciónlógicadedosexpresiones.

Sintaxis

Page 724: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

resultado=expresión1Impexpresión2

LasintaxisdeloperadorImpconstadelassiguientespartes:

Parte DescripciónResultado Requerido;cualquiervariablenumérica.Expresión1 Requerido;cualquierexpresión.Expresión2 Requerido;cualquierexpresión.

Comentarios

Lasiguientetablailustracómosedeterminaelresultado:

Siexpresión1es Yexpresión2es ElresultadoesTrue True TrueTrue False FalseTrue Null NullFalse True TrueFalse False TrueFalse Null TrueNull True TrueNull False NullNull Null Null

EloperadorImpejecutaunacomparaciónbitabitparaidentificarlosbitsdedosexpresionesnuméricasquetienenlamismaposiciónyestableceelbitcorrespondienteenelresultadosegúnlasiguientetabladedecisiónlógica:

Sibitenexpresión1es Sibitenexpresión2es Elresultadoes0 0 10 1 11 0 01 1 1

Page 725: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Is(Operador)

Seutilizaparacomparardosvariablesdereferenciadeobjeto.

Sintaxis

resultado=objeto1Isobjeto2

LasintaxisdeloperadorIsconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.objeto1 Requerido;cualquiernombredeobjeto.objeto2 Requerido;cualquiernombredeobjeto.

Comentarios

Sitantoobjeto1comoobjeto2serefierenalmismoobjeto,elresultadoesTrue;sino,elresultadoesFalse.Hayvariasmanerasdehacerquedosvariablesserefieranalmismoobjeto.

Enelsiguienteejemplo,sehadefinidoAdemodoqueserefieraalmismoobjetoqueB:

Page 726: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SetA=B

EnelsiguienteejemplosehacequeAyBserefieranalmismoobjetoqueC:

SetA=C

SetB=C

Page 727: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Like(Operador)

Page 728: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizaparacomparardoscadenasdecaracteres.

Sintaxis

resultado=cadenaLikepatrón

LasintaxisdeloperadorLikeconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.cadena Requerido;cualquierexpresióndecadena.patrón Requerido;cualquierexpresióndecadenaquesatisfacelas

convencionesdecoincidenciadepatronesdescritasenComentarios.

Comentarios

Sicadenacoincideconpatrón,elresultadoesTrue;sinocoincide,elresultadoesFalse.SicadenaopatrónesNull,elresultadoestambiénNull.

ElcomportamientodeloperadorLikedependedelainstrucciónOptionCompare.ElmétodopredeterminadodecomparacióndecadenasparacadamóduloesOptionCompareBinary.

Page 729: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

OptionCompareBinarydacomoresultadocomparacionesdecadenasbasadasenelordenderivadodelasrepresentacionesbinariasinternasdeloscaracteres.EnMicrosoftWindows,elordendependedelapáginadecódigo.Enelsiguienteejemploseilustraunordenbinariatípico:

A<B<E<Z<a<b<e<z<À<Ê<Ø<à<ê<ø

OptionCompareTextdacomoresultadocomparacionesdecadenasbasadasenelordendeterminadoporlaconfiguraciónregionaldesusistema.Losmismoscaracteresdelejemploanterior,ordenadosconlaopciónOptionCompareText,aparecenenelsiguienteorden:

(A=a)<(À=à)<(B=b)<(E=e)<(Ê=ê)<(Z=z)<(Ø=ø)

Lafunciónintegradadebúsquedadecoincidenciadepatronesofreceunaherramientaversátilparaefectuarcomparacionesdecadenas.Lascaracterísticasdeestafunciónpermitenelempleodecaracterescomodín,listasdecaracteresointervalosdecaracteresencualquiercombinaciónparahallarcoincidenciasencadenas.Enlasiguientetablaseindicanloscaracteresquesepuedenponerenpatrónyconquécoincidenlosmismos:

Caracteresenpattern Coincidenciasenstring? Uncaráctercualquiera.* Ceroomáscaracteres.# Undígitocualquiera(0–9).[listacaracteres] Uncaráctercualquieradelistacaracteres.[!listacaracteres] Uncaráctercualquieranoincluidoenlistacaracteres.

Sepuedeutilizarungrupodeunoomáscaracteres(listacaracteres)entrecorchetes([])paraestablecerunacoincidenciaconuncaráctercualquieradecadena;elgrupopuedeincluircasicualquiercódigodecarácter,incluyendodígitos.

NotaLoscaracteresespecialescorchetedeapertura([),interrogación(?),signodenúmero(#)yasterisco(*)sepuedenutilizarparaestablecerunacoincidencia

Page 730: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

consímismossólosivanentrecorchetes.Elcorchetedecierre(])nosepuedeutilizarenungrupoparaestablecerunacoincidenciaconsímismo,perosísepuedeutilizarfueradeungrupo,comocarácterindependiente.

Puedeespecificarunintervalodecaracteresenlistacaracterescolocandounguión(–)parasepararloslímitesinferiorysuperiordelintervalo.Porejemplo,lasecuencia[A–Z]enpatrónpermitehallarunacoincidenciasienlaposicióncorrespondientedecadenahayuncarácterenmayúsculascualquiera,comprendidoenelintervalodelaAalaZ.Sepuedenincluirmúltiplesintervalosentrecorchetes,sinnecesidaddedelimitadores.

Elsignificadodelintervaloespecificadodependedelaordenacióndecaracteresválidaentiempodeejecución(determinadoporOptionCompareylaconfiguraciónregionaldelsistemadóndeestáejecutándoseelcódigo).SiseutilizaelejemploconOptionCompareBinary,enelintervalo[A–E]coincidenA,ByE.ConOptionCompareText,en[A–E]coincidenA,a,À,à,B,b,E,e.Êyênoseincluyenentrelascoincidenciasporqueloscaracteresacentuadosseencuentrandespuésdelosnoacentuadosenelorden.

Otrasreglasimportantesparaefectuarcoincidenciasdepatronessonlassiguientes:

Unaexclamación(!)alcomienzodelistacaracteressignificaquehaycoincidencias,dentrodelacadenaparacualquiercarácterexceptolosincluidosenlistacaracteres.Sinoseencierraentrecorchetes,laexclamacióncoincideconsigomisma.

Elguión(–)puedeaparecertantoalcomienzo(despuésdelaexclamación,siseemplea)oalfinaldelistacaracteresparacoincidirconsigomismo.Encualquierotrolugar,elguiónsólosepuedeutilizarparaidentificarunintervalodecaracteres.

Cuandoseespecificaunintervalodecaracteres,éstosdebenaparecerenordenascendente(demenoramayor).[A-Z]esunpatrónválido,pero[Z-A]noloes.

Page 731: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Lasecuenciadecaracteres[]seconsideraunacadenadecaracteresdelongitudcero("").

Elalfabetodealgunosidiomasincluyecaracteresespecialesqueenrealidadrepresentandoscaracteresdistintos.Porejemplo,variosidiomasempleanelcarácter"æ"pararepresentarloscaracteres"a"y"e"cuandoaparecenjuntos.EloperadorLikereconocequeelcarácterespecialúnicoylosdoscaracteresindividualessonequivalentes.

Cuandoseespecificaenlaconfiguraciónregionaldelsistemaunidiomaqueutilizaunodeestoscaracteresespeciales,alocurrirelcarácterespecialenpatrónocadena,coincideconlasecuenciaequivalentede2caracteresenlaotracadena.Igualmente,unúnicocarácterespecialenpatrónincluidoentrecorchetes(ensolitario,enunalistaoenunintervalo)coincideconlasecuenciade2caracteresequivalenteencadena.

Page 732: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Mod(Operador)

Page 733: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Dividedosnúmerosydevuelvesóloelresto.

Sintaxis

resultado=número1Modnúmero2

LasintaxisdeloperadorModconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.número1 Requerido;cualquierexpresiónnumérica.número2 Requerido;cualquierexpresiónnumérica.

Comentarios

Eloperadordemódulo,oresto,dividenúmero1pornúmero2(redondeandoaenteroslosnúmerosdesignoflotante)ydevuelvesóloelrestocomoresultado.Porejemplo,enlasiguienteexpresión,A(queeselresultado)esiguala5.

A=19Mod6.7

Generalmente,eltipodedatoderesultadoestipoByte,Bytetipovariant,tipoInteger,Integertipovariant,tipoLongotipoVariantquecontieneuntipoLong,independientementedesielresultadoesunnúmeroenteroono.Laparte

Page 734: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

fraccionariasetrunca.Sinembargo,sicualquieradelasexpresionesesNull,elresultadoestambiénNull.TodaexpresiónEmptyseconsideracomo0.

Page 735: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Not(Operador)

Seutilizaparaejecutarunanegaciónlógicasobreunaexpresión.

Sintaxis

resultado=Notexpresión

LasintaxisdeloperadorNotconstadelassiguientespartes:

Parte Descripción

Page 736: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

resultado Requerido;cualquiervariablenumérica.expresiónRequerido;cualquierexpresión.

Comentarios

Lasiguientetablamuestracómosedeterminaelresultado:

Siexpresiónes EntoncesresultadoesTrue FalseFalse TrueNull Null

Además,eloperadorNotinviertelosvaloresdebitdecualquiervariableyestableceelbitcorrespondienteenresultado,deacuerdoconlasiguientetabladedecisiónlógica:

Sielbitenexpresiónes Entonceselbitenresultadoes0 11 0

Page 737: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 738: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Operadoresdecomparación

Page 739: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seutilizanparacompararexpresiones.

Sintaxis

resultado=expresión1operadorcomparaciónexpresión2

resultado=objeto1Isobjeto2

resultado=cadenaLikepatrón

Losoperadoresdecomparaciónconstandelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.expresión Requerido;cualquierexpresión.operadorcomparación Requerido;cualquieroperadordecomparación.objeto Requerido;cualquiernombredeobjeto.cadena Requerido;cualquierexpresióndecadena.patrón Requerido;cualquierexpresióndecadenaointervalo

decaracteres.

Comentarios

Estatablacontieneunalistadelosoperadoresdecomparaciónydelas

Page 740: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

condicionesquedeterminansielresultadoesTrue,FalseoNull:

Operador Truesi Falsesi Nullsi<(Menorque) expresión1<

expresión2expresión1>=expresión2

expresión1oexpresión2=Null

<=(Menoroigualque)

expresión1<=expresión2

expresión1>expresión2

expresión1oexpresión2=Null

>(Mayorque) expresión1>expresión2

expresión1<=expresión2

expresión1oexpresión2=Null

>=(Mayoroigualque)

expresión1>=expresión2

expresión1<expresión2

expresión1oexpresión2=Null

=(Iguala) expresión1=expresión2

expresión1<>expresión2

expresión1oexpresión2=Null

<>(Distintode) expresión1<>expresión2

expresión1=expresión2

expresión1oexpresión2=Null

NotaLosoperadoresIsyLiketienenfuncionesdecomparaciónespecíficasquedifierendelasdelosoperadoresincluidosenlasiguientetabla.

Cuandosecomparandosexpresiones,puedeserdifícildeterminarsiéstassecomparancomonúmerosocomocadenasdecaracteres.EnlasiguientetablasemuestraelmodoenquesecomparanexpresionesycuáleselresultadocuandocualquieradelasexpresionesnoesdeltipoVariant:

Si EntoncesAmbasexpresionessondetiposdedatosnuméricos(Byte,Boolean,Integer,Long,Single,Double,Date,CurrencyoDecimal)

Seefectúaunacomparaciónnumérica.

AmbasexpresionessondetipoString Seefectúaunacomparacióndecadenas.

UnaexpresiónesdetipodedatosnuméricoylaotraesuntipoVariantquees,opuedeser,unnúmero

Seefectúaunacomparaciónnumérica.

Page 741: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

UnaexpresiónesdetipodedatosnuméricoylaotraesuntipoVariantdecadenadecaracteresquenosepuedeconvertirenunnúmero

ProvocaunerrordeErrordetipos.

UnaexpresiónesdetipoStringylaotraescualquiertipoVariant,conexcepcióndeNull

Seefectúaunacomparacióndecadenas.

UnaexpresiónesEmptyylaotraesdeltipodedatosnumérico

Seefectúaunacomparaciónnumérica,usando0comolaexpresiónEmpty.

UnaexpresiónesEmptyylaotraesdeltipoString

Seefectúaunacomparacióndecadenas,utilizandounacadenadecaracteresdelongitudcero("")comolaexpresiónEmpty.

Sitantoexpresión1comoexpresión2sondeltipoVariant,eltiposubyacentedelasmismaseselquedeterminalamaneraenquesecomparan.EnlasiguientetablasemuestraelmodoenquesecomparanlasexpresionesycuáleselresultadodelaoperacióndeacuerdoconeltiposubyacentedeVariant:

Si EntoncesAmbasexpresionestipoVariantsonnuméricas

Seefectúaunacomparaciónnumérica.

AmbasexpresionestipoVariantsoncadenasdecaracteres

Seefectúaunacomparacióndecadenas.

UnaexpresióntipoVariantesnuméricaylaotraesunacadenadecaracteres

Laexpresiónnuméricaesmenorquelaexpresióndecadena.

UnaexpresióntipoVariantesEmptyylaotraesnumérica

Seefectúaunacomparaciónnumérica,usando0comolaexpresiónEmpty.

UnaexpresióntipoVariantesEmptyylaotraesunacadenadecaracteres

Seefectúaunacomparacióndecadenas,utilizandounacadenadecaracteresdelongitudcero("")comolaexpresiónEmpty.

Page 742: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AmbasexpresionestipoVariantsonEmpty

Lasexpresionessoniguales.

CuandosecomparauntipoSingleconuntipoDouble,ésteseredondeaalgradodeprecisióndeltipoSingle.

SiunaexpresióntipoCurrencysecomparaconunadetipoSingleoDouble,éstaseconviertealtipoCurrency.Deigualforma,cuandountipoDecimalsecomparaconuntipoSingleoDouble,eltipoSingleoelDoubleseconviertenatipoDecimal.ParaeltipoCurrency,cualquiervalorfraccionariomenorque0,0001sepierde;paraeltipoDecimal,cualquiervalorfraccionariomenorque1E-28sepierdeypuedeocurrirunerrordedesbordamiento.Perdervaloresfraccionariospuedehacerquedosvaloressecomparencomoigualescuandoenrealidadnoloson.

Page 743: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Or(Operador)

Seutilizaparaejecutarunadisyunciónlógicasobredosexpresiones.

Sintaxis

Page 744: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

resultado=expresión1Orexpresión2

LasintaxisdeloperadorOrconstadelassiguientespartes:

Parte DescripciónResultado Requerido;cualquiervariablenumérica.expresión1Requerido;cualquierexpresión.expresión2Requerido;cualquierexpresión.

Comentarios

Sicualquieradelasexpresiones,oambas,esTrue,elresultadoesTrue.Lasiguientetablaindicacómosedeterminaelresultado:

Siexpresión1es Yexpresión2es ElresultadoesTrue True TrueTrue False TrueTrue Null TrueFalse True TrueFalse False FalseFalse Null NullNull True TrueNull False NullNull Null Null

EloperadorOrejecutaunacomparaciónbitabitparaidentificarlosbitsdedosexpresionesnuméricasquetienenlamismaposiciónyestableceelbitcorrespondienteenelresultadosegúnlasiguientetabladedecisiónlógica:

Sibitenexpresión1es Sibitenexpresión2es Elresultadoes0 0 00 1 11 0 11 1 1

Page 745: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Xor(Operador)

Seutilizapararealizarunaexclusiónlógicaentredosexpresiones.

Sintaxis

Page 746: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

[resultado=]expresión1Xorexpresión2

LasintaxisdeloperadorXorconstadelassiguientespartes:

Parte Descripciónresultado Requerido;cualquiervariablenumérica.expresión1Requerido;cualquierexpresión.expresión2Requerido;cualquierexpresión.

Comentarios

SiunaysólounadelasexpresionesesTrue,elresultadoesTrue.Sinembargo,sicualquieradelasexpresionesesNull,elresultadoestambiénNull.CuandoningunadelasexpresionesesNull,elresultadosedeterminadeacuerdoconlasiguientetabla:

Siexpresión1es Yexpresión2es ElresultadoesTrue True FalseTrue False TrueFalse True TrueFalse False False

EloperadorXorfuncionacomooperadorlógicoybitabit.EjecutaunacomparaciónbitabitparaidentificarlosbitsdedosexpresionesutilizandológicadeOexclusivoparaobtenerelresultado,segúnlasiguientetabladedecisiónlógica:

Sibitenexpresión1es Ybitenexpresión2es Elresultadoes0 0 00 1 11 0 11 1 0

Page 747: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Convencionesdedocumentos

LadocumentacióndeVisualBasicutilizalassiguientesconvencionestipográficas.

Convención DescripciónSub,If,ChDir,Print,True,Debug

Laspalabrasennegritayconmayúsculaindicanpalabrasclaveespecíficasdellenguaje.

Setup Laspalabrasquesepidequeescribaelusuariodebenaparecerennegrita.

objeto,nomvariable,listaarg

Lasletrasminúsculasencursivaindicanlosmarcadoresdelugarparaqueelusuarioproporcionelainformación.

pathname,filenumber

Lasletrasminúsculasennegritaycursivaindicanlosmarcadoresdelugarparaargumentosdondesepuedeutilizarsintaxisdeposiciónodeargumentosconnombres.

[listaexpresiones] Loselementosdelasintaxisqueaparecenentrecorchetessonopcionales.

{While|Until} Enlasintaxis,lasllavesylabarravertical

Page 748: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

indicanunaelecciónobligatoriaentredosomáselementos.Sedebeelegirunodeloselementos,amenosquetodosesténentrecorchetes.Porejemplo:

[{This|OrThat}]

Esc,Entrar Laspalabrasenmayúsculaindicannombresdearchivo,teclasysecuenciasdeteclas.

Alt+F1,Ctrl+R Unsignomás(+)entrenombresdeteclasindicaunacombinacióndeteclas.Porejemplo,Alt+F1significamantenerpresionadalateclaAltmientrassepresionalateclaF1.

Convencionesdecódigo

Seutilizanlassiguientesconvencionesdecódigo:

Códigodeejemplo DescripciónMiCadena="¡Hola!" Estafuenteseusaparaelcódigo,

variablesytextodemensajesdeerror.

'Estoesuncomentario. Loscomentariosalcódigoseinicianconunapóstrofo(').

MiVar="Estoesun"_

&"ejemplo"_

&"decómocontinuarcódigo."

Unespacioconunsubrayado(_)continúaunalíneadecódigo

Page 749: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Juegodecaracteres(0–127)

0 32 [space] 64 @ 96 `1 33 ! 65 A 97 a2 34 " 66 B 98 b3 35 # 67 C 99 c4 36 $ 68 D 100 d5 37 % 69 E 101 e6 38 & 70 F 102 f7 39 ' 71 G 103 g8 ** 40 ( 72 H 104 h9 ** 41 ) 73 I 105 i10 ** 42 * 74 J 106 j11 43 + 75 K 107 k12 44 , 76 L 108 l13 ** 45 - 77 M 109 m14 46 . 78 N 110 n15 47 / 79 O 111 o16 48 0 80 P 112 p17 49 1 81 Q 113 q18 50 2 82 R 114 r19 51 3 83 S 115 s20 52 4 84 T 116 t21 53 5 85 U 117 u22 54 6 86 V 118 v23 55 7 87 W 119 w

Page 750: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

24 56 8 88 X 120 x25 57 9 89 Y 121 y26 58 : 90 Z 122 z27 59 ; 91 [ 123 {28 60 < 92 \ 124 |29 61 = 93 ] 125 }30 62 > 94 ^ 126 ~31 63 ? 95 _ 127

MicrosoftWindowsnoadmiteestoscaracteres.

**Losvalores8,9,10y13seconviertenaretroceso,tabulador,avancedelíneayretornodecarro,respectivamente.Notienenningunarepresentacióngráfica,perodependiendodelaaplicación,puedeninfluirenlapresentaciónvisualdeltexto.

Page 751: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Juegodecaracteres(128–255)

128 € 160 [space] 192 À 224 à129 € 161 ¡ 193 Á 225 á130 € 162 ¢ 194 Â 226 â131 € 163 £ 195 Ã 227 ã132 € 164 ¤ 196 Ä 228 ä133 € 165 ¥ 197 Å 229 å134 € 166 ¦ 198 Æ 230 æ135 € 167 § 199 Ç 231 ç136 € 168 ¨ 200 È 232 è137 € 169 © 201 É 233 é138 € 170 ª 202 Ê 234 ê139 € 171 « 203 Ë 235 ë140 € 172 ¬ 204 Ì 236 ì141 € 173 205 Í 237 í142 € 174 ® 206 Î 238 î143 € 175 ¯ 207 Ï 239 ï144 € 176 ° 208 Ð 240 ð145 € 177 ± 209 Ñ 241 ñ146 € 178 ² 210 Ò 242 ò147 € 179 ³ 211 Ó 243 ó148 € 180 ´ 212 Ô 244 ô149 € 181 µ 213 Õ 245 õ150 € 182 ¶ 214 Ö 246 ö151 € 183 · 215 × 247 ÷

Page 752: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

152 € 184 ¸ 216 Ø 248 ø153 € 185 ¹ 217 Ù 249 ù154 € 186 º 218 Ú 250 ú155 € 187 » 219 Û 251 û156 € 188 ¼ 220 Ü 252 ü157 € 189 ½ 221 Ý 253 ý158 € 190 ¾ 222 Þ 254 þ159 € 191 ¿ 223 ß 255 ÿ

€MicrosoftWindowsnoaceptaestoscaracteres.

LosvaloresdelatablasonlospredeterminadosdeWindows.Sinembargo,losvaloresdecarácterANSIestablecidosporencimade127sedeterminanporelcódigodepáginaespecíficodesusistemaoperativo.

Page 753: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

As

LapalabraclaveAsseutilizaenestoscontextos:

Const(Instrucción)

Declare(Instrucción)

Dim(Instrucción)

Function(Instrucción)

Name(Instrucción)

Open(Instrucción)

Private(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Public(Instrucción)

ReDim(Instrucción)

Static(Instrucción)

Sub(Instrucción)

Type(Instrucción)

Page 754: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Binary

LapalabraclaveBinaryseutilizaenestoscontextos:

Open(Instrucción)

OptionCompare(Instrucción)

Page 755: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ByRef

LapalabraclaveByRefseutilizaenestoscontextos:

Call(Instrucción)

Declare(Instrucción)

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Sub(Instrucción)

Page 756: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ByVal

LapalabraclaveByValseutilizaenestoscontextos:

Call(Instrucción)

Declare(Instrucción)

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Sub(Instrucción)

Page 757: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Date

LapalabraclaveDateseutilizaenestoscontextos:

Date(Tipodedatos)

Date(Función)

Date(Instrucción)

Page 758: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Else

LapalabraclaveElseseutilizaenestoscontextos:

If...Then...Else(Instrucción)

SelectCase(Instrucción)

Page 759: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Empty

LapalabraclaveEmptyseutilizacomounsubtipoVariant.Indicaqueunavariablenoestáinicializadaconunvalor.

Page 760: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Error

LapalabraclaveErrorseutilizaenestoscontextos:

Error(Función)

Error(Instrucción)

OnError(Instrucción)

Page 761: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

False

LapalabraclaveFalsetieneunvaloriguala0.

Page 762: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

For

LapalabraclaveForseutilizaenestoscontextos:

For...Next(Instrucción)

ForEach...Next(Instrucción)

Open(Instrucción)

Page 763: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Get

LapalabraclaveGetseutilizaenestoscontextos:

Get(Instrucción)

PropertyGet(Instrucción)

Page 764: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Input

LapalabraclaveInputseutilizaenestoscontextos:

Input(Función)

Input#(Instrucción)

LineInput#(Instrucción)

Open(Instrucción)

Page 765: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Is

LapalabraclaveIsseutilizaenestoscontextos:

If...Then...Else(Instrucción)

Is(Operador)

SelectCase(Instrucción)

Page 766: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Len

LapalabraclaveLenseutilizaenestoscontextos:

Len(Función)

Open(Instrucción)

Page 767: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Let

LapalabraclaveLetseutilizaenestoscontextos:

Let(Instrucción)

PropertyLet(Instrucción)

Page 768: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Lock

LapalabraclaveLockseutilizaenestoscontextos:

Lock,Unlock(Instrucciones)

Open(Instrucción)

Page 769: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Me

LapalabraclaveMesecomportacomounavariabledeclaradadeformaimplícita.Estádisponibleautomáticamenteparatodoslosprocedimientosenun

Page 770: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

módulodeclase.Cuandounaclasepuedetenermásdeunainstancia,Meproporcionaunaformadereferirseaunainstanciaespecíficadelaclasedondeseestáejecutandoelcódigo.ElusodeMeesespecialmenteútilcuandosedeseapasarinformaciónsobrelainstanciaqueseestáejecutandoactualmenteaunprocedimientodeotromódulo.Porejemplo,supongaquetieneelprocedimientosiguienteenunmódulo:

SubCambiaColorFormulario(NombreFormularioAsForm)

NombreFormulario.BackColor=RGB(Rnd*256,Rnd*256,Rnd*256)

EndSub

PuedellamaraesteprocedimientoypasarlainstanciaactualdelaclaseFormcomounargumentoutilizandolasiguienteinstrucción:

CambiaColorFormularioMe

Page 771: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Mid

LapalabraclaveMidseutilizaenestoscontextos:

Mid(Función)

Mid(Instrucción)

Page 772: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

New

LapalabraclaveNewseutilizaenestoscontextos:

Dim(Instrucción)

Private(Instrucción)

Public(Instrucción)

Set(Instrucción)

Static(Instrucción)

Page 773: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Next

LapalabraclaveNextseutilizaenestoscontextos:

For...Next(Instrucción)

ForEach...Next(Instrucción)

OnError(Instrucción)

Resume(Instrucción)

Page 774: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Nothing

LapalabraclaveNothingseutilizaparadesvincularunavariableobjetodeunobjetoreal.UtilicelainstrucciónSetparaasignarNothingaunavariableobjeto.Porejemplo:

SetMiObjeto=Nothing

Variasvariablesobjetopuedenreferirsealmismoobjetoreal.CuandoNothingseasignaaunavariableobjeto,lavariablenosereferiráyaalobjetoreal.Cuandovariasvariablesobjetoserefierenaunmismoobjeto,losrecursosdememoriaydelsistemaasociadosconelobjetosóloseliberandespuésdequetodasellassehanestablecidocomoNothing,yaseaexplícitamentemedianteSet,oimplícitamentedespuésdequelaúltimavariableobjetoestablecidacomoNothingsalgadelalcance.

Page 775: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Null

LapalabraclaveNullseutilizacomounsubtipoVariant.Indicaqueunavariablenotienedatosválidos.

Page 776: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

On

LapalabraclaveOnseutilizaenestoscontextos:

OnError(Instrucción)

On...GoSub(Instrucción)

On...GoTo(Instrucción)

Page 777: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Option

LapalabraclaveOptionseutilizaenestoscontextos:

OptionBase(Instrucción)

OptionCompare(Instrucción)

OptionExplicit(Instrucción)

OptionPrivate(Instrucción)

Page 778: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Optional

LapalabraclaveOptionalseutilizaenestoscontextos:

Declare(Instrucción)

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Sub(Instrucción)

Page 779: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ParamArray

LapalabraclaveParamArrayseutilizaenestoscontextos:

Declare(Instrucción)

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Sub(Instrucción)

Page 780: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Print

LapalabraclavePrintseutilizaenestoscontextos:

Print(Método)

Print#(Instrucción)

Page 781: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Private

LapalabraclavePrivateseutilizaenestoscontextos:

Const(Instrucción)

Declare(Instrucción)

Enum(Instrucción)

Function(Instrucción)

OptionPrivate(Instrucción)

Private(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Sub(Instrucción)

Type(Instrucción)

Page 782: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Property

LapalabraclavePropertyseutilizaenestoscontextos:

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Page 783: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Public

LapalabraclavePublicseutilizaenestoscontextos:

Const(Instrucción)

Declare(Instrucción)

Enum(Instrucción)

Event(Instrucción)

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Public(Instrucción)

Sub(Instrucción)

Type(Instrucción)

Page 784: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Resume

LapalabraclaveResumeseutilizaenestoscontextos:

OnError(Instrucción)

Resume(Instrucción)

Page 785: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Seek

LapalabraclaveSeekseutilizaenestoscontextos:

Seek(Función)

Seek(Instrucción)

Page 786: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Set

LapalabraclaveSetseutilizaenestoscontextos:

Set(Instrucción)

PropertySet(Instrucción)

Page 787: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Static

LapalabraclaveStaticseutilizaenestoscontextos:

Function(Instrucción)

PropertyGet(Instrucción)

PropertyLet(Instrucción)

PropertySet(Instrucción)

Static(Instrucción)

Sub(Instrucción)

Page 788: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Step

LapalabraclaveStepseutilizaenestoscontextos:

For...Next(Instrucción)

ForEach...Next(Instrucción)

Page 789: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

String

LapalabraclaveStringseutilizaenestoscontextos:

String(Tipodedatos)

String(Función)

Page 790: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Then

LapalabraclaveThenseutilizaenestoscontextos:

#If...Then...#Else(Directiva)

If...Then...Else(Instrucción)

Page 791: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Time

LapalabraclaveTimeseutilizaenestoscontextos:

Time(Función)

Time(Instrucción)

Page 792: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

To

LapalabraclaveToseutilizaenestoscontextos:

Dim(Instrucción)

For...Next(Instrucción)

Lock,Unlock(Instrucciones)

Private(Instrucción)

Public(Instrucción)

ReDim(Instrucción)

SelectCase(Instrucción)

Static(Instrucción)

Type(Instrucción)

Page 793: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

True

LapalabraclaveTruetieneunvaloriguala-1.

Page 794: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

WithEvents

LapalabraclaveWithEventsseutilizaenestoscontextos:

Dim(Instrucción)

Private(Instrucción)

Public(Instrucción)

Page 795: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AtEndOfLine(Propiedad)

Descripción

PropiedaddesólolecturaquedevuelveTruesielpunterodelarchivoprecedeinmediatamentealmarcadordefinaldelíneaenunarchivoTextStream.DevuelveFalsesinoleprecede.

Sintaxis

objeto.AtEndOfLine

ElobjetosiempreeselnombredeunobjetoTextStream.

Comentarios

LapropiedadAtEndOfLinesóloesaplicablealosarchivosTextStreamqueestánabiertosparalectura;sino,seproduceunerror.

ElcódigosiguientedemuestralautilizacióndelapropiedadAtEndOfLine:

Dimfs,a,retstring

Setfs=CreateObject("Scripting.FileSystemObject")

Seta=fs.OpenTextFile("c:\archivoprueba.txt",ForReading,False)

Page 796: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DoWhilea.AtEndOfLine<>True

retstring=a.Read(1)

...

Loop

a.Close

Page 797: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AtEndOfStream(Propiedad)

Descripción

PropiedaddesólolecturaquedevuelveTruesielpunterodelarchivoestáalfinaldeunarchivoTextStream.DevuelveFalsesinoloestá.

Sintaxis

objeto.AtEndOfStream

ElobjetoessiempreelnombredeunobjetoTextStream.

Comentarios

LapropiedadAtEndOfStreamsóloesaplicableaarchivosTextStreamqueseabrenparalectura;sino,seproduceunerror.

ElcódigosiguientedemuestralautilizacióndelapropiedadAtEndOfStream:

Dimfs,a,retstring

Setfs=CreateObject("Scripting.FileSystemObject")

Seta=fs.OpenTextFile("c:\archivoprueba.txt",ForReading,False)

DoWhilea.AtEndOfStream<>True

Page 798: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

retstring=a.ReadLine

...

Loop

a.Close

Page 799: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Attributes(Propiedad)

Descripción

Estableceodevuelvelosatributosdearchivosocarpetas.Lecturaoescritura,osólolectura,dependiendodelatributo.

Sintaxis

objeto.Attributes[=atributosNuevos]

LapropiedadAttributesconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileoFolder.atributosNuevos Opcional.Siseproporciona,atributosNuevoseselnuevo

valorparalosatributosdelobjetoespecificado.

Valores

ElargumentoatributosNuevospuedetenercualquieradelosvaloressiguientesocualquiercombinaciónlógicadelosvaloressiguientes:

Constante Valor Descripción

Page 800: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Normal 0 Archivonormal.Noseestablecenatributos.ReadOnly 1 Archivodesólolectura.Elatributoesdelecturao

escritura.Hidden 2 Archivooculto.Elatributoesdelecturaoescritura.System 4 Archivodelsistema.Elatributoesdelecturao

escritura.Volume 8 Etiquetadelvolumendelaunidaddedisco.El

atributoesdesólolectura.Directory 16 Carpetaodirectorio.Elatributoesdesólolectura.Archive 32 Elarchivocambiódesdelaúltimacopiade

seguridad.Elatributoesdelecturaoescritura.Alias 64 Vínculoométodoabreviado.Elatributoesdesólo

lectura.Compressed 128 Archivocomprimido.Elatributoesdesólolectura.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadAttributesconunarchivo:

SubSetClearArchiveBit(filespec)

Dimfs,f,r

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(fs.GetFileName(filespec))

Iff.attributesand32Then

r=MsgBox("ElbitArchivoestáestablecido,¿deseaborrarlo?",vbYesNo,"Establecer/BorrarbitArchivo")

Ifr=vbYesThen

f.attributes=f.attributes-32

MsgBox"ElbitArchivohasidoborrado."

Else

MsgBox"ElbitArchivopermaneceestablecido."

EndIf

Else

Page 801: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

r=MsgBox("ElbitArchivonoestáestablecido.¿Deseaverlo?",vbYesNo,"Establecer/BorrarbitArchivo")

Ifr=vbYesThen

f.attributes=f.attributes+32

MsgBox"ElbitArchivoestáestablecido."

Else

MsgBox"ElbitArchivopermaneceborrado."

EndIf

EndIf

EndSub

Page 802: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

AvailableSpace(Propiedad)

Descripción

Devuelvelacantidaddeespaciodisponibleparaunusuarioenelrecursocompartidoderedolaunidadespecificada.

Sintaxis

objeto.AvailableSpace

ElobjetoessiempreunobjetoDrive.

Comentarios

ElvalordevueltoporlapropiedadAvailableSpacenormalmenteeslamismaquedevolviólapropiedadFreeSpace.Puedenexistirdiferenciasentrelosdosvaloresparasistemasdeequiposqueadmitencuotas.

ElcódigosiguientedemuestralautilizacióndelapropiedadAvailableSpace:

SubShowAvailableSpace(drvPath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Page 803: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setd=fs.GetDrive(fs.GetDriveName(drvPath))

s="Drive"&UCase(drvPath)&"-"

s=s&d.VolumeName&vbCrLf

s=s&"AvailableSpace:"&FormatNumber(d.AvailableSpace

s=s&"Kbytes"

MsgBoxs

EndSub

Page 804: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Calendar(Propiedad)

Devuelveoestableceunvalorqueespecificaeltipodecalendarioautilizarenelproyecto.

PuedeutilizardosvaloresparaCalendar:

Parámetro Valor DescripciónvbCalGreg 0 Utilizaelcalendariogregoriano

(predeterminado).vbCalHijri 1 UtilizaelcalendarioHijri.

Comentarios

SólopuedeestablecerlapropiedadCalendarporprograma.Porejemplo,parautilizarelcalendarioHijri,utilice:

Page 805: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Calendar=vbCalHijri

Page 806: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Column(Propiedad)

Descripción

PropiedaddesólolecturaquedevuelveelnúmerodelacolumnadelaposiciónactualdelcarácterenunarchivoTextStream.

Sintaxis

objeto.Column

ElobjetoessiempreelnombredeunobjetoTextStream.

Comentarios

Despuésdeescribiruncarácternuevalínea,peroantesdequeseescribacualquierotrocarácter,Columnesiguala1.

Page 807: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CompareMode(Propiedad)

Descripción

EstableceydevuelveelmododecomparaciónqueseutilizaparacompararclavesdecadenasenunobjetoDictionary.

Sintaxis

objeto.CompareMode[=comparar]

LapropiedadCompareModeconstadelaspartessiguientes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDictionary.comparar Opcional.Siseproporciona,compararesunvalorquerepresenta

elmododecomparaciónutilizadoporlasfuncionescomoStrComp.

Valores

Elargumentocompararpuedetenerlossiguientesvalores:

Constante Valor Descripción

Page 808: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

vbUseCompareOption –1 RealizarunacomparaciónutilizandoelvalordelainstrucciónOptionCompare.

vbBinaryCompare 0 Realizarunacomparaciónbinaria.vbTextCompare 1 Realizarunacomparaciónbasadaeneltexto.vbDatabaseCompare 2 SóloMicrosoftAccess.Realizaruna

comparaciónbasadaenlainformacióndesubasededatos.

Comentarios

SeproduceunerrorsiintentacambiarelmododecomparacióndeunobjetoDictionaryqueyacontienedatos.

LapropiedadCompareModeutilizalosmismosvaloresqueelargumentocompararparalafunciónStrComp.Losvaloressuperioresa2sepuedenutilizarparahacerreferenciaacomparacionesutilizandoidentificadoreslocalesespecificosdelaconfiguraciónregional(LCID,LocaleIdentifier).

Page 809: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Count(Propiedad)

DevuelveuntipoLong(enterolargo)quecontieneelnúmerodeobjetosdeunacolección.Sólolectura.

Page 810: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Count(Propiedad)

Descripción

DevuelveelnúmerodeelementosdeunacolecciónuobjetoDictionary.Sólolectura.

Sintaxis

objeto.Count

ElobjetoessiempreelnombredeunodeloselementosdelalistaAplicablea.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadCount:

Dima,d,i'Crearvariasvariables

Setd=CreateObject("Scripting.Dictionary")

d.Add"a","Athens"'Agregarvariasclavesyelementos.

d.Add"b","Belgrade"

d.Add"c","Cairo"

a=d.Keys'Obtenerlasclaves

Fori=0Tod.Count-1'Repetirparacadaelementodelarray

Page 811: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Printa(i)'Imprimirlaclave

Next

...

Page 812: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateCreated(Propiedad)

Descripción

Devuelvelafechayhoraenquesecreólacarpetaoarchivoespecificos.Sólolectura.

Sintaxis

objeto.DateCreated

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadDateCreatedconunarchivo:

SubShowFileInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s="Creado:"&f.DateCreated

MsgBoxs

Page 813: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndSub

Page 814: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateLastAccessed(Propiedad)

Descripción

Devuelvelafechayhoraalaqueseprodujounaccesoaunacarpetaoarchivoespecificadosporúltimavez.Sólolectura.

Sintaxis

objeto.DateLastAccessed

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadDateLastAccessedconunarchivo:

SubShowFileAccessInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=UCase(filespec)&vbCrLf

s=s&"Creado:"&f.DateCreated&vbCrLf

Page 815: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"Últimoacceso:"&f.DateLastAccessed

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

ImportanteElcomportamientodeestemétododependedelsistemaoperativo.Sielsistemaoperativonoproporcionainformacióndelahoraolafecha,nosedevolveráningunainformación.

Page 816: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DateLastModified(Propiedad)

Descripción

Devuelvelafechayhoraenquesemodificóporúltimavezlacarpetaoelarchivoespecificados.Sólolectura.

Sintaxis

objeto.DateLastModified

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadDateLastModifiedconunarchivo:

SubShowFileAccessInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=UCase(filespec)&vbCrLf

s=s&"Creado:"&f.DateCreated&vbCrLf

Page 817: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"Últimoacceso:"&f.DateLastAccessed&vbCrLf

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

Page 818: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Description(Propiedad)

Devuelveoestableceunaexpresióndecadenaquecontieneunacadenadescriptivaasociadaaunerror.Lectura/escritura.

ParaelobjetoErr,devuelveoestableceunacadenadescriptivaasociadaaunerror.

Comentarios

LapropiedadDescriptioncontieneunabrevedescripcióndelerror.Puede

Page 819: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

utilizarestapropiedadparanotificaralusuariounerrorqueustednopuedeonodeseatratar.Algenerarunerrordefinidoporelusuario,asigneunabrevedescripcióndelmismoaestapropiedad.SinoserellenaDescriptionyelvalordeNumbercorrespondeaunerrorentiempodeejecucióndeVisualBasic,lacadenaquedevuelvelafunciónErrorsecolocaenDescriptioncuandosegeneraelerror.

Page 820: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Drive(Propiedad)

Descripción

Devuelvelaletradelaunidadenlaqueresidelacarpetaoelarchivoespecificados.Sólolectura.

Sintaxis

objeto.Drive

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadDrive:

SubShowFileAccessInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=f.Name&"onDrive"&UCase(f.Drive)&vbCrLf

s=s&"Creado:"&f.DateCreated&vbCrLf

s=s&"Últimoacceso:"&f.DateLastAccessed&vbCrLf

Page 821: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

Page 822: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DriveLetter(Propiedad)

Descripción

Devuelvelaletradeunidaddeunaunidadlocalfísicaounrecursocompartidodered.Sólolectura.

Sintaxis

objeto.DriveLetter

ElobjetoessiempreunobjetoDrive.

Comentarios

LapropiedadDriveLetterdevuelveunacadenadelongitudcero("")silaunidadespecificadanoestáasociadaconunaletradeunidad,porejemplo,unrecursocompartidoderedquenoseasignóaunaletradeunidad.

ElcódigosiguientedemuestralautilizacióndelapropiedadDriveLetter:

SubShowDriveLetter(drvPath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Page 823: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setd=fs.GetDrive(fs.GetDriveName(drvPath))

s="Unidad"&d.DriveLetter&":-"

s=s&d.VolumeName&vbCrLf

s=s&"Espaciolibre:"&FormatNumber(d.FreeSpace/1024,0)

s=s&"Kbytes"

MsgBoxs

EndSub

Page 824: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Drives(Propiedad)

Descripción

DevuelveunacolecciónDrivesquesecomponedelosobjetosDrivedisponiblesenlamáquinalocal.

Sintaxis

objeto.Drives

ElobjetoessiempreunobjetoFileSystemObject.

Comentarios

NoesnecesarioquelasunidadesdemediosseparablestenganmediosintroducidosparaqueaparezcanenlacolecciónDrives.

PuederecorrerlosmiembrosdelacolecciónDrivesutilizandounaconstrucciónForEach...Nextcomosedemuestraenelcódigosiguiente:

SubShowDriveList

Dimfs,d,dc,s,n

Setfs=CreateObject("Scripting.FileSystemObject")

Page 825: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setdc=fs.Drives

ForEachdindc

s=s&d.DriveLetter&"-"

Ifd.DriveType=3Then

n=d.ShareName

Else

n=d.VolumeName

EndIf

s=s&n&vbCrLf

Next

MsgBoxs

EndSub

Page 826: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DriveType(Propiedad)

Descripción

Devuelveunvalorqueindicaeltipodeunaunidadespecificada.

Sintaxis

objeto.DriveType

ElobjetoessiempreunobjetoDrive.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadDriveType:

SubShowDriveType(drvpath)

Dimfs,d,s,t

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(drvpath)

SelectCased.DriveType

Case0:t="Desconocido"

Case1:t="Separable"

Case2:t="Fijo"

Page 827: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Case3:t="Red"

Case4:t="CD-ROM"

Case5:t="DiscoRAM"

EndSelect

s="Unidad"&d.DriveLetter&":-"&t

MsgBoxs

EndSub

Page 828: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Files(Propiedad)

Descripción

DevuelveunacolecciónFilesquesecomponedelosobjetosFilecontenidosenlacarpetaespecificada,incluyendolosquetienenestablecidosatributosdelarchivodelsistemayoculto.

Sintaxis

objeto.Files

ElobjetoessiempreunobjetoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadFiles:

SubShowFileList(folderspec)

Dimfs,f,f1,fc,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(folderspec)

Setfc=f.Files

ForEachf1infc

Page 829: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&f1.name

s=s&vbCrLf

Next

MsgBoxs

EndSub

Page 830: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FileSystem(Propiedad)

Descripción

Devuelveeltipodesistemadearchivosqueutilizalaunidadespecificada.

Sintaxis

objeto.FileSystem

ElobjetoessiempreunobjetoDrive.

Comentarios

LostiposderetornodisponiblesincluyenFAT,NTFSyCDFS.

ElcódigosiguientedemuestralautilizacióndelapropiedadFileSystem:

SubShowFileSystemType

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive("e:")

s=d.FileSystem

MsgBoxs

Page 831: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

EndSub

Page 832: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

FreeSpace(Propiedad)

Descripción

Devuelvelacantidaddeespaciolibredisponibleparaunusuarioenelrecursocompartidoderedounidadespecificada.Sólolectura.

Sintaxis

objeto.FreeSpace

ElobjetoessiempreunobjetoDrive.

Comentarios

ElvalordevueltoporlapropiedadFreeSpacenormalmenteeselmismoqueelquedevolviólapropiedadAvailableSpace.Puedenexistirdiferenciasentrelosdosensistemasdeequiposqueadmitancuotas.

ElcódigosiguientedemuestralautilizacióndelapropiedadFreeSpace:

SubShowFreeSpace(drvPath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Page 833: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setd=fs.GetDrive(fs.GetDriveName(drvPath))

s="Unidad"&UCase(drvPath)&"-"

s=s&d.VolumeName&vbCrLf

s=s&"Espaciolibre:"&FormatNumber(d.FreeSpace

s=s&"Kbytes"

MsgBoxs

EndSub

Page 834: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

HelpContext(Propiedad)

DevuelveoestableceunaexpresióndecadenaquecontieneelidentificadordecontextodeuntemaparaunarchivodeAyudadeMicrosoftWindows.Lectura/escritura.

Comentarios

LapropiedadHelpContextseusaparamostrarautomáticamenteeltemadeAyudaespecificadoenlapropiedadHelpFile.SiHelpFileyHelpContextestánvacías,secomprobaráelvalordeNumber.SiNumbercorrespondeaunvalor

Page 835: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

deerrorentiempodeejecucióndeVisualBasic,seusaelidentificadordecontextoparaelerrordeVisualBasic.SielvalordeNumbernocorrespondeaunerrordeVisualBasic,semostrarálapantalladeíndicedelarchivodeAyudadeVisualBasic.

NotaEnsuaplicacióndebeincluirrutinasdetratamientodeloserroresmáscomunes.Alprogramarconunobjeto,puedeutilizarlainformaciónqueproporcionaelarchivodeAyudaparamejorarlacalidaddeltratamientodeloserroresoparamostrarunmensajesignificativoparaelusuariosielerrornoesrecuperable.

Page 836: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

HelpFile(Propiedad)

DevuelveoestableceunaexpresióndecadenaconunarutacompletadeunarchivodeAyudadeMicrosoftWindows.Lectura/escritura.

Comentarios

CuandoseespecificaunarchivodeAyudaenHelpFile,selellamaautomáticamentecuandoelusuariohaceclicelbotónAyuda(opresionalateclaF1)delcuadrodediálogodelmensajedeerror.SilapropiedadHelpContextcontieneunidentificadordecontextoválidoparaelarchivoespecificado,semostraráautomáticamenteeltemacorrespondiente.SinoseespecificanadaenHelpFile,apareceráelarchivodeAyudadeVisualBasic.

NotaEnsuaplicacióndebeincluirrutinasdetratamientodeloserroresmáscomunes.Alprogramarconunobjeto,puedeutilizarlainformaciónqueproporcionaelarchivodeAyudaparamejorarlacalidaddeltratamientodeloserroresoparamostrarunmensajesignificativoparaelusuariosielerrornoes

Page 837: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

recuperable.

Page 838: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsReady(Propiedad)

Descripción

DevuelveTruesilaunidadespecificadaestápreparadayFalsesinoloestá.

Sintaxis

objeto.IsReady

ElobjetoessiempreunobjetoDrive.

Comentarios

ParaunidadesdemediosseparablesyunidadesdeCD-ROM,IsReadydevuelveTruesólocuandoseinsertanlosmediosapropiadosyestánpreparadosparaelacceso.

ElcódigosiguientedemuestralautilizacióndelapropiedadIsReady:

SubShowDriveInfo(drvpath)

Dimfs,d,s,t

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(drvpath)

Page 839: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SelectCased.DriveType

Case0:t="Desconocido"

Case1:t="Separable"

Case2:t="Fijo"

Case3:t="Red"

Case4:t="CD-ROM"

Case5:t="DiscoRAM"

EndSelect

s="Unidad"&d.DriveLetter&":-"&t

Ifd.IsReadyThen

s=s&vbCrLf&"Launidadestápreparada."

Else

s=s&vbCrLf&"Launidadnoestápreparada."

EndIf

MsgBoxs

EndSub

Page 840: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

IsRootFolder(Propiedad)

Descripción

DevuelveTruesilacarpetaespecificadaeslacarpetaraízyFalsesinoloes.

Sintaxis

objeto.IsRootFolder

ElobjetoessiempreunobjetoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadIsRootFolder:

Dimfs

Setfs=CreateObject("Scripting.FileSystemObject")

SubDisplayLevelDepth(pathspec)

Dimf,n

Setf=fs.GetFolder(pathspec)

Iff.IsRootFolderThen

MsgBox"Lacarpetaespecificadaestáenlacarpetaraíz."

Else

Page 841: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

DoUntilf.IsRootFolder

Setf=f.ParentFolder

n=n+1

Loop

MsgBox"Lacarpetaespecificadaestáanidada"&n&"niveles."

EndIf

EndSub

Page 842: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Item(Propiedad)

Descripción

EstableceodevuelveunelementoparaunaclaveespecificadaenunobjetoDictionary.Paracolecciones,devuelveunelementobasadoenlaclaveespecificada.Lecturaoescritura.

Sintaxis

objeto.Item(clave)[=elementoNuevo]

LapropiedadItemconstadelaspartessiguientes:

Parte Descripciónobjeto Requerido.Siempreelnombredeunacolecciónuobjeto

Dictionary.clave Requerido.Laclaveasociadaconelelementoqueserecuperao

agrega.elementoNuevo Opcional.UtilizadosóloparaelobjetoDictionary;sin

aplicaciónparacolecciones.Siseproporciona,elargumentoelementoNuevoeselvalornuevoqueseasociaconlaclaveespecificada.

Page 843: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Comentarios

Silaclavenoseencuentracuandosecambiaunelemento,secreaunaclavenuevaconelelementoNuevoespecificado.Silaclavenoseencuentracuandoseintentadevolverunelementoexistente,secreaunaclavenuevaysuelementocorrespondientesedejavacío.

Page 844: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Key(Propiedad)

Descripción

EstableceunaclaveenunobjetoDictionary.

Sintaxis

objeto.Key(clave)=claveNueva

LapropiedadKeyconstadelaspartessiguientes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDictionary.clave Requerido.Elvalordelaclavequesecambia.claveNueva Requerido.Elvalornuevoquereemplazalaclaveespecificada.

Comentarios

Page 845: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Sinoseencuentralaclavecuandosecambiaunaclave,seproduciráunerrorentiempodeejecución.

Page 846: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

LastDLLError(Propiedad)

Devuelveuncódigodeerrordesistemaproducidoporunallamadaaunabibliotecadevínculosdinámicos(DLL).Sólolectura.

Comentarios

LapropiedadLastDLLErrorseaplicasóloallamadasaDLLrealizadasdesdecódigodeVisualBasic.Normalmente,cuandoserealizanllamadasdeestetipo,lafunciónllamadadevuelveuncódigoqueindicaeléxitooelfallodelaoperaciónyserellenalapropiedadLastDLLError.ConsulteladocumentacióndelasfuncionesdelaDLLparadeterminarquévaloresderetornoindicaneléxitooelfallo.Siembrequesedevuelvaelcódigodefallo,laaplicacióndeVisualBasicdeberácomprobarinmediatamentelapropiedadLastDLLError.CuandoseestablecelapropiedadLastDLLErrornosegeneraningunaexcepción.

Page 847: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Line(Propiedad)

Descripción

PropiedaddesólolecturaquedevuelveelnúmerodelíneaactualenunarchivoTextStream.

Sintaxis

objeto.Line

ElobjetoessiempreelnombredeunobjetoTextStream.

Comentarios

Unavezqueseabreunarchivoinicialmenteyantesdequeseescribaalgo,lapropiedadLineesiguala1.

Page 848: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Name(Propiedad)

Descripción

Estableceodevuelveelnombredeunacarpetaoarchivoespecificados.Lectura/escritura.

Sintaxis

objeto.Name[=nombreNuevo]

LapropiedadNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoFileoFolder.nombreNuevo Opcional.Siseproporciona,nombreNuevoeselnombrenuevo

delobjetoespecificado.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadName:

SubShowFileAccessInfo(filespec)

Dimfs,f,s

Page 849: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=f.Name&"enlaunidad"&UCase(f.Drive)&vbCrLf

s=s&"Creado:"&f.DateCreated&vbCrLf

s=s&"Últimoacceso:"&f.DateLastAccessed&vbCrLf

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

Page 850: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Number(Propiedad)

Devuelveoestableceunvalornuméricoqueespecificaunerror.NumbereslapropiedadpredeterminadadelobjetoErr.Lectura/escritura.

Comentarios

Aldevolverunerrordefinidoporelusuariodesdeunobjeto,establezcaErr.NumberagregandoelnúmeroquehaseleccionadocomocódigodeerroralaconstantevbObjectError.Porejemplo,puedeutilizarlalíneasiguienteparadevolverelnúmero1051comocódigodeerror:

Err.RaiseNumber:=vbObjectError+1051,Source:="AlgunaClase"

Page 851: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ParentFolder(Propiedad)

Descripción

DevuelveelobjetoFolderqueidentificaparalacarpetaprincipaldelacarpetaoelarchivoespecificados.Sólolectura.

Sintaxis

objeto.ParentFolder

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadParentFolderconunarchivo:

SubShowFileAccessInfo(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s=UCase(f.Name)&"en"&UCase(f.ParentFolder

s=s&"Creado:"&f.DateCreated&vbCrLf

Page 852: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"Últimoacceso:"&f.DateLastAccessed&vbCrLf

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

Page 853: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Path(Propiedad)

Descripción

Devuelvelarutadeunaunidad,carpetaoarchivoespecificados.

Sintaxis

objeto.Path

ElobjetoessiempreunobjetoFile,FolderoDrive.

Comentarios

Paraletrasdeunidad,launidadraíznoestáincluida.Porejemplo,larutadelaunidadCesC:,noC:\.

ElcódigosiguientedemuestralautilizacióndelapropiedadPathconunobjetoFile:

SubShowFileAccessInfo(filespec)

Dimfs,d,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

Page 854: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=UCase(f.Path)&vbCrLf

s=s&"Creado:"&f.DateCreated&vbCrLf

s=s&"Últimoacceso:"&f.DateLastAccessed&vbCrLf

s=s&"Últimamodificación:"&f.DateLastModified

MsgBoxs,0,"Informacióndeaccesoalarchivo"

EndSub

Page 855: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

RootFolder(Propiedad)

Descripción

DevuelveunobjetoFolderquerepresentalacarpetaraízdeunaunidadespecificada.Sólolectura.

Sintaxis

objeto.RootFolder

ElobjetoessiempreunobjetoDrive.

Comentarios

SepuedeteneraccesoatodoslosarchivosycarpetascontenidasenlaunidadutilizandoelobjetoFolderdevuelto.

Page 856: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SerialNumber(Propiedad)

Descripción

Devuelveelnúmerodeseriedecimalqueseutilizaparaidentificardeformaúnicaunvolumendedisco.

Sintaxis

objeto.SerialNumber

ElobjetoessiempreunobjetoDrive.

Comentarios

PuedeutilizarlapropiedadSerialNumberparaasegurarsequeseintroduceeldiscocorrectoenunaunidadconmediosseparables.

ElcódigosiguientedemuestralautilizacióndelapropiedadSerialNumber:

SubShowDriveInfo(drvpath)

Dimfs,d,s,t

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))

Page 857: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SelectCased.DriveType

Case0:t="Desconocido"

Case1:t="Separable"

Case2:t="Fijo"

Case3:t="Red"

Case4:t="CD-ROM"

Case5:t="DiscoRAM"

EndSelect

s="Unidad"&d.DriveLetter&":-"&t

s=s&vbCrLf&"NS:"&d.SerialNumber

MsgBoxs

EndSub

Page 858: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ShareName(Propiedad)

Descripción

Devuelveelnombredelrecursocompartidoderedparaunaunidadespecificada.

Sintaxis

objeto.ShareName

ElobjetoessiempreunobjetoDrive.

Comentarios

Sielobjetonoesunaunidaddered,lapropiedadShareNamedevuelveunacadenadelongitudcero("").

ElcódigosiguientedemuestralautilizacióndelapropiedadShareName:

SubShowDriveInfo(drvpath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))

s="Unidad"&d.DriveLetter&":-"&d.ShareName

Page 859: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MsgBoxs

EndSub

Page 860: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ShortName(Propiedad)

Descripción

Devuelveelnombrecortoutilizadoporlosprogramasquenecesitanlaconvencióndenomenclatura8+3anterior.

Sintaxis

objeto.ShortName

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadShortNameconunobjetoFile:

SubShowShortName(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s="Elnombrecortopara"&""&UCase(f.Name)

s=s&""&vbCrLf

Page 861: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"es:"&""&f.ShortName&""

MsgBoxs,0,"Informacióndenombrecorto"

EndSub

Page 862: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ShortPath(Propiedad)

Descripción

Devuelvelarutacortautilizadaporlosprogramasquenecesitannecesitanlaconvencióndenomenclatura8+3anterior.

Sintaxis

objeto.ShortPath

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadShortNameconunobjetoFile:

SubShowShortPath(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFile(filespec)

s="Larutacortapara"&""&UCase(f.Name)

s=s&""&vbCrLf

Page 863: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"es:"&""&f.ShortPath&""

MsgBoxs,0,"Informaciónderutacorta"

EndSub

Page 864: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Size(Propiedad)

Descripción

Paraarchivos,devuelveeltamaño,enbytes,delarchivoespecificado.Paracarpetas,devuelveeltamaño,enbytes,detodoslosarchivosysubcarpetascontenidosenlacarpeta.

Sintaxis

objeto.Size

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadSizeconunobjetoFolder:

SubShowFolderSize(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(filespec)

s=UCase(f.Name)&"utiliza"&f.size&"bytes."

Page 865: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MsgBoxs,0,"Informacióndeltamañodelacarpeta"

EndSub

Page 866: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Source(Propiedad)

Page 867: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Devuelveoestableceunaexpresióndecadenaqueespecificaelnombredelobjetoolaaplicaciónquegeneróelerror.Lectura/escritura.

Comentarios

LapropiedadSourceespecificaunaexpresióndecadenaquerepresentaalobjetoquegeneróelerror;laexpresiónesnormalmenteelnombredeclaseoelidentificadorprogramáticodelobjeto.PuedeutilizarSourceparaproporcionarinformaciónalusuariocuandoelcódigonopuedatratarunerrorgeneradoenunobjetoalquesehatenidoacceso.Porejemplo,sisetieneaccesoaMicrosoftExcelyéstegeneraunerrorDivisiónporcero,MicrosoftExcelestableceráenErr.NumbersucódigodeerrorcorrespondienteyExcel.ApplicationenSource.

Algenerarunerrorenelcódigo,Sourceseráelidentificadorprogramáticodelaaplicación.Paramódulosdeclase,Sourcedebecontenerunnombreconelformatoproyecto.clase.Cuandoseproduceunerrorinesperadoensucódigo,lapropiedadSourceserellenaautomáticamente.Paraloserroresenmódulosestándar,Sourcecontieneelnombredeproyecto.Paraloserroresenunmódulodeclase,Sourcecontieneunnombreconelformatoproyecto.clase.

Page 868: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

StartUpPosition(Propiedad)

DevuelveoestableceunvalorqueespecificalaposicióndeunUserFormcuandoapareceporprimeravez.

PuedeutilizarunodeloscuatrovaloressiguientesparaStartUpPosition:

Parámetro Valor DescripciónManual 0 Noseespecificavalorinicial.CenterOwner 1 Centradoenelelementoalqueperteneceel

UserForm.CenterScreen 2 Centradoenlapantalla.WindowsDefault 3 Colocadoenlaesquinasuperiorizquierdadela

pantalla.

Comentarios

PuedeestablecerlapropiedadStartUpPositionporprogramaodesdelaventanaPropiedades.

Page 869: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

SubFolders(Propiedad)

Descripción

DevuelveunacolecciónFolderscompuestaportodaslascarpetascontenidasenunacarpetaespecificada,incluyendolasquetienenestablecidosatributosdearchivodelsistemayoculto.

Sintaxis

objeto.SubFolders

ElobjetoessiempreunobjetoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadSubFolders:

SubShowFolderList(folderspec)

Dimfs,f,f1,s,sf

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(folderspec)

Setsf=f.SubFolders

ForEachf1insf

Page 870: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&f1.name

s=s&vbCrLf

Next

MsgBoxs

EndSub

Page 871: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

TotalSize(Propiedad)

Descripción

Devuelveelespaciototal,enbytes,deunaunidadorecursocompartidodered.

Sintaxis

objeto.TotalSize

ElobjetoessiempreunobjetoDrive.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadTotalSize:

SubShowSpaceInfo(drvpath)

Dimfs,d,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))

s="Unidad"&d.DriveLetter&":"

s=s&vbCrLf

s=s&"Tamañototal:"&FormatNumber(d.TotalSize

s=s&vbCrLf

Page 872: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

s=s&"Disponible:"&FormatNumber(d.AvailableSpace/1024,0)&"Kbytes"

MsgBoxs

EndSub

Page 873: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Type(Propiedad)

Descripción

Devuelveinformaciónacercadeltipodeunarchivoocarpeta.Porejemplo,paralosarchivosqueterminenen.txt,sedevuelve"Documentodetexto".

Sintaxis

objeto.Type

ElobjetoessiempreunobjetoFileoFolder.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadTypeparadevolveruntipodecarpeta.Enesteejemplo,intenteproporcionaralprocedimientolarutadelaPapeleradereciclajeuotracarpetaúnica.

SubShowFileSize(filespec)

Dimfs,f,s

Setfs=CreateObject("Scripting.FileSystemObject")

Setf=fs.GetFolder(filespec)

s=UCase(f.Name)&"isa"&f.Type

Page 874: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

MsgBoxs,0,"Informacióndeltipodelacarpeta"

EndSub

Page 875: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

VolumeName(Propiedad)

Descripción

Estableceodevuelveelnombredelvolumendelaunidadespecificada.Lecturaoescritura.

Sintaxis

objeto.VolumeName[=nombreNuevo]

LapropiedadVolumeNameconstadelassiguientespartes:

Parte Descripciónobjeto Requerido.SiempreelnombredeunobjetoDrive.nombreNuevo Opcional.Siseproporciona,nombreNuevoeselnombrenuevo

delobjetoespecificado.

Comentarios

ElcódigosiguientedemuestralautilizacióndelapropiedadVolumeName:

SubShowVolumeInfo(drvpath)

Dimfs,d,s

Page 876: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Setfs=CreateObject("Scripting.FileSystemObject")

Setd=fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))

s="Unidad"&d.DriveLetter&":-"&d.VolumeName

MsgBoxs

EndSub

Page 877: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Boolean(Tipodedatos)

LasvariablestipoBooleansealmacenancomonúmerosde16bits(2bytes),perosólopuedenserTrueoFalse.LasvariablestipoBooleansepresentancomoTrueoFalse(cuandoseutilizaPrint)o#TRUE#o#FALSE#(cuandoseutilizaWrite#).UtilicelaspalabrasclaveTrueyFalseparaasignarunodelosdosestadosalasvariablestipoBoolean.

CuandoseconviertenatipoBooleanotrostiposnuméricos,0seconvierteenFalse,yelrestodelosvaloresseconviertenenTrue.CuandolosvalorestipoBooleanseconviertenaotrostiposdedatosnuméricos,Falseseconviertaen0

Page 878: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

yTrueseconvierteen-1.

Page 879: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Byte(Tipodedatos)

LasvariablestipoBytesealmacenancomonúmerosde8bits(1byte)sencillossinsignoconunintervalodevaloresentre0y225.

EltipodedatosByteesútilparaalmacenardatosbinarios.

Page 880: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Currency(Tipodedatos)

LasvariablestipoCurrencysealmacenancomonúmerosde64bits(8bytes)enunformatodenúmeroenteroaescalade10.000paradarunnúmerodepuntofijocon15dígitosalaizquierdadelsignodecimaly4dígitosaladerecha.Estarepresentaciónproporcionaunintervalode-922.337.203.685.477,5808a922.337.203.685.477,5807.ElcarácterdedeclaracióndetipoparaCurrencyeselsigno@.

EltipodedatosCurrencyesútilparacálculosmonetariosyparacálculosdepuntofijo,enloscualeslaprecisiónesespecialmenteimportante.

Page 881: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Date(Tipodedatos)

LasvariablesdefechasealmacenancomonúmerosIEEEdesignoflotantede64bits(8bytes)quevandel1deenerodel100al31dediciembrede9999yhorariosde0:00:00a23:59:59.CualquiervalorreconocibledefechaliteralsepuedeasignaralasvariablestipoDate.Losliteralesdefechasedebenponerentrecaracteresdesignodenúmero(#).Porejemplo,#1Enero,1993#o#1Ene93#.

LasvariablestipoDatepresentanfechasdeacuerdoalformatodefechacortoreconocidoporsusistema.Lahorasepresentadeacuerdoalformatodehora

Page 882: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

reconocidoporsusistema(12ó24horas).

CuandoseconviertenatipoDateotrosdatosdetiponuméricos,losvaloresalaizquierdadelsignodecimalrepresentanlainformacióndefecha,mientrasquelosvaloresaladerechadelsignodecimalrepresentanlahora.Medianochees0ymediodíaes0,5.Losnúmerosenterosnegativosrepresentanfechasanterioresal30dediciembrede1899.

Page 883: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Decimal(Tipodedatos)

Lasvariablesdecimalessealmacenancomoenterosconsignode96bits(12bytes)escaladosconunapotenciavariablede10.Lapotenciadelfactordeescalade10especificaelnúmerodedígitosquehayaladerechadelsignodecimalyvaríadesde0a28.Conunaescalade0(sindecimales),elmayorvalorposiblees+/-79.228.162.514.264.337.593.543.950.335.Con28posicionesdecimales,elmayorvalores+/-7,9228162514264337593543950335yelmenorvalordistintode0es+/-0,0000000000000000000000000001.

NotaEnestemomento,eltipodedatoDecimalsólosepuedeutilizarconunVariant,esdecir,nopuededeclararunavariabledetipoDecimal.Sinembargo,puedecrearuntipoVariantconsubtipoDecimalutilizandolafunciónCDec.

Page 884: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Double(Tipodedatos)

Lasvariablesdobles(puntoflotantededobleprecisión)sealmacenancomonúmerosIEEEdecomaflotantede64bits(8bytes)convaloresde-1.79769313486231E308a-4,94065645841247E-324paravaloresnegativosyde4,94065645841247E-324a1,79769313486232E308paravalorespositivos.ElcarácterdedeclaracióndetipoparaDoubleeselsignodenúmero(#).

Page 885: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Integer(Tipodedatos)

LasvariablesIntegersealmacenancomonúmerosde16bits(2bytes)convaloresquevande-32.768a32.767.ElcarácterdedeclaracióndetipoparaeltipoIntegereselsignodeporcentaje(%).

LasvariablestipoIntegertambiénsepuedenutilizarpararepresentarvaloresenumerados.Unvalorenumeradopuedecontenerunconjuntofinitodenúmerosenterosúnicos,cadaunodeloscualestieneunsignificadoespecialenelcontextoenelqueseutiliza.Losvaloresenumeradosproporcionanunaformacómodadeseleccionarentreunnúmeroconocidodeopciones.Porejemplo,

Page 886: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

cuandosepreguntaalusuarioqueelijauncolordeunalista,sepodríatener0=negro,1=blancoyasísucesivamente.EsunabuenaprácticadeprogramacióndefinirconstantesutilizandolainstrucciónConstparacadavalorenumerado.

Page 887: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Long(Tipodedatos)

LasvariablesLong(enteroslargos)sealmacenancomonúmerosconsignode32bits(4bytes)conunvalorcomprendidoentre-2.147.483.648y2.147.483.647.ElcarácterdedeclaracióndetipoparaLongeselsigno&.

Page 888: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Object(Tipodedatos)

LasvariablesObjectsealmacenancomodireccionesde32bits(4bytes)quehacenreferenciaaobjetos.AlutilizarlainstrucciónSet,unavariabledeclaradacontipoObjectpuedetenerasignadocualquierreferenciaaunobjeto.

NotaAunqueunavariabledeclaradaconuntipoObjecteslosuficientementeflexiblecomoparacontenerunareferenciaacualquierobjeto,enlazarconelobjetoreferenciadopordichavariableesunprocesolento(enlaceentiempodeejecución).Paraforzarelenlacetemprano(enlaceentiempodecompilación),sepuedeasignarlareferenciadelobjetoaunavariabledeclaradaconunnombrede

Page 889: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

claseespecífico.

Page 890: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Single(Tipodedatos)

LasvariablesSingle(puntoflotantedeprecisiónsimple)sealmacenancomonúmerosIEEEdecomaflotantede32bits(4bytes)convaloresquevande-3,402823E38a-1,401298E-45paravaloresnegativosyde1,401298E-45a3,402823E38paravalorespositivos.ElcarácterdedeclaracióndetipoparaSingleeselsignodeexclamación(!).

Page 891: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

String(Tipodedatos)

Haydosclasesdecadenas:cadenasdelongitudvariableycadenasdelongitudfija.

Page 892: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Lascadenasdelongitudvariablepuedencontenerhasta2.000millonesdecaracteres(2^31).

Lascadenasdelongitudfijaquepuedencontenerde1a64KB(2^16)caracteres.NotaNosepuedeusarunacadenaPublicdelongitudfijaenunmódulodeclase.

LoscódigosparacaracteresdetipoStringvaríandesde0a255.Losprimeros128caracteres(0–127)deljuegodecaracterescorrespondenalasletrasylossímbolosdeuntecladoestándardeEE.UU.Estosprimeros128caracteressonlosmismosquelosdefinidosporeljuegodecaracteresASCII.Lossiguientes128caracteres(128–255)representancaracteresespeciales,comoletrasdealfabetosinternacionales,acentos,símbolosdemonedayfracciones.ElcarácterdedeclaracióndetipoparaStringeselsignodedólar($).

Page 893: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Tipodedatosdefinidoporelusuario

CualquiertipodedatosquedefinautilizandolainstrucciónType.Lostiposdedatosdefinidosporelusuariopuedencontenerunoomáselementosdecualquiertipodedatos,dematriz,odeuntipopreviamentedefinidoporelusuario.Porejemplo:

TypeMiTipo

MiNombreAsString'LavariabletipoStringalmacenaunnombre.

MiFechaNacimientoAsDate'LavariabletipoDatealmacenaunafechadenacimiento.

MiSexoAsInteger'LavariableIntegeralmacenaelsexo(0para

EndType'mujer,1parahombre).

Page 894: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 895: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Variant(Tipodedatos)

Page 896: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Varianteseltipodedatosparatodaslasvariablessinosedeclaranexplícitamentecomodealgúnotrotipo(utilizandoinstruccionescomoDim,Private,PublicoStatic).EltipodedatosVariantnotieneuncarácterdedeclaracióndetipo.

Variantesuntipodedatosespecialquepuedecontenercualquierclasededatosexceptodatosdecadenadelongitudfija(lostiposVariantadmitenahoratiposdefinidosporelusuario.)VarianttambiénpuedecontenerlosvaloresespecialesEmpty,Error,NothingyNull.PuededeterminarlaformaenquedeseatratarlosdatostipoVariantutilizandolasfuncionesVarTypeoTypeName.

Losdatosnuméricospuedensercualquiernúmeroenteroorealentre-1,797693134862315E308y-4,94066E-324paralosvaloresnegativos,yentre4,94066E-324y1,797693134862315E308paralosvalorespositivos.Generalmente,losdatostipoVariantnuméricosseconservanensutipodedatosoriginaldentrodeuntipoVariant.Porejemplo,siasignauntipoIntegerauntipoVariant,lasoperacionesposteriorestrataneltipoVariantcomosifuerauntipoInteger.Noobstante,sirealizaunaoperaciónaritméticaenuntipoVariantquecontengauntipodedatosByte,Integer,Long,oSingle,yelresultadosuperaelintervalonormaldeltipodedatosoriginal,elresultadosepromocionadentrodeltipoVarianthastaeltipodedatosmayorsiguiente.UntipoBytesepromocionaauntipoInteger,untipoIntegerauntipoLong,yuntipoLongyuntipoSinglesepromocionanauntipoDouble.SeproduceunerrorcuandolasvariablestipoVariantquecontienenvalorestipoCurrency,Decimal,yDouble

Page 897: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

superansusintervalosrespectivos.

PuedeutilizareltipodedatosVariantenlugardecualquierotrotipodedatosparatrabajarconlosdatosdeunamaneramásflexible.SielcontenidodeunavariabletipoVariantestáformadopordígitos,puedenserlarepresentacióndecadenadelosdígitososuvalorreal,dependiendodelcontexto.Porejemplo:

DimMiVarAsVariant

MiVar=98052

Enelejemploanterior,MiVarcontieneunarepresentaciónnumérica,elvalorreal98052.LosoperadoresaritméticosfuncionandelamaneraesperadaenlasvariablestipoVariantquecontienenvaloresnuméricosodatosdecadenaquesepuedeninterpretarcomonúmeros.Siutilizaeloperador+paraagregarMiVaraotravariabletipoVariantquecontieneunnúmero,oaunavariabledeuntiponuméricos,elresultadoesunasumaaritmética.

ElvalorEmptyindicaunavariabletipoVariantquenosehainicializado(alaquenosehaasignadounvalorinicial).UnavariabletipoVariantquecontengaEmptyseconsidera0siseutilizaenuncontextonuméricoyunacadenadelongitudcero("")siseutilizaenuncontextodecadenas.

NoconfundaEmptyconNull.NullindicaquelavariabletipoVariantintencionadamentenocontieneningúndatoválido.

EnuntipoVariant,Erroresunvalorespecialutilizadoparaindicarquesehaproducidounacondicióndeerrorenunprocedimiento.Noobstante,adiferenciadeotrostiposdeerrores,noseproduceelcontroldeerroresnormalaniveldeaplicación.Estopermitealusuario,oalapropiaaplicación,seleccionarentrevariasaccionesalternativasbasándoseenelvalordeerror.LosvaloresErrorsecreanconvirtiendonúmerosrealesavaloresdeerrormediantelafunciónCVErr.

Page 898: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

CallType(constantes)

Lassiguientesconstantespuedenutilizarseencualquierpattedelcódigoenlugardelosvaloresactuales:

Constante Valor DecripciónvbMethod 1 Indicaqueunmétodoha

sidollamado.vbGet 2 Indicaunprocedimiento

PropertyGet.vbLet 4 Indicaunprocedimiento

PropertyLet.vbSet 8 Indicaunprocedimiento

PropertySet.

Page 899: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Constantesdeformulario

Lassiguientesconstantespuedenutilizarseencualquierpattedelcódigoenlugardelosvaloresactuales:

Constante Valor DecripciónvbModeless 0 UserFormesnomodal.vbModal 1 UserFormesmodal

(predeterminado).

Page 900: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

ValoresderetornodeCStr

Siexpresiónes CStrdevuelveBoolean UnacadenaquecontieneTrueoFalseDate Unacadenaquecontieneunafechaenelformatodefecha

cortadesusistemaNull UnerrorentiempodeejecuciónEmpty Unacadenadelongitudcero("")Error UnacadenaquecontienelapalabraErrorseguidadel

númerodeerrorOtronúmero Unacadenaquecontieneelnúmero

Page 901: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Enum(Instrucción)

Page 902: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Declarauntipoparaunaenumeración.

Sintaxis

[Public|Private]Enumnombre

nombre_miembro[=expresión_constante]

nombre_miembro[=expresión_constante]

...

EndEnum

LainstrucciónEnumconstadelassiguientespartes:

Parte DescripciónPublic Opcional.EspecificaqueeltipoEnumesvisibleatravés

delproyecto.EltipoEnumesPublicdemanerapredeterminada.

Private Opcional.EspecificaqueeltipoEnumesvisiblesólodentrodelmóduloenelqueaparece.

nombre Requerido.ElnombredeltipodeEnum.ElnombredebeserunidentificadorválidodeVisualBasicyse

Page 903: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

especificacomoeltipocuandosedeclaranvariablesoparámetrosdeltipoEnum.

Nombre_miembro Requerido.UnidentificadorválidodeVisualBasicqueespecificaelnombreporelcualseconoceráunelementoconstituyentedeltipodeEnum.

Expresión_constante Opcional.Valordelelemento(evalúaparaunLong).Sinoseespecificaconstantexpression,elvalorasignadoescerozero(sieselprimermembername),o1mayorqueelvalordelmembernameinmediatamenteanterior.

Comentarios

LasvariablesdeenumeraciónsonvariablesdeclaradasconuntipoEnum.TantolasvariablescomolosparámetrospuedendeclararseconuntipodeEnum.LoselementosdeltipodeEnumseinicializanalosvaloresdeconstantesdentrodelainstrucciónEnum.Losvaloresasignadosnosepuedenmodificarentiempodeejecuciónypuedenincluirvalorespositivosynegativos.Porejemplo:

EnumSecurityLevel

IllegalEntry=-1

SecurityLevel1=0

SecurityLevel2=1

EndEnum

UnainstrucciónEnumsólopuedeaparecerenelniveldemódulo.UnavezdefinidoeltipodeEnum,puedeutilizarseparadeclararvariables,parámetrosoprocedimientosquedevuelvansutipo.NopuedecualificarelnombredeuntipoEnumconunnombredemódulo.LostiposPublicEnumdeunmódulodeclasenosonmiembrosdelaclase;sinembargo,seescribenenlabibliotecadetipos.LostiposEnumdefinidosenmódulosestándarnoseescribenenbibliotecasdetipos.LostiposPublicEnumdelmismonombrenosepuedendefinirenmódulosestándaryenmódulosdeclase,yaquecompartenelmismoespaciodenombres.CuandodostiposEnumdedistintasbibliotecasdetipostienenelmismonombreperodistintoselementos,unareferenciaaunavariabledeltipodependedelabibliotecadetiposquetengamayorprioridadenReferences.

Page 904: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NopuedeutilizaruntipoEnumcomodestinoenunbloqueWith.

Page 905: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 906: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla
Page 907: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Event(Instrucción)

Declarauneventodefinidoporelusuario.

Sintaxis

[Public]Eventnombre_procedimiento[(lista_argumentos)]

LainstrucciónEventconstadelassiguientespartes:

Parte DescripciónPublic Opcional.EspecificaqueEventseavisibleatravésdel

proyecto.LostiposEventssonPublicdeformapredeterminada.Tengaencuentaqueloseventossolamentepuedenserconducidosenelmóduloenelquesedeclaran.

nombre_procedimiento

Requerido.Nombredelevento;siguelasconvencionesestándardenombresdevariables.

Page 908: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

Elargumentolista_argumentosconstadelasiguientessintaxisypartes:

[ByVal|ByRef]nombre_variable[()][Astipo]

Parte DescripciónByVal Opcional.Indicaqueelargumentosepasaporvalor.ByRef Opcional.Indicaqueelargumentosepasaporreferencia.

ByRefeslaopciónpredeterminadaenVisualBasic.nombre_variable

Requerido.Nombredelavariablequerepresentaelargumentoquesepasaalprocedimiento;siguelasconvencionesestándardenombresdevariables.

tipo Opcional.Eltipodedatosdelargumentoquesepasaalprocedimiento;puedeserByte,Boolean,Integer,Long,Currency,Single,Double,Decimal(noaceptadoactualmente),Date,String(sólodelongitudvariable),Object,Variant,untipodefinidoporelusuario,ountipodeobjeto.

Comentarios

Unavezdeclaradoelevento,utilicelainstrucciónRaiseEventparadesencadenarlo.SeproduciráunerrordesintaxissiunadeclaraciónEventapareceenunmóduloestándar.Uneventonosepuededeclararparadevolverunvalor.Uneventotípicopodríadeclararseydesencadenarsecomosemuestraenlossiguientesfragmentosdecódigo:

'Declarauneventoaniveldemódulodeunmódulodeclase

EventLogonCompleted(UserNameasString)

Sub

RaiseEventLogonCompleted("AntonioJara")

EndSub

Page 909: Constante Valor DescripciónLas teclas de 0 a 9 son las mismas que sus equivalentes ASCII de 0 a 9: Constante Valor Descripción vbKey0 48 Tecla 0 vbKey1 49 Tecla 1 vbKey2 50 Tecla

NotaPuededeclararargumentosdeeventossolamenteparahacerargumentosdeprocedimientos,conlasexcepcionessiguientes:loseventosnopuedentenerargumentosconnombre,argumentosOptional,oargumentosParamArray.Loseventosnodevuelvenvalores.