Sub Prueba()
For i = 1 To 10
For j = 1 To 10
Range(Cells(i, j), Cells(i, j)).Select
ActiveCell.FormulaR1C1 = i & "x" & j & "=" & i * j
Next
Next
End Sub
jueves, 20 de noviembre de 2008
Excel VBA: Crear tablas de multiplicar
jueves, 6 de noviembre de 2008
Access: Consulta de eliminación con más de una tabla
Si se intentan borrar registros como "productos de la familia pescados", si hay dos tablas involucradas sale el siguiente mensaje:
"Especifique la tabla que contiene los registros que desea eliminar."
Para hacer esto se debe poner en la consulta el asterisco (*) de la tabla que contiene los registros a eliminar y los campos imprescindibles del resto de la consulta
"Especifique la tabla que contiene los registros que desea eliminar."
Para hacer esto se debe poner en la consulta el asterisco (*) de la tabla que contiene los registros a eliminar y los campos imprescindibles del resto de la consulta
jueves, 21 de agosto de 2008
JavaScript: Acceder al valor de un RadioButton
Esta función devuelve el valor seleccionado en un grupo de botones de opción (RadioButton).
Se la debe llamar como valor=getRadioButtonSelectedValue(document.formulario.nombreradio);
function getRadioButtonSelectedValue(ctrl)
{
for(i=0;i<ctrl.length;i++)
if(ctrl[i].checked) return ctrl[i].value;
}
Se la debe llamar como valor=getRadioButtonSelectedValue(document.formulario.nombreradio);
martes, 19 de agosto de 2008
Calcular la edad de una persona
En Excel
Siendo A2 el lugar donde está la fecha de nacimiento.
En Access
En un módulo se pone este código.
Ya se puede usar en las consultas.
Siendo A2 el lugar donde está la fecha de nacimiento.
=AÑO(HOY())-AÑO(A2)-1 + (MES(HOY())>MES(A2)) + (MES(A2)=MES(HOY()))*(DIA(HOY())>=DIA(A2))En Access
En un módulo se pone este código.
Function Edad (FechaNacimiento As Variant) As Integer
Dim miEdad As Variant
If IsNull(FechaNacimiento) then Edad = 0: Exit Function
miEdad = DateDiff("yyyy", FechaNacimiento, Now)
If Date < DateSerial(Year(Now), Month(FechaNacimiento)_
, Day(FechaNacimiento)) Then
miEdad = miEdad - 1
End If
Edad = CInt(miEdad)
End Function
Ya se puede usar en las consultas.
miércoles, 13 de agosto de 2008
Error en PHP: Cannot modify header information
Si sale este mensaje en PHP
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/home/html/tienda/includes/languages/espanol/modules/payment/banktransfer.php:26 ) in /var/www/vhost/home/html/tienda/includes/functions/general.php on line 33
Significa que se ha enviado una respuesta antes de terminar con las cabeceras. Este error suele solucionarse mirando los dos ficheros que comenta (seguramente el primero) y borrar los espacios que pudiera haber antes de la marca <?php y despues de ?>
Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/
Significa que se ha enviado una respuesta antes de terminar con las cabeceras. Este error suele solucionarse mirando los dos ficheros que comenta (seguramente el primero) y borrar los espacios que pudiera haber antes de la marca <?php y despues de ?>
viernes, 8 de agosto de 2008
Quitar la barra amarilla de Internet Explorer para páginas locales
Para los desarrolladores que quieren probar constantemente su web localmente con IE sin que salga la barra de seguridad del internet explorer y service pack 2
Hay que agregar esta linea al HTML antes del body:
Hay que agregar esta linea al HTML antes del body:
<!-- saved from url=(0013)about:internet -->
jueves, 7 de agosto de 2008
Validar con DreamWeaver en castellano
El script que genera el Dreamweaver para validar formularios está en inglés.
Como es un código JavaScript se puede sustituir por el que aparece aquí. En vista código, se busca un apartado que pondrá SCRIPT y sustituye el existente por este otro.
Para que sirva de orientación, el código que hay que sustituir es el siguiente:
Como es un código JavaScript se puede sustituir por el que aparece aquí. En vista código, se busca un apartado que pondrá SCRIPT y sustituye el existente por este otro.
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' debe contener una dirección de correo válida.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' debe ser un número.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' debe ser entre '+min+' y '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' es un dato obligatorio.\n'; }
} if (errors) alert('Error(es) en el formulario:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
Para que sirva de orientación, el código que hay que sustituir es el siguiente:
<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args[i]);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
Suscribirse a:
Entradas (Atom)