PREGUNTAS CONTESTADAS - Visual Basic

 Hay un total de 3030 Preguntas.<<  >> 

    Pregunta:  63479 - ELIMINAR UNA LINEA DE EXCELL CON VISUAL
Autor:  Naiara Lasa
Buenas, tengo una hoja excell la cual tiene varias columnas y en la tercera columnas depediendo de la segunda columna tiene algunos sumatorios, lo que yo quiero es que me borra todas aquellas lineas donde en la columna A tenga texto, para ello he utilizado la sentencia
With ThisWorkbook
.Sheets(nombreHojaPS).Row(i).EntireRow.Delete
End With
pero no funcion alguien me ayuda????.

Agradeciendoles por anticipado.
  Respuesta:  Gonzalo Quintana
Hola Naiara

Deberíamos ver el proceso anterior y posterior de tu código para poder brindarte una mejor ayuda.

Por lo pronto podría preguntarte ¿¿a que hace referencia la "i"??

Saludos,

Gonzalo

    Pregunta:  63536 - SACAR LA FECHA DESDE EL SERVIDOR
Autor:  Omar Figueroa
Estoy construyendo una aplicacion para servicio tecnico, pero me piden que las fechas que maneje el sistema se cargen desde el servidor y no del pc, para que no las cambien.

en otras palabras el date, pero no del pc sino del servidor o la base de datos.

he intentado encontrar algo pero nada como lo que necesito.

agradecere sus comentarios.
  Respuesta:  Arturo Fdez-Pacheco Conesa
Yo utilizo los siguiente para obtener la fecha del servidor donde estan los datos.

Utilizo una conexion ADODB a un servidor externo con base de datos MySql y ejecuto lo siguiente:

Dim conexion as ADODB.Connection
Dim rs AS ADODB.Recordset
Dim fecha_servidor as String

Set rs = conexion.Execute("SELECT NOW()")

fecha_servidor = Format(rs(0), "dd/mm/yyyy")

rs.Close
Set rs=Nothing
  Respuesta:  Omar Figueroa
Sres., no pude encontrar una solucion para hacer esto, pero por si les sirve lo que se implemento finalmente fue mas simple :

pcs con xp y cuentas limitadas las cuales no tienen acceso a cambiar el ambiente de trabajo.

Gracias de todas maneras.

Atte.,

Omar Figueroa M.

    Pregunta:  63599 - BUSQUEDA SQL CON VB6 EN ACCES 2000 NULA
Autor:  CArlos Ruiz
Buen dia para todos!!!

Mi problemita es que realizo una busqueda desde una aplicación que estoy desarrollando en Visual Basic 6, mediante SQL, a una base de datos de Acces 2000 la cual no me arroja ningun tipo de resultado, es mas ni 1 solo error. Ya he trabajo con casi todo tipo de busquedas, estaba experimentado una forma en la que desde la misma aplicacion se escoge el parametro de la tabla de la base y luego en un textbox se escribe lo q se desea buscar. Al parecer esta es mejor forma que se ajusta a mi aplicación.
El caso es que con breakpoints me di cuenta que la cadena de conexion de busqueda no me esta asignado lo que le escribo en codigo.
Me explico:
strSQL = "SELECT * FROM TMascota WHERE ' " & buscarm & " ' = ' " & bmascota & " ' "
nota: las comillas las separo para que vean que uso la sintáxis correcta.
Donde bucarm es el parametro de busqueda q elijo a través de un combobox (es decir, para asignar el campo de la tabla TMascota que deseo filtrar) y bmascota es lo que le asigno para realizar la busqueda (es decir el contenido del campo que elejí).
Cuando leo el valor de la variable String strSQL aparece " ". Lo que me indica que no me asigna el codigo escrito arriba.

Agradecería enormemente las sugerencias que me puedan dar.

Saludos!!!!
  Respuesta:  Arturo Fdez-Pacheco Conesa
El campo de la tabla que le pasas no de be ir entrte comillas

Debes codificarlo asi:

strSQL = "SELECT * FROM TMascota WHERE " & buscarm & "' = ' " & bmascota & " ' "

    Pregunta:  63754 - DSN DESDE VISUAL BASIC
Autor:  Elier Lora B
Saludo a Todos:
Mi Problema es que he creado un DSN por Código, de la siguiente Manera

Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" ( _
ByVal hwndParent As Long, _
ByVal Frequest As Long, _
ByVal LpszDriver As String, _
ByVal lpszAttributes As String) As Long

Private Sub CreaDSN()
Dim CadAtrb As String
Dim Dl As Boolean
CadAtrb = "DSN=dsnPlantilla" & Chr(0)
CadAtrb = CadAtrb & "Server=Hanuman" & Chr(0)
CadAtrb = CadAtrb & "Trusted_Connection=True" & Chr(0)
CadAtrb = CadAtrb & "Database=Plantilla" & Chr(0)
If SQLConfigDataSource(0&, 4, "SQL Server", CadAtrb) Then
MsgBox "DSN Creado correctamente"
Else
MsgBox "DSN No Fué Creado"
End If
End Sub

El DSN se crea sin dificultad... Pero al ejecutar los programas que lo utilizan (para visualizar Reportes de Crystal Report) no se logra la coneccion con el servidor en el momento de ejecutar el Reporte... sin embargo, sin hacer nada mas... voy por el panel de control Origenes de Datos, localizo el DSN creado... lo edito sin realizarle ningun cambio... al llegar al final pruebo la coneccion y resulta satisfactoria la prueba. y desde ese momento funcionan los progrmas que antes no funcionaban, es como si el DSN necesitara algún Detalle en los atributos. que por supuesto no sé cómo realizarlo desde el código.

Alguien podría Ayudarme?
Gracias
  Respuesta:  Laubrisa Orellana
Por lo que veo en tu codigo te falta indicar usuario y clave aunque no tenga el usuario una clave debes identificar el usuario con que tienes acceso

    Pregunta:  64221 - TEXTBOX QUE TENGA FORMATO DE FECHA
Autor:  YONATHAN ALVAREZ
Buenas noches! Soy nuevo programando y me asignaron un pequeño programa donde debo manejar fecha y otros datos, pero no se como poner un textbox con el formato de fecha x/x/x, si alguien podria ayudarme,
  Respuesta:  Mario Campos
textbox1.text=format(fecha,"dd-mm-yyyy"), revisa la sintaxis de la funcion format y alli vas a encontrar el formato que se ajusta a lo que necesitas

    Pregunta:  64521 - INPUTBOX CON FORMATO FECHA
Autor:  Luis Ortiz
Tengo un INPUTBOX donde el usuario debe digitar una fecha. Cómo sería el código para que al ingresar la fecha dd/mm/aa el usuario no tenga que escribir los símbolos "/"
  Respuesta:  Fernando Fumero
Si el usuario solo digita los numero y no los /, por ejemplo si deseamos introducir la fecha 02/09/1965, el usuario solo digitará 01091965, luego nosotros le agregamos los / en las posiciones correctas y validamos la fecha, así:

Option Explicit
Dim AUX_FECHA As String

Private Sub Command1_Click()
AUX_FECHA = InputBox("Digite la fecha, solo números." & vbCrLf & "(Ejempo: 02/09/1965 = 02091965)", "Fecha")
MsgBox VALIDAR(AUX_FECHA), vbInformation, "La Fecha"
End Sub

Friend Function VALIDAR(X_FECHA As String) As String
Dim LINEA As String
Dim X_DIA As String
Dim X_MES As String
Dim X_ANO As String
LINEA = ""
If Not IsNumeric(X_FECHA) Then
LINEA = LINEA & "- Solo digite los 8 números." & vbCrLf
Else
If Len(X_FECHA) = 8 Then
X_DIA = Left(X_FECHA, 2)
X_MES = Mid(X_FECHA, 3, 2)
X_ANO = Right(X_FECHA, 4)
If Not IsDate(X_DIA & "/" & X_MES & "/" & X_ANO) Then LINEA = LINEA & "- La fecha está fuera de rango." & vbCrLf
Else
LINEA = LINEA & "- Fecha mal digitada, tienen que ser 8 dígitos." & vbCrLf
End If
End If
If LINEA = "" Then VALIDAR = X_DIA & "/" & X_MES & "/" & X_ANO Else VALIDAR = LINEA
End Function

Cortesía de FUMERO CORP. - [email protected] -

    Pregunta:  64551 - DIFERENCIA DE TIEMPO
Autor:  Rene Carrasco
Tengo una aplicación con Access y VB6 y estoy llenando un archivo en excel para la generación de estadísticas y uno de los campos es tiempo promedio de repuesta.

Esto es de varios días necesito saber cuanto tiempo se tardo en atender una persona.

El problema es que cuando saco la diferencia de los tiempos y esto corresponden a días diferentes me genera datos muy exagerados que no son reales

Ejm.
Inicio 06/03/2010 10:41:31 p.m. Fin 07/03/2010 06:33:13 a.m.

después de leer 3 ó 4 registros con estas mismas características me dice que lleva como un mes de diferencia entre las fechas y al sacar el promedio también genera datos muy lejanos.
  Respuesta:  Fernando Fumero
Option Explicit

' Función DateDiff(intervalo, fecha1, fecha2)
'
' El Intervalo es string, puede ser:
' "yyyy"=Año
' "q" Trimestre
' "m" Mes
' "y" Día del año
' "d" Día
' "w" Día de la semana
' "ww" Semana
' "h" Hora
' "n" Minuto
' "s" Segundo
'
' la respuesta será numeral y será dada en el intervalo que se seleccionó
'

Private Sub CMD_DIFERENCIA_FECHAS_Click()
Dim OK As Boolean
OK = True
If Not IsDate(TXT_FECHA_INI) Then OK = False: MsgBox "- Fecha inicio está mal digitada.", vbCritical, "Fecha 1"
If Not IsDate(TXT_FECHA_FIN) Then OK = False: MsgBox "- Fecha final está mal digitada.", vbCritical, "Fecha 2"
If OK Then MsgBox "Diferencia en minutos...: " & DateDiff("n", TXT_FECHA_INI, TXT_FECHA_FIN), vbInformation, "Diferencia"
End Sub

' En el caso específico de tu pregunta, la respuesta son 472 minutos.

Cortesía de FUMERO CORP. - [email protected] -

    Pregunta:  64558 - OBTENER NAME DE MENUS EN TIEMPO DE EJECUCION
Autor:  Andres Gutierrez
Hola.
Necesito obtener la propiedad Name de los menus y submenus de una forma en visual basic 6. He encontrado que con GetMenuString obtengo la propiedad caption de culquier estructura del menu, pero me gustaria saber si tambien hay forma de obtener la proiedad name?

Gracias
  Respuesta:  Warren Jason Román
no se si esto te sirva, pero si lo que quieres es que devuelba el nombre en String(Texto) del menu y ya sabes el nombre... el comando

[nombre].Item(Index).Name

Regresara el nombre del objeto menu
Tal vez sea util en menus con matrizes y el mismo nombre
fuera de eso no le encuentro otra utilidad

PD: Perdon si no contesta tu pregunta

    Pregunta:  64678 - PREVIEW CON EL OBJETO PRINTER
Autor:  Dante Morales
Hola. Soy novato y necesito saber cómo sería un código (o que que sentencias y/o propiedades o métodos) puedo lograr ver en pantalla lo que posteriormente enviaría a la impresora. Sería una vista preliminar de los datos a imprimir antes de ejecutar EndDoc. Desde ya, muchas gracias.
  Respuesta:  Fernando Fumero
Si lo que vas a enviar a imprimir es solo texto, lo que Yo hago es primero enviar todo a un archivo .TXT, luego leo dicho archivo y lo envío a imprimir.

Creamos un nuevo proyecto con dos formularios, Form1 y Form2 y....

En formulario 1: Rutina para salvar los datos de un TextBox en una archivo .TXT, creamos un TextoBox, con Multiline=true y ScrollBars=3 - Both y agregamos dos CommandButton, uno con el nombre=CMD_GUARDAR y otro con el nombre CMD_PREVIEW, le copias el siguiente código.......

Option Explicit

Private Sub Form_Load()
Text1.Text = ""
End Sub

Private Sub CMD_GUARDAR_Click()
Dim CANAL As Integer
CANAL = FreeFile
Open App.Path & "PREVIEW.TXT" For Output As CANAL
Print #CANAL, Text1.Text
Close #CANAL
End Sub

Private Sub CMD_PREVIEW_Click()
Form2.Show
End Sub
------------------------------------------------------------------------

En formulario 2: Rutinas para preview e imprimir. Creamos un TextBox, con Multiline=true y ScrollBars=3 - Both y agregamos un CommandButton con el nombre=CMD_IMPRIMIR y le copias el siguiente código.......
.....

Option Explicit

Private Sub Form_Load()
Dim LINEA As String
Dim CANAL As Integer
TXT_PREVIEW.Text = ""
CANAL = FreeFile
Open App.Path & "PREVIEW.TXT" For Input As CANAL
While Not EOF(CANAL)
Line Input #CANAL, LINEA
TXT_PREVIEW.Text = TXT_PREVIEW.Text & LINEA & vbCrLf
Wend
Close #CANAL
End Sub

Private Sub CMD_IMPRIMIR_Click()
Printer.Print TXT_PREVIEW.Text
Printer.EndDoc
End Sub

NOTA: Tienes que salvar el proyecto en una carpeta antes de ejecutarlo.

Cortesía de FUMERO CORP, --- [email protected] ---

    Pregunta:  64736 - PROBLEMA CON NUMEROS ALEATORIOS
Autor:  Gonzalo
Hola, estoy armando un programa en visual studio y necesito crear 4 numeros aleatorios diferentes entre 10
Buscando en internet encontre un algoritmo que me funciono a medias, lo estudie y lo modifique y me andubo bastante bien, pero cada tanto me da dos veces el numero 1 en distintas posiciones, y realmente no se en donde esta el problema, aqui les dejo el algoritmo a ver si alguien me puede ayudar a que no se repita. Aclaro, solamente me repite el numero 1, y de los 4 numeros, solamente se repite 2 veces ej: 3, 1, 1, 7, o 1, 1, 4, 6, etc...
Public Sub Naleatorios()

Randomize()

For i = 0 To 4

If i = 1 Then
numeros(j) = Int((10 * Rnd()) + 1)
If j = 4 Then
j = j
Else
j = j + 1
End If
Else
retorno:

For x = 0 To 3
temporal = Int((10 * Rnd()) + 1)

If temporal = numeros(1) Then
GoTo retorno
End If
If temporal = numeros(2) Then
GoTo retorno
End If

If temporal = numeros(3) Then
GoTo retorno
End If
If temporal = numeros(4) Then
GoTo retorno
End If

numeros(j) = temporal
If j = 4 Then
j = j
Else
j = j + 1
End If
Next x
End If
Next i

End Sub

Muchas gracias por su tiempo
  Respuesta:  Fernando Fumero
Option Explicit
Dim VECTOR(1 To 7) As Integer
Dim N As Integer

Private Sub Command1_Click()
Dim REPETIDO As Boolean
Dim NUMERO As Integer
Dim I As Integer
Randomize Timer
NUMERO = Int((10 * Rnd()) + 1)
For N = 1 To UBound(VECTOR())
Do
REPETIDO = False
NUMERO = Int((10 * Rnd()) + 1)
For I = 1 To N
If VECTOR(I) = NUMERO Then REPETIDO = True
Next I
If Not REPETIDO Then VECTOR(N) = NUMERO
Loop Until Not REPETIDO
Next N
End Sub

Private Sub Command2_Click()
Label1 = ""
For N = 1 To UBound(VECTOR())
Label1 = Label1 & VECTOR(N) & " | "
Next N
End Sub

Cortesía de FUMERO CORP. - [email protected] -

|<  <<  293 294 295 296 297 298 299 300 301 302 303  >>  >|