VB 2003 – Adicionar comentario a celda en Excel y re-dimensionarlo
Trabajando sobre una exportacion desde VB 2003 a excel me encontre con un pequeño problemita: adicionar comentarios a una celda y ajustar el tamaño del cuadro de comentario para que el contenido del mismo se visualizara completo.
Buscando encontre la solucion:
' Se selecciona la celda sobre la que se quiere el comentario
Range("C1").Select
' Se crea el comentario para la celda
Range("C1").AddComment
' Se establece como visible el comentario
Range("C1").Comment.Visible = False
' Se esteblece el contenido del comentario
Range("C1").Comment.Text Text:="Este es mi hola mundo de comentarios!!"
' Se ajusta el tamaño del cuadro que contiene el comentario para permitir la visualizacion del texto
Range("C1").Comment.Shape.ScaleWidth 2, msoFalse, msoScaleFromTopLeft
Range("C1").Comment.Shape.ScaleHeight 1.5, msoFalse, msoScaleFromTopLeft
Un Saludo.
VB 2003 – Función para validar campos Hora Inicio y Hora Final
A continuación una función que debí crear para validar el formato de dos textBox destinados a recibir hora de inicio y fin de un evento.
La función valida que los textos cumplan con el formato “hh:mm tt” ó con el formato “HH:mm” y además verifica que la fecha final sea mayor que la fecha inicial.
Public Function ValidarTextosFecha() As Boolean
Dim blnValido As Boolean = True
Dim Expresion As System.Text.RegularExpressions.Regex
Expresion = New System.Text.RegularExpressions.Regex("^((([0]?[1-9]|1[0-2])(:)[0-5][0-9]( )?" & _
"(AM|am|aM|Am|PM|pm|pM|Pm))|(([0]?[0-9]|1[0-9]|2[0-3])(:)[0-5][0-9]))$", _
System.Text.RegularExpressions.RegexOptions.IgnoreCase)
If Not Expresion.IsMatch(txtHoraFin.Text) Then
Windows.Forms.MessageBox.Show("Formato inválido fecha inicio")
blnValido = False
End If
If Not Expresion.IsMatch(txtHoraInicio.Text) Then
Windows.Forms.MessageBox.Show("Formato inválido fecha final")
blnValido = False
End If
If blnValido Then
Dim inthorainicio As Integer = 0
Dim inthorafin As Integer = 0
Dim strTemporal As String = ""
If txtHoraInicio.Text.ToLower.IndexOf("pm") > 0 Then
inthorainicio = 1200
End If
strTemporal = txtHoraInicio.Text.Trim.Replace("am", "").Replace("pm", "").Replace(":", "")
If txtHoraInicio.Text.ToLower.IndexOf("pm") > 0 Or _
txtHoraInicio.Text.ToLower.IndexOf("am") > 0 Then
strTemporal = strTemporal.Substring(0, 2).Replace("12", "00") & _
strTemporal.Substring(2, strTemporal.Length - 2)
End If
inthorainicio += CInt(strTemporal)
If txtHoraFin.Text.ToLower.IndexOf("pm") > 0 Then
inthorafin = 1200
End If
strTemporal = txtHoraFin.Text.Trim.Replace("am", "").Replace("pm", "").Replace(":", "")
If txtHoraFin.Text.ToLower.IndexOf("pm") > 0 Or _
txtHoraFin.Text.ToLower.IndexOf("am") > 0 Then
strTemporal = strTemporal.Substring(0, 2).Replace("12", "00") & _
strTemporal.Substring(2, strTemporal.Length - 2)
End If
inthorafin += CInt(strTemporal)
If inthorafin <= inthorainicio Then
Windows.Forms.MessageBox.Show("La hora final debe ser mayor que la hora inicial")
blnValido = False
End If
End If
Return blnValido
End Function
Espero sea de ayuda.
Un Saludo.
Error al Instalar Infragistics en Windows 7 para procesador de 64 bits
Al ejecutar mi instalador cuando comienza el proceso automatico de instalacion y mas o menos cuando llevaba 2/3 partes de la barra de progreso comenzaba un proceso de rollback y al final simplemente reportaba que un error habia ocurrido.
Buscando en uno que otro foro encontre que la solucion es:
HABILITAR LA COMPATIBILIDAD CON INTERNET INFORMATION SERVER
6.0
Para ello:
1) Abre “Panel de Control”
2) Click en “Programas y caracteristicas”
3) Selecciona “Activar/inactivar Caracteristicas de Windows ” del menu izquierdo
4) Expande el nodo “Internet Information Services” , y luego el nodo “Herramientas de administración web”.
5) Chequea el nodo “Compatibilidad con Administracion de IIS6″ y click en Aceptar.
Espero sea de ayuda, un saludo.
Asp – Cerrar sesión y limpiar caché de autenticacion
Trabajando es una aplicación web con asp me encontré con la necesidad de implementar el cierre y borrado de sesión. Bueno he aqui el código que usé:
<html>
<header><title>cerrar sesion</title>
<%
Session.Contents.RemoveAll()
Session.Abandon()
%>
</header>
<body>
<!-- Aqui el codigo para mostrar informacion de cierre de sesion -->
<script type="text/javascript">
document.execCommand('ClearAuthenticationCache');
</script>
</body>
</html>
Noten que el código javascript está hasta el final del código, esto es porque si se borra en otro lugar del código se volverá a pedir autenticación para cargar el trozo de pagina siguoente al javascript.
Saludos.
VB.Net – Personal Software Process Basic – Ejemplo promedio y desviacion standar con listas enlazadas
He aqui el codigo fuente de mi primera practica realizada en un curso de Personal Software Process Basic (PSP Basic)
Observacion: El archivo esta en mi cuenta de skydrive, bastará con dar click en descargar.
Espero sea de ayuda, un Saludo.
ASP.Net – Establecer Master-Page a Content-Page manualmente
Un detalle que me entretuvo por un rato fue modificarle/establecerle a una pagina existente una master-page.
Existen tres formas para ello:
1. Usando la directiva @page como sigue:
<@Page Languaje=”VB” MasterPageFile=”MiSitio.master”@>
2. Definiendo la Master-Page en el web.config. Esto implicara que la pagina se esteblecera a todas las paginas del sitio. Cabe anotar que todas las Content-Page deberan tener los Content-Controls correspondientes a los definidos en la Master-Page a aplicar. El elemento en el archivo de configuracion se veria asi:
<pages masterPageFile=”MiSitio.master”>
3.Definiendo una Master-Page para que aplique a una carpeta en particular del sitio. Funciona enlazando las Master-Pages a los niveles de la aplicacion.
ASP.Net – Modificar control de Master-Page desde Content-Page
El problemita me surgio hace unos dias ya, buscando me encontre con una sencilla forma de acceder y modificar las propiedades de un control de la Master-Page desde el Code-Behind de la Content-Page.
'VB
Dim objEtiqueta As Label = CType(Master.FindControl("lblMiEtiqueta"), Label)
objEtiqueta.Text = "El nuevo texto de mi etiqueta"
Saludos
C# – Cargar enumerador a DropDownList
Desarrollando un pequeno proyecto web me econtre con un sencillo problema: Cargar los items de un enumerador en un DropDownList (combobox).
Teniendo:
enum MiEnumerador { colombia = 0 , ecuador = 1, peru = 2, venezuela = 3, bolivia = 4 }
Para cargar este enumerador en un dropdownlist:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
drpMiDrop.DataSource = Enum.GetNames(typeof(MiEnumerador ));
drpMiDrop.DataBind();
}
}
Espero sea de ayuda. Un Saludo.
Visual Basic 6 – Limpiar caracteres especiales de una cadena
El siguiente es un ejemplo de como limpiar los caracteres especiales de una cadena en Visual Basic 6.
Function EliminarEspeciales(ByVal s As String, _
Optional ByVal Filtro As String = "{}[]!"#$%&/()=?¡'¿|*+¨´:.;,<>") As String
Dim I As Integer
For I = 1 To Len(Filtro)
s = Replace(s, Mid(Filtro, I, 1), "")
Next
EliminarEspeciales = s
End Function
...
Dim strMiCadena = "H!ol$%a_ M?un)do)"
strMicadena = EliminarEspeciales(strMiCadena)
Logicamente al final tendremos en strMiCadena el valor “Hola Mundo”
Un Saludo
Error Iniciar/Detener Oracle 10 XE en Ubuntu
Despues de haber logrado instalar Oracle 10 XE en mi Ubuntu 10.04 sobre arquitectura AMD64 usando estas indicaciones. Al intentar iniciar o detener el servicio desde las opciones del menú de Gnome me aparecía el mensaje:
“Operation failed. eruano is not a member of ‘dba’ group”
La solución a esto: adicionar mi usuario al grupo dba para que tenga permisos de inicio, parada y gestión del servicio de base de datos:
$sudo usermod -a -G dba eruano
Y listo, si el comando se ejecuto bien ahora deberíamos poder iniciar y detener el servicio de base de datos desde las opciones del menú
Saludos