Ver Mensaje Individual
  #3 (permalink)  
Antiguo 09/07/2007, 11:58
Xtela
 
Fecha de Ingreso: marzo-2007
Mensajes: 15
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Ayuda con actualización

Bueno, este es el código del botón que actualiza cada semana. En la columna ''W' coloca los valores que quiero pasar a la otra hoja (hoja2).

En la hoja2, tengo ordenados los jugadores por equipos en una columna (columna C). La cuestión sería buscar el nombre del jugador que está en la fila 3 en la hoja2 dentro de la "tabla" de datos de la hoja1 e insertar su valor en la celda H3 de la hoja2. Y así con todos los jugadores de la columna C. Continuaría con H4, H5, H6,...para la primera semana. I3, I4, I5, ....para la 2ª semana, etc...Así hasta 'AO' (34 semanas).

No se si me entiendes. Es difícil explicar y de entender para el que no lo ve así sin la hoja de excel delante.

Si no entiendes me dices y te paso la hoja.


Código:
Private Sub CommandButton1_Click()
Dim a As Single
a = 50991
Range("a6", "w361").Select
Selection.Delete
  For v = 1 To 34
    If Range("c1") = v Then
    a = a + v * 9
    End If
  Next v
Cells(5, 1).Select
c = 1
For b = 1 To 9
a = a + 1
    With ActiveSheet.QueryTables.Add(Connection:="URL;http://www.acb.com/fichas/LACB" & a & ".php", Destination:=ActiveCell.Offset(c, 0))
        
        .Name = "LACB" & a
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = True
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "5"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
        
         c = c + 40
         End With
Next b

For j = 8 To 344 Step 40
c = j
h = 0
i = 0
'Pasamos por todas las casillas del "primer" equipo.
Do While Not IsEmpty(Cells(c, 1))
c = c + 1
h = h + 1
Loop
'Encontramos el resultado del "primer" equipo.
e = Val(Cells(c + 1, 4))
'Pasamos por todas las casillas del "segundo" equipo.
d = c + 6
Do While Not IsEmpty(Cells(d, 1))
d = d + 1
i = i + 1
Loop
'Encontramos el resultado del segundo equipo.
f = Val(Cells(d + 1, 4))
'Hacemos la diferencia entre los resultados.
g = e - f
'Ponemos los cotadores en el lugar/sitio original.
c = c - h
d = d - i
'Hacemos los cálculos y los ponemos en la última columna de los equipos.
If g > 0 Then
  Do While Not IsEmpty(Cells(c, 1))
  If Cells(c, 22) > 0 Then
  Cells(c, 23) = Cells(c, 22) * 1.2
  Else
  Cells(c, 23) = Cells(c, 22)
  End If
  c = c + 1
  Loop
    Do While Not IsEmpty(Cells(d, 1))
    Cells(d, 23) = Cells(d, 22)
    d = d + 1
    Loop
End If
If g < 0 Then
  Do While Not IsEmpty(Cells(d, 1))
  If Cells(d, 22) > 0 Then
  Cells(d, 23) = Cells(d, 22) * 1.2
  Else
  Cells(d, 23) = Cells(d, 22)
  End If
  d = d + 1
  Loop
    Do While Not IsEmpty(Cells(c, 1))
    Cells(c, 23) = Cells(c, 22)
    c = c + 1
    Loop
End If
Next j
End Sub
Gracias.