Jump to content
Kolokon

ANSWERED Buscar y pasar datos entre hojas

Recommended Posts

Guest
This topic is now closed to further replies.

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.

Legitimación: Consentimiento del interesado.

Destinatarios: Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.




  • Posts

    • Hola  @GR77 Te dejo una consulta como punto de partida, pero de la manera en que están construidas las tablas, por el momento trae registros duplicados, pero te dejo las consultas para que puedas ir conociendo el lenguaje. Sigo atento y trabajando. Saludos. Sub DatoAccess() Dim cn, rs As Object, strFile, strCon, strSQL As String DateI = Sheets(1).Cells(1, 11).Value DateF = Sheets(1).Cells(2, 11).Value strFile = ThisWorkbook.Path & "\datos.mdb" 'strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strFile & ";" strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile & ";" Set cn = CreateObject("ADODB.Connection") cn.Open strCon Set rs = CreateObject("ADODB.Recordset") strSQL = "SELECT DISTINCT T1.Id, T1.Clave, T1.FechaMov, T1.MontoEsperado, T3.MontoPagado  " & _          "FROM (Tabla1 T1 INNER JOIN Tabla3 T3 ON T1.Clave = T3.Clave)" ''strSQL = "SELECT T1.Id, T1.Clave, T1.FechaMov, T1.MontoEsperado, T3.MontoPagado " & _          "FROM (Tabla1 T1 INNER JOIN Tabla3 T3 ON T1.Clave = T3.Clave)"           ''strSQL = "SELECT T1.Id, T1.Clave, T1.FechaMov, T1.MontoEsperado, T3.MontoPagado, T2.MontoDescto " & _          "FROM (Tabla1 T1 INNER JOIN Tabla3 T3 ON T1.Clave = T3.Clave) " & _          "INNER JOIN Tabla2 T2 ON T1.Id = T2.Id " ''strSQL = "SELECT T1.Id, T1.Clave, T1.FechaMov, T1.MontoEsperado, T3.MontoPagado, T2.MontoDescto " & _          "FROM (Tabla1 T1 INNER JOIN Tabla3 T3 ON T1.Id = T3.Id) " & _          "INNER JOIN Tabla2 T2 ON T1.Id = T2.Id " & _          "WHERE T1.FechaMov BETWEEN DateI AND DateF" rs.Open strSQL, cn, 3, 3 Cells(2, 1).CopyFromRecordset rs 'Creamos encabezados For i = 0 To rs.Fields.Count - 1 titulo = rs.Fields(i).Name     Cells(1, i + 1) = titulo Next rs.Close cn.Close End Sub
    • El filtro funcionaría mejor así: Sub filtro() Range("A5").AutoFilter Field:=4, Criteria1:=Sheets("base").Range("c4").Value End Sub  
    • A veces con algún truquillo salimos del paso: Sub copiar_filtro() 'Copiamos también la fila 4 Set Rango = ActiveSheet.Range("$A$4:$D$11").SpecialCells(xlCellTypeVisible) If Rango.Rows.Count > 1 Then Rango.Copy End Sub o también: Sub copiar_filtro(): On Error GoTo SinDatos ActiveSheet.Range("$A$5:$D$11").SpecialCells(xlCellTypeVisible).Copy Exit Sub SinDatos: MsgBox "*** Sin datos***", vbInformation End Sub  
    • Te avanzo el login. Cuando pueda, reviso el registro. Adeudos.xlsm
    • Muy agradecido Entiendo que la respuesta a: Se puede usar asi?: wbLibroOrigen.Sheets("Hoja1").Cells(cont, 1).SpecialCells(12).Copy .Cells(ufila + 1, 1) es NO!! Aunque no sé cómo así me funcionó!! pero luego me da el error según lo comentado antes... Pero entonces siempre se requiere un espacio auxiliar Bien!! creo con esto está claro.. Quedo muy agradecido
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy