Necesito modificar código...
Hola de nuevo, siento molestarte otra vez por lo mismo, pero no consigo dar con la forma adecuada de hacer el código.
Mi segunda pregunta es la siguiente:
Hace unos días te hice una consulta referente a los días de la semana que me respondiste perfectamente con el siguiente código..
Un ComboBox que se llame cboPrimero
Un ComboBox que se llame cboSegundo
Un CommandButton que se llame cmdInsertar
El código de este formulario es el siguiente...
Option Explicit
Private Sub cmdInsertar_Click()
Dim FilaLibre As Long
Dim DiaUno As Integer
Dim DiaDos As Integer
Dim co1 As Integer
If cboPrimero.ListIndex = -1 Or cboSegundo.ListIndex = -1 Then
MsgBox "Seleccione los dos dias"
Else
FilaLibre = Range("A1").End(xlDown).Row
If FilaLibre = 65536 Then
FilaLibre = 2
Else
FilaLibre = FilaLibre + 1
End If
DiaUno = cboPrimero.ListIndex + 3
DiaDos = cboSegundo.ListIndex + 3
Cells(FilaLibre, 1).Value = cboPrimero.Text
Cells(FilaLibre, 2).Value = cboSegundo.Text
If DiaUno = DiaDos Then
Cells(FilaLibre, DiaUno).Value = 1
ElseIf DiaDos > DiaUno Then
For co1 = DiaUno To DiaDos
Cells(FilaLibre, co1).Value = 1
Next co1
Else
co1 = DiaUno
Do
Cells(FilaLibre, co1).Value = 1
If co1 = 9 Then
co1 = 3
Else
co1 = co1 + 1
End If
Loop Until co1 = DiaDos + 1
End If
Unload Me
End If
End Sub
Private Sub UserForm_Initialize()
Dim Semana As Variant
Dim co1 As Integer
'Llenamos los dos combos con los dias de la semana
Semana = Array("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo")
For co1 = LBound(Semana) To UBound(Semana)
cboPrimero.AddItem Semana(co1)
cboSegundo.AddItem Semana(co1)
Next co1
End Sub
¿Recuerdas?
Y efectivamente es lo que necesitaba, pero ahora, ha cambiado la situación y se hace necesario que los datos en vez de ser introducidos por medio del formulario, deben de ser cortados y pegados desde un documento creado con la aplicación M.Word a la base de datos de Excel, es por lo tanto que los días de la semana que introducía en las columnas A Y B correspondientes a A1: PRIMER DÍA" y B1: SEGUNDO DÍA ahora los corto y pego manualmente, por lo que el código no lo puedo utilizar, lo que me obliga a tener que diseñar el código necesario para que por medio de un bucle me vaya recorriendo las columnas A y B desde la fila 2 hasta la 65500 y vaya analizando los días de la semana que hay y efectúe la misma función que representa el código que me enviaste.
Posteriormente mi intención es crear el mismo código para aplicarlo también a los horarios que se representan en la hoja que adjunto.-
Espero que entiendas el mensaje, me he permitido enviar a tu correo una hoja con la base creada y en un módulo el código que me enviaste para que te sea más fácil, si puede ser que me puedas echar una mano..
Te lo agradezco de antemano...
Mi segunda pregunta es la siguiente:
Hace unos días te hice una consulta referente a los días de la semana que me respondiste perfectamente con el siguiente código..
Un ComboBox que se llame cboPrimero
Un ComboBox que se llame cboSegundo
Un CommandButton que se llame cmdInsertar
El código de este formulario es el siguiente...
Option Explicit
Private Sub cmdInsertar_Click()
Dim FilaLibre As Long
Dim DiaUno As Integer
Dim DiaDos As Integer
Dim co1 As Integer
If cboPrimero.ListIndex = -1 Or cboSegundo.ListIndex = -1 Then
MsgBox "Seleccione los dos dias"
Else
FilaLibre = Range("A1").End(xlDown).Row
If FilaLibre = 65536 Then
FilaLibre = 2
Else
FilaLibre = FilaLibre + 1
End If
DiaUno = cboPrimero.ListIndex + 3
DiaDos = cboSegundo.ListIndex + 3
Cells(FilaLibre, 1).Value = cboPrimero.Text
Cells(FilaLibre, 2).Value = cboSegundo.Text
If DiaUno = DiaDos Then
Cells(FilaLibre, DiaUno).Value = 1
ElseIf DiaDos > DiaUno Then
For co1 = DiaUno To DiaDos
Cells(FilaLibre, co1).Value = 1
Next co1
Else
co1 = DiaUno
Do
Cells(FilaLibre, co1).Value = 1
If co1 = 9 Then
co1 = 3
Else
co1 = co1 + 1
End If
Loop Until co1 = DiaDos + 1
End If
Unload Me
End If
End Sub
Private Sub UserForm_Initialize()
Dim Semana As Variant
Dim co1 As Integer
'Llenamos los dos combos con los dias de la semana
Semana = Array("Lunes", "Martes", "Miercoles", "Jueves", "Viernes", "Sabado", "Domingo")
For co1 = LBound(Semana) To UBound(Semana)
cboPrimero.AddItem Semana(co1)
cboSegundo.AddItem Semana(co1)
Next co1
End Sub
¿Recuerdas?
Y efectivamente es lo que necesitaba, pero ahora, ha cambiado la situación y se hace necesario que los datos en vez de ser introducidos por medio del formulario, deben de ser cortados y pegados desde un documento creado con la aplicación M.Word a la base de datos de Excel, es por lo tanto que los días de la semana que introducía en las columnas A Y B correspondientes a A1: PRIMER DÍA" y B1: SEGUNDO DÍA ahora los corto y pego manualmente, por lo que el código no lo puedo utilizar, lo que me obliga a tener que diseñar el código necesario para que por medio de un bucle me vaya recorriendo las columnas A y B desde la fila 2 hasta la 65500 y vaya analizando los días de la semana que hay y efectúe la misma función que representa el código que me enviaste.
Posteriormente mi intención es crear el mismo código para aplicarlo también a los horarios que se representan en la hoja que adjunto.-
Espero que entiendas el mensaje, me he permitido enviar a tu correo una hoja con la base creada y en un módulo el código que me enviaste para que te sea más fácil, si puede ser que me puedas echar una mano..
Te lo agradezco de antemano...
1 Respuesta
Respuesta de valedor
1