Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

264
Visualizações
VBA para abrir el archivo según la ruta y el nombre que cambian mensualmente

¡Gracias por mirar esto! Soy un principiante intermedio en VBA. Estoy escribiendo en el sistema operativo Microsoft 2010 y Excel 365. He escrito un script para procesar un archivo de fila de 150K cuando se ejecuta. Actualmente abre un archivo de origen ubicado en una unidad de Sharepoint. ese camino se ve así:

"\(nombre del servidor)\Archivos SQL\2022\06.2022\Junio2022Nombre.xlsx"

El archivo que me gustaría que VBA abra automáticamente es el que coincide con el mes actual, ya que hay archivos para cada mes durante el año pasado y se crea una nueva carpeta a medida que avanzan los meses, es decir, actualmente no hay una carpeta para julio pero se escribirá como 2022\07.2022\July2022Name.xlsx

Revisé varias secuencias de comandos de selección de nombres y no puedo indicarle a VBA que lo haga. Me faltan pasos, creo. Esto es lo que he probado hasta ahora

 'Find Workbook Filename <br> Dim dt as String, dt2 as string Filename as String, strMonth as string<br> strMth = Monthname(Month(Now()), True<br> if Month(Now()) = 1 Then<br> strPriorMth = MonthName(12,True)<br> Else st PriorMth = Monthname(Month(Now())-1, True<br> dt2 = StrMonth(mm).YYYY dt = StrMonth(mmm)YYYY <br> filename = "\\(server name)\SQL Files\2022\"dt2"\"dt & "SqlViews.xlsx"<br>

Me disculpo por tener problemas con algo tan simple. No estoy seguro de cómo convertir dt2 como una cadena de números y dt como lo que creo que es una cadena nvarchar. ¡Cualquier ayuda sería invaluable!

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

No estoy seguro de la salida exacta que desea. Pero aquí hay un ejemplo.

 Sub test() Dim dt As String, dt2 As String Dim filename As String, strMonth As String strMth = MonthName(Month(Now())) If Month(Now()) = 1 Then mth = "12" strPriorMth = MonthName(12, True) Else mth = Month(Now() - 1) strPriorMth = MonthName(Month(Now()) - 1, True) End If dt = Format(mth, "mm") dt2 = Format(mth, "mmm") filename = "\\(server name)\SQL Files\2022\" & dt2 & "\" & dt & "SqlViews.xlsx" Debug.Print filename End Sub
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda