PREGUNTAS CONTESTADAS - Visual Basic

 Hay un total de 3030 Preguntas.<<  >> 

    Pregunta:  1159 - COMO LEVANTAR UN DOCUMENTO DE WORD CON FORMATO
Autor:  Rodrigo
Hola! Busco alguien que me de una mano con el siguiente problema. Tengo una aplicacion que tiene que levantar un documento de word con todo su formato, y pegarlo respetando el formato en algun control de texto. Ademas si el documento ocupa mas del largo del control, necesito algun metodo que me permita, por programa, hager un page down o page up. Probe un control que directamente pega un documento en el formulario, pero no me sirve ya que el control no tiene que tener scroll bars ni elementos del word. Ademas debe soportar la propiedad de poner el fondo transparente, para que el texto aparezca sobre el fondo del form. Espero haber sido claro. Muchas Gracias!!!!
  Respuesta:  Martin Chumpitaz
Hola, tienes la respuesta en la pregunta 116,sino la ubicas comunicate conmigo y te ayudare en lo que pueda
  Respuesta:  Luis E. Camarena Dávila
es solo una idea..

Porque mejor no llamas al visor de word desde tu aplicacion junto con el archivo que quieres mostrar...

    Pregunta:  1162 - APLICACIONES MINIMIZADAS EN W9X AL LADO DEL RELOJ
Autor:  Juan Abe
Intento saber como arrancar una aplicación minimizada, como lo hacen los escudos de los antivirus, pegaditos al reloj del windows! Alguien sabe como hacerlo? Gracias
  Respuesta:  Carlos Andres Becerra Bohorquez
Utiliza la apli. ASI:
´Declare a user-defined variable to pass to the Shell_NotifyIcon
´function.
Public Type NOTIFYICONDATA
cbSize As Long
hWnd As Long
uId As Long
uFlags As Long
uCallBackMessage As Long
hIcon As Long
szTip As String * 64
End Type

´Declare the constants for the API function. These constants can be
´found in the header file Shellapi.h.

´The following constants are the messages sent to the
´Shell_NotifyIcon function to add, modify, or delete an icon from the
´taskbar status area.
Public Const NIM_ADD = &H0
Public Const NIM_MODIFY = &H1
Public Const NIM_DELETE = &H2

´The following constant is the message sent when a mouse event occurs
´within the rectangular boundaries of the icon in the taskbar status
´area.
Public Const WM_MOUSEMOVE = &H200

´The following constants are the flags that indicate the valid
´members of the NOTIFYICONDATA data type.
Public Const NIF_MESSAGE = &H1
Public Const NIF_ICON = &H2
Public Const NIF_TIP = &H4

´The following constants are used to determine the mouse input on the
´the icon in the taskbar status area.

´Left-click constants.
Public Const WM_LBUTTONDBLCLK = &H203 ´Double-click
Public Const WM_LBUTTONDOWN = &H201 ´Button down
Public Const WM_LBUTTONUP = &H202 ´Button up

´Right-click constants.
Public Const WM_RBUTTONDBLCLK = &H206 ´Double-click
Public Const WM_RBUTTONDOWN = &H204 ÿLM/W3SVC/116/Root

    Pregunta:  1167 - ENVIAR UN ARCHIVO JUNTO A UN E-MAIL
Autor:  Gerardo Librera
NECESITO HACER DESDE UNA APLICACION VB UN PROGRAMA QUE LANSE EL CORREO PREDETERMINADO DE WIN, A UNA DIRECCION YA ESPECIFICA, COMPLETAR EL SUJETO DEL E-MAIL, ADOSARLE UN ARCHIVO (ATTACH)Y QUE AL FINAL LO ENVIE. TODO ESTO DESDE EL PROGRAMA EN VB Y EL USUARIO NO TENDRIA QUE HACER NADA. HE PROBADO CON VARIOS CONTROLES, PERO NO TENGO NINGUNO QUE ME PERMITA ENVIAR UN ATTACH.
ACTUALMENTE LO ESTOY HACIENDO CON LA FUNCION "SENDKEYS" Y EL PORTAPAPELES PERO ES MUY RUDIMENTARIO. ESPERO PUEDAN AYUDARME !!!.
  Respuesta:  Luis Bueno
Si en en VB 6.0 existen dos controles que controlan Correo Electronico
Controles MAPI(Vienen 2 Controles en este OCX (MSMAPI32.OCX))
Uno para inicio de Sesion y otro para Control de Mensajes

Buscalo yo lo utilizo por tengo un programa que envia correos

Suerte..
  Respuesta:  ivan c.
Bueno hay dos formas una es usando mapi y la lo otra el outlook (NO SE PUEDE CON EL EXPRESS)

Primero tienes que hacer referecncia al el miscrosoft outlook objet library que seguramente lo encontraras en el el directorio del office "Msoutl8.olb"
´#############module.base###################
Option Explicit

Public objOutlook As Outlook.Application
Public objMItem As Outlook.MailItem
Public objFolders As Outlook.Folders
Public objNamespace As Outlook.NameSpace

Public Sub Main()

Dim destino As String

If Not CreateOutlookInstance Then End

With objMItem
.To = destino
.Subject = "Vauchers de oasis playa"
.Body = "Archivos Enviados:"
.Attachments.Add "path+archivo.ext"
.Save
.Send
´.Display
End With

Set objOutlook = Nothing
Set objMItem = Nothing
End
End Sub

Function CreateOutlookInstance() As Boolean
´Create application and namespace root objects
Set objOutlook = CreateObject("Outlook.Application.8")
If Err Then
MsgBox "Upss no Pudo crear Outlook Application object!", vbCritical
CreateOutlookInstance = False
Exit Function
End If
Set objNamespace = objOutlook.GetNamespace("MAPI")
If Err Then
MsgBox "Upss no Pudo crear MAPI Namespace!", vbCritical
CreateOutlookInstance = False
Exit Function
End If
Set objMItem = objOutlook.CreateItem(olMailItem)
If Err Then
MsgBox "Upss no Pudo crear MailItem!", vbCritical
CreateOutlookInstance = False
Exit Function
End If
CreateOutlookInstance = True
Ð/LM/W3SVC/116/Root

    Pregunta:  1175 - CÒMO SE REALIZAN SUMAS DE TOTALES EN VB 6.0
Autor:  Ramón Moreno
Necesito realizar Sumas de totales generales de Valores en una base de datos access. ¿ Existe alguna función que realize esta suma automáticamente ?.

Cómo puedo realizar busquedas de un registro tomando en cuenta varios valores en una base de datos Access. Por ejemplo, existen varios campos como fecha, empresa, departamento, operación. ¿ Cómo realizo la busqueda de una de una operación de una departamento en una empresa en una fecha específica ?

Gracias. Si alguien puede ayudarme lo agradecería infinitamente.

Ramón Moreno Malavé.
  Respuesta:  HORACIO ACOSTA
ACABO DE REALIZAR UNA APLICACION QUE HACE ESTO.
PUEDES UTILIZAR LA RESPUESTA DE XAVI Y/O PARA EL SEGUNDO CASO CON UNA INSTRUCCION SELECT: "SELECT * FROM EMPRESA WHERE OPERACION=CODIGOPERACION AND DEPARTAMENTO = DEPARTAMENTODESEADO AND FECHA = FECHADESEADA.

DE LA MISMA MANERA PUEDES OBTENER TOTALES. SI DESEAS QUE TE AMPLIE LA RESPUESTA, ESCRIBEME.

Y FELICES FIESTAS.
  Respuesta:  Xavi
Para sumar un campo de una base de datos, tienes que hacerlo mediante consultas sql.
Por ejemplo vamos a sumar el campo Total de la tabla Datos abierta con el cotrol DATA.

data1.recordsorce="SELECT SUM(Total) AS tmpTotal FROM Datos WHERE Condiciones"

de esta manera, con...
data1.recordset.fields!tmpTotal
te devuelve el valor de la suma del campo Total de la tabla Datos que cumplan las condiciones que le indiques.

Espero que te sirva.

    Pregunta:  1178 - PROBLEMAS AL IMPRIMIR UN FORMULARIO
Autor:  Daniel Boero
Estoy empezando a desarrollar en VB 6, y me he encontrado con algunas dudas, aquí va una:
Uso un FrmMain MDI con menúes pull-down.
En un determinado momento muestro un formulario como MDI Child dentro del Main,(este formulario es de gran tamaño ya que representa a una hoja Legal), una vez que el operador lo desea presiona un boton de un toolbar en el FrMain y por medio del printForm efectúa la impresión del formulario. Cuando va a realizar la impresión del mismo carga otra copia del Formulario a imprimir y la muestra sobre el original y lo hace desplazado unos centimetros sobre el anterior, quedando "apilado" sobre la copia original en la pantalla.
Si se hace Frm Unload se descarga la copia del mismo... Por qué sucede?
Lo que sucede es que cuando quiero imprimir el formulario que está dentro del Main, aparece sin que yo lo desee otra copia textual del formulario arriba del anterior y lo hace un poco desplazada sobre el anterior quedando como apilada....
Para imprimir uso xxxx.printForm
Alguien puede ayudarme?
Muchas Gracias
  Respuesta:  Gonzalo Antonio Silva Brito
Prueba solo con la sentencia printform,es decir colocar esta sentencia en una de las funciones que se realizan por medio del editor de menu, asi solo saldra el contenido del formulario y no creara ninguna copia adicional
ejemplo:
1-.crea una barra de menu
2-.Coloca como caption Imprimir
3-.Como Name de la funcion Coloca Imp
4-.Luego Aceptar
5-.realiza un clip en el Nombre de la barra (Imprimir)
6-.Coloca el Siguiente codigo
Private Imp_click()
PrintForm
End Sub
  Respuesta:  Xavi Silva
Hay varias causas que puedan producirse para que se te cierren ambos formularios:
1. Por que la variable que defines para abrir el segundo formulario se encuentra dentro del primero, a lo cual si cierras el primero de ellos, el segundo se cierra porque se destruye su instancia.
2. Por que creas el segundo desde una función que tiene variables no estáticas y al terminar la función se pierde el valor de la variable.

Para solucionar el problema puedes crear una matriz de objetos frm, de los cuales han de estar definidos en un módulo de código, y a continuación cierras uno u otro usando siempre un valor de esta array.

Espero haberte ayudado.
Si no es este tu problema, tendrás que proporcionarme más datos.

    Pregunta:  1180 - CREAR UN BROWSER Y EDITOR HTML EN VISUAL BASIC
Autor:  Deny Tapia Cuevas
Les quiero pedir por favor que alguien me pueda orientar, ya que esto es parte de mi tarea en la Universidad, debo diseñar un Browser y un editor Html en Visual Basic, estare eternamente agradecido a quien me pueda brindar una ayuda.
Atte
  Respuesta:  Alejandro Eduardo Henríquez Ardiles
Hola, lo mas fásil (desde mi punto de vista) seria insertar el componente "microsoft internet controls", pegalo en tu form, y en el load u otra parte escribe brwWebBrowser.Navigate "www.lawebdelprogramador" (por ejemplo) y echalo a andar.

chao. que estes bien

Posdata puedes hacer brwWebBrowser.GoBack, brwWebBrowser.GoForward, etc, etc...
  Respuesta:  freddy espinoza
//este mi propio navegador, es para vb6.0,
//este es el código que necesitas, acomódalo y //listo

Private Sub exit_Click()
End
End Sub

Private Sub Form_Load()
Web.Width = Screen.Width
Web.Height = Screen.Height - 2300
Web.Navigate "http://www.umayor.cl"
barra.Panels.Add
barra.Panels.Item(1).Width = 4000
barra.Panels.Add
barra.Panels.Item(2).Style = sbrCaps
barra.Panels.Add
barra.Panels.Item(3).AutoSize = sbrContents
barra.Panels.Item(3).Style = sbrNum
barra.Panels.Add
barra.Panels.Item(4).AutoSize = sbrContents
barra.Panels.Item(4).Style = sbrScrl
barra.Panels.Add
barra.Panels.Item(5).AutoSize = sbrContents
barra.Panels.Item(5).Style = sbrDate
barra.Panels.Add
barra.Panels.Item(6).AutoSize = sbrContents
barra.Panels.Item(6).Style = sbrTime
End Sub

Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
On Error GoTo Cago
Select Case Button.Key
Case "Back"
Web.GoBack
Case "Forward!"
Web.GoForward
Case "Home"
Web.Navigate "http://www.umayor.cl"
Case "Stop"
Web.Stop
Case "Chico"
frmAbout.Show vbModal
End Select
Exit Sub
Cago:
Beep
End Sub

Private Sub txtUrl_Click()
SendKeys "{Home}+{End}"
End Sub

Private Sub txtUrl_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
If txtUrl.Text = "" Then
txtUrl.SetFocus
  Respuesta:  GUILLERMO GARCIA
Yo no puedo ayudarte ,ya que soy un novato,pero tengo un codigo fuente de un explorer que funciona , un poco lento , pero quizas te ayude.
Pedimelo por e-mail y te lo paso.
  Respuesta:  LM Caballero
Puedes encontrar demos en http://www.winfiles.com o pide ayuda (en ingles) a la lista [email protected]
  Respuesta:  EJ T.G.
Crea un nuevo proyecto y escoge el generador de aplicaciones de vb, entonces te aparece el asistente del generador, vas dando ckick en siguiente hasta que te aparezca una ventana en donde te pregunta si quieres un Explorador de web(browser) en tu aplicación, escoge si, luego finaliza el asistente, abre el formulario, mira el código, y personalízalo como quieras .
  Respuesta:  Oscar M.
La manera mas fácil que puedes hacer es utilizar Automatión controlando el OCX que te instala el Internet Explorer, con ello puedes hacer uso de las propiedades y eventos que expone el control...en el site de Microsoft existe un ejemplo en Visual Basic para hacerlo, aunque el problema es que debes tener instalado su navegador, pero la verdad es muy sencilla su implementación. Dentro del grupo de desarrollo de Netscape te ofrecen código de navegador que bien podrías intentar usar y crear uno tuyo, solo que por tratarse de código libre tiene sus errores.

    Pregunta:  1184 - VERIFICAR IMPRESORA
Autor:  Guillermo Ordenes A.
Necesito saber si la impresora se encuentra encendida y bien conectada ANTES de enviar la impresión. Es decir verificar la impresora antes de enviar el reporte.
De antemano muchas gracias.
  Respuesta:  Lenin Avila
El objeto Printer tiene metodos y propiedades que te pueden ayudar. Verificalo en ayuda.

Este objeto no se encuentra en la barra de herramientas de los objetos (textbox, image, etc)
es un objeto que esta por defalut.

    Pregunta:  1189 - CONSULTA SQL DE UNA CANTIDAD N DE TABLAS
Autor:  Alejandro Facello Ayala
Tengo una tabla que contiene los nombres de las una serie de tablas de la base de datos. Necesito mostrar en un DBGRID los registros de un campo de cada una de una serie de tablas (el número de tablas de la consulta es variable: entre 12 y 14 tablas). Espero que haya quedado clara la pregunta, y agradezco mucho que me contensten.
  Respuesta:  Francisco Luna
Usa un SELECT con UNION en tablas ralacionales o que tengan campos comunes
"SELECT * FROM TABLA1 WHERE CAMPO=´ ´ UNION ....y luego los otros select"
Suerte
  Respuesta:  Xavi Silva
No acabo de entender bien la pregunta o puede que el problema, pero según lo que he entendido, creo que te falta una cosa, y es algún sitio que indique que tipo de relación existe entre cada una de ellas, ya que de lo contrario, no podrás mostrar una consulta que carge diferentes campos de diferentes tablas, si no existe una relación entre ellas, suponiendo que generes una tabla con la relación que te indico, podrías hacer que el código quedase como una secuencia SQL muy básica:

1/ abres la tabla que contiene la info de las tablas:
sql = "Select MisTablas where IDTabla Like ´LoQueSea%´"

Nota: Recuerda usar % con controlador SQL Server y * con Access.

2/ Lees cada una de las tablas
Rs.MoveFirst
UnaTabla = Rs("IDTabla")

3/ Vas creando la clausula SQL nueva con las diferentes tablas:
SQLFinal = "Select * From " & UnaTabla & " Where " & UnaTabla & ".MiCampo=12"

(por ejemplo).

4/ Ejecutas la SQL Final sobre el DBGrid o directamente desde el código, para recuperar cada campo.

Exactamente no sé si es lo que deseas, pero puedes plantear tu pregunta con más detalle sino es así.

Espero haberte ayudado

    Pregunta:  1190 - FORMULARIOS EN PRIMER PLANO
Autor:  Gerardo Librera
NECESITO COLOCAR UN FORMULARIO EN TIEMPO DE EJECUCION, EN PRIMER PLANO SIEMPRE DE TODAS LAS VENTANAS DE WINDOWS
  Respuesta:  HORACIO ACOSTA
PARA COLOCAR UN FORMULARIO FRENTE A OTROS UTILIZA:
Form1.ZOrder
PUEDES RENOVAR ESTA ORDEN CADA QUE DESEES. SI QUIERES EVITAR LA REDUNDANCIA DEBES LLAMAR LA API SetWindowPos. SI NO SABES COMO HACERLO, ESCRIBEME Y TE ENVIARÉ EL CODIGO.

FELICES FESTIVIDADES.
  Respuesta:  Xavi
Aqui te mando el codigo. Si quieres visualizar mas API´s, revisa el apartado de Biblioteca de Temas-Como utilizar API´s en Visual Basic.
´Código para el Modulo
Public Const HWND_BOTTOM = 1 ´Coloca la venta al final de la lista
Public Const HWND_TOP = 0 ´Coloca la ventana al inicio del orden
Public Const HWND_TOPMOST = -1 ´Coloca la ventana al inicio del orden por encima de todo
Public Const HWND_NOTOPMOST = -2 ´Coloca la ventana al inicio del orden detras de las ventanas de nivel superior
Public Const SWP_HIDEWINDOW = &H80 ´Esconde la ventana
Public Const SWP_NOACTIVATE = &H10 ´No activa la ventana
Public Const SWP_NOMOVE = &H2 ´Mantiene la posición Actual
Public Const SWP_NOREDRAW = &H8 ´La ventana No se redibuja automáticamente
Public Const SWP_NOSIZE = &H1 ´Mantiene el tamaño vigente
Public Const SWP_NOZORDER = &H4 ´Mantiene la posición vigente en la lista de ventanas
Public Const SWP_SHOWWINDOW = &H40 ´Presenta en pantalla la ventana

´Para mantenerlo siempre visible, podeis utilizar estas opciones
Public Const SWP_FLAGS = SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW Or SWP_NOACTIVATE

Declare Function SetWindowPos Lib "User32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

´Código para el evento ´Load´ del Formulario
´Definimos la variable
Dim CadenaResultante As Long

CadenaResultante = SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_FLAGS)
´CadenaResultante = Devuelve cero en caso de error.

´NOTA: Para finalizar la posición de siempre visible, cambiar HWND_TOPMOST por HWND_NOTOPMOST

    Pregunta:  1192 - SIMULAR ´ENVIAR Y RECIBIR´ DESDE VB CON REFERENCIA OUTLOOK
Autor:  Fco. Antonio García
Estoy desarrolando aplicaciones que devuelven resultados en ficheros de texto. Ficheros que adjunto a un correo y por medio de Outlook se envían. En el destino existe otra aplicación que lee los correos de la bandeja de entrada y sus ficheros adjuntos, que se incorporan en una base de datos. Para poder automatizar al máximo me hace falta conocer si existe (y como se hace) la opción de "Enviar y Recibir" de OutLook. De esa forma el control del envío y de la recepción de los datos lo lleva la propia aplicación.

Agradezco de antemano la respuesta (aunque sea negativa para mi propósito). Gracias.
  Respuesta:  Javier Juambeltz
Podrías lidiar con el modelo de objetos de Outlook (utilizando VBA). Pero si lo único que te falta es ejecutar "Enviar y Recibir" podés probar la función SendKeys de Visual Basic que te permite, desde el código, simular una pulsación de teclas en cualquier aplicación. Ya que en Outlook se ejecuta "Enviar y Recibir" cuando pulsás F5, podés simular la pulsación de esta tecla.

Para probar puse dos botones de comando (Command1 y Command2). Con el primero se ejecuta el Outlook. Con el segundo, una vez que el Outlook está abierto, se le envía la pulsación de F5.

El código es el siguiente:

-----------------------------------------------------------
Dim outlId
Dim outlDirec As String
Private Sub Command1_Click()
outlDirec = "C:\Archivos de Programa\Microsoft Office\Office\outlook.exe"
outlId = Shell(outlDirec, 1)
End Sub
Private Sub Command2_Click()
If outlId <> 0 Then
AppActivate outlId
SendKeys "{F5}", False
Else
MsgBox "Error: No se pudo abrir Microsoft Outlook"
End If
End Sub
------------------------------------------------------------
Cualquier cosa, a las órdenes.
JaViEr

|<  <<  19 20 21 22 23 24 25 26 27 28 29  >>  >|