¿Cómo cambiar las consultas SQL en Excel usando VBA?

Daman profundo

Tengo un libro de trabajo conectado a una base de datos que tiene datos de stock. Tengo alrededor de 500 datos de símbolo bursátil y los busco uno por uno ingresando el símbolo bursátil (resaltado en rosa) en la consulta como se muestra a continuación.
ingrese la descripción de la imagen aquí

Todo el tiempo tengo que abrir Propiedades de conexión y luego Definición para cambiar el símbolo de cotización. Este proceso requiere mucho tiempo.

Quiero un cuadro de texto en mi cinta donde inserto el símbolo de stock, cambiará la consulta.

Aquí está mi código VBA después de que grabé una macro.

Sub Macro2()
'
' Macro2 Macro
'

'

    Range("B6963").Select
    With ActiveWorkbook.Connections("ABC"). _
        OLEDBConnection
        .BackgroundQuery = True
        .CommandText = Array( _
        "Select QuoteDate ,StockSymbol, HighPrice, LowPrice, ClosePrice, Volume  From StockQuotedaily Where StockSYmbol='BRC" _
        , "' Order by Quotedate")
        .CommandType = xlCmdSql
        .Connection = Array( _
        "OLEDB;Provider=SQLOLEDB.1;Password=ABC;Persist Security Info=True;Extended Properties=""DRIVER=SQL Server;SERVER=ABC" _
        , _
        ";UID=sa;APP=Microsoft Office 2013;WSID=ABC;DATABASE=ABC"";Use Procedure for Prepare=1;Auto Translat" _
        , _
        "e=True;Packet Size=4096;Workstation ID=ABC;Use Encryption for Data=False;Tag with column collation when possible=Fal" _
        , "se")
        .RefreshOnFileOpen = False
        .SavePassword = True
        .SourceConnectionFile = ""
        .SourceDataFile = ""
        .ServerCredentialsMethod = xlCredentialsMethodIntegrated
        .AlwaysUseConnectionFile = False
    End With
    With ActiveWorkbook.Connections("ABC")
        .Name = "ABC"
        .Description = ""
    End With
End Sub
Miguel

Los cuadros de texto en cintas son realmente desordenados. Un enfoque mucho más sencillo es un cuadro de entrada emergente. Cambie el .CommandText a:

Array("Select QuoteDate ,StockSymbol, HighPrice, LowPrice, ClosePrice, Volume From StockQuotedaily Where StockSYmbol='" & InputBox("Stock Symbol"), "' Order by Quotedate")

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Cómo ejecutar consultas SQL en VBA Excel

Actualizar consultas en Excel usando VBA

En Postgres 12, ¿cómo cambiar las columnas PK a IDENTITY usando SQL dinámico?

Excel VBA: cómo cambiar el nombre de las hojas en función de las hojas que faltan

¿Cómo cambiar las consultas de Firestore en Stream Builder en Flutter?

¿Cómo puedo cambiar las fuentes en Android usando Kotlin?

¿Cómo cambiar las filas de Excel en la columna Dita de oxígeno usando un script xml?

El envío de consultas SQL a un archivo CSV en Excel VBA no funciona para las columnas de fecha

Cómo convertir las consultas en MySQL a Oracle equivalente de consultas SQL

Cómo combinar estas consultas SQL en Excel

Código VBA para pegar consultas SQL en Excel con valores NULL pegados como "NULL"

Cómo obtener todas las filas en una región que omite una primera región en Excel usando VBA

¿Cómo optimizar mejor las consultas SQL?

usando VBA para actualizar una por una las consultas de mi libro de trabajo - Excel 2016

Cambiar el color de la pestaña de las últimas 4 hojas de cálculo de Excel en Excel (VBA)

¿Cómo puedo desactivar las líneas de cuadrícula en Excel usando VBA, sin usar ActiveWindow?

¿Cómo puedo cambiar las propiedades de ActiveControl usando vba Access?

¿Cómo contar correctamente las filas visibles en VBA Excel?

¿Cómo descomprimir las respuestas http en vba excel?

¿Cómo eliminar las filas combinadas en Excel usando Python?

Cómo reindexar las filas en excel usando python

Cómo reindexar las filas en excel usando python

Cómo ejecutar las consultas SQL más caras en una base de datos en particular

¿Cómo combinar dos consultas SQL que se realizan en las mismas tablas en una?

¿Cómo cambiar la precedencia del operador (primero O, luego Y) en las consultas de Team Foundation?

¿Cómo hacer consultas SQL usando CachedRowSet?

Cómo mostrar los resultados de dos consultas en MS Chart Object usando Access VBA

Cómo hacer que las expresiones personalizadas repetidas en consultas SQL sean fáciles de mantener

Cómo las consultas de Spark SQL se convierten en una serie de etapas

TOP Lista

CalienteEtiquetas

Archivo