comment
IRC Chat
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

Grid Editable 3

  • 0 Respuestas
  • 1434 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5411
  • Actividad:
    20%
  • Reputación 33
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« en: Julio 26, 2010, 10:59:33 am »
Código: Visual Basic
  1.  Private Function AjustarFecha(ByVal sFecha As String) As String
  2.         ' Ajustar la cadena introducida a formato de fecha                        (27/Abr/01)
  3.         Dim i As Long
  4.         Dim s As String
  5.         '
  6.         If sFecha = "" Then
  7.                 AjustarFecha = ""
  8.                 Exit Function
  9.         End If
  10.         '
  11.         'On Error Resume Next
  12.         On Error GoTo 0
  13.         '
  14.         ' Comprobar si se usan puntos como separador
  15.         ' si es así, cambiarlos por /
  16.         Do
  17.                 i = InStr(sFecha, ".")
  18.                 If i Then
  19.                         Mid$(sFecha, i, 1) = "/"
  20.                 End If
  21.         Loop While i
  22.         '
  23.         ' Comprobar si se usan - como separador
  24.         ' si es así, cambiarlos por /
  25.         Do
  26.                 i = InStr(sFecha, "-")
  27.                 If i Then
  28.                         Mid$(sFecha, i, 1) = "/"
  29.                 End If
  30.         Loop While i
  31.         '
  32.         s = ""
  33.         Do
  34.                 i = InStr(sFecha, "/")
  35.                 If i Then
  36.                         s = s & Right$("0" & Left$(sFecha, i - 1), 2) & "/"
  37.                         sFecha = Mid$(sFecha, i + 1)
  38.                 End If
  39.         Loop While i
  40.         sFecha = s & sFecha
  41.         '
  42.         If InStr(sFecha, "/") Then
  43.                 If Len(sFecha) = 5 Then
  44.                         ' Si es igual a 5 caracteres, es que falta el año
  45.                         sFecha = sFecha & "/"
  46.                 ElseIf Len(sFecha) < 3 Then
  47.                         ' Si es menor de 3 caracteres es que falta el mes
  48.                         sFecha = sFecha & "/" & CStr(Month(Now)) & "/"
  49.                 End If
  50.         ElseIf Len(sFecha) < 3 Then
  51.                 sFecha = sFecha & "/" & CStr(Month(Now)) & "/"
  52.         Else
  53.                 s = ""
  54.                 For i = 1 To 2
  55.                   s = s & "/" & Mid$(sFecha, (i - 1) * 2 + 1, 2)
  56.                 Next
  57.                 s = s & "/" & Mid$(sFecha, 5)
  58.                 sFecha = s
  59.         End If
  60.         sFecha = Trim$(sFecha)
  61.         '
  62.         ' Comprobar si tiene una barra al principio, si es así, quitarla
  63.         If Left$(sFecha, 1) = "/" Then
  64.                 sFecha = Mid$(sFecha, 2)
  65.         End If
  66.         ' Si tiene una barra al final, es que falta el año
  67.         If Right$(sFecha, 1) = "/" Then
  68.                 sFecha = sFecha & CStr(Year(Now))
  69.         End If
  70.         '
  71.         ' Convertir la fecha, por si no se especifican todos los caracteres
  72.         ' Nota: Aquí puedes usar el formato que más te apetezca
  73.         sFecha = Format$(sFecha, "dd/mm/yyyy")
  74.         '
  75.  '      ' Si no es una fecha correcta...
  76.  '      If IsDate(sFecha) = False Then
  77.  '              AjustarFecha = sFecha
  78.  '      Else
  79.  '          AjustarFecha = sFecha
  80.  '      End If
  81.         '
  82.         Err = 0
  83.         '
  84.         AjustarFecha = sFecha
  85.  End Function
  86.  
  87.  Private Sub CabeceraGrid()
  88.         ' Asignar las cabeceras del grid y asignación de valores predeterminados
  89.         Dim i As Long
  90.         '
  91.         With Grid2
  92.                 .FixedRows = 1
  93.                 .FixedCols = 1
  94.                 .ScrollBars = flexScrollBarBoth
  95.                 .AllowUserResizing = flexResizeColumns
  96.                 .Cols = 11                                ' Número de columnas, contando la cabecera
  97.                 .Rows = 2                                  ' Número de filas, contando la cabecera
  98.                                                                     ' el número de filas se asignará dinámicamente
  99.                 .ColWidth(0) = 600                ' El ancho de la columna 0
  100.                 '
  101.                 ' Asignar los nombres de las cabeceras y el ancho de las columnas
  102.                 .TextArray(1) = "Fecha"
  103.                 .ColWidth(1) = 1100
  104.                 .TextArray(2) = "Número"
  105.                 .ColWidth(2) = 900
  106.                 .TextArray(3) = "Nombre"
  107.                 .ColWidth(3) = 1500
  108.                 .TextArray(4) = "Apellidos"
  109.          .ColWidth(4) = 2000
  110.                 .TextArray(5) = "Domicilio"
  111.                 .ColWidth(5) = 2500
  112.                 .TextArray(6) = "Población"
  113.                 .ColWidth(6) = 2000
  114.                 .TextArray(7) = "Provincia"
  115.                 .ColWidth(7) = 1600
  116.                 .TextArray(8) = "Teléfonos"
  117.          .ColWidth(8) = 1500
  118.                 .TextArray(9) = "e-mail"
  119.                 .ColWidth(9) = 1200
  120.                 .TextArray(10) = "Observaciones"
  121.                 .ColWidth(10) = 2500
  122.                 '
  123.                 ' Mostrar los números en las filas
  124.                 For i = 1 To .Rows - 1
  125.                         .TextMatrix(i, 0) = i
  126.                 Next
  127.                 '
  128.                 ' Esto indicará que es una nueva fila
  129.                 ' (asignarla a la primera columna de la última fila)
  130.                 .TextMatrix(.Rows - 1, 0) = cNuevaFila
  131.         End With
  132.  End Sub
  133.  
  134.  Private Sub BorrarFilas()
  135.         ' Borrar las filas seleccionadas                                                            (13/May/01)
  136.         Dim i As Long
  137.         Dim j As Long
  138.         Dim k As Long
  139.         Dim n As Long
  140.         '
  141.         ' Si está seleccionada la última fila, no borrarla
  142.         If Grid2.RowSel = Grid2.Rows - 1 Then
  143.                 Beep
  144.            Exit Sub
  145.         End If
  146.         If Grid2.Row = Grid2.Rows - 1 Then
  147.                 Beep
  148.                 Exit Sub
  149.         End If
  150.         '
  151.         ' Borrar siempre desde la fila mayor a la menor
  152.         i = Grid2.Row
  153.         j = Grid2.RowSel
  154.         If i < j Then
  155.                 k = i
  156.                 i = j
  157.             j = k
  158.         End If
  159.         For n = i To j Step -1
  160.                 Grid2.RemoveItem n
  161.         Next
  162.         LastRow = Grid2.Rows - 1
  163.         LastCol = 1
  164.         Grid2.Col = LastCol
  165.         Grid2.Row = LastRow
  166.         Grid2.RowSel = LastRow
  167.         Grid2.ColSel = LastCol
  168.  End Sub
  169.  
  170.  
« Última modificación: Julio 08, 2011, 10:10:21 am por ANTRAX »


 

¿Te gustó el post? COMPARTILO!



Simular un MSFlexGrid Editable

Iniciado por ANTRAX

Respuestas: 0
Vistas: 2043
Último mensaje Julio 26, 2010, 10:58:02 am
por ANTRAX
Grid Editable 4

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1407
Último mensaje Julio 26, 2010, 11:00:03 am
por ANTRAX
Grid Editable 2

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1323
Último mensaje Julio 26, 2010, 10:58:46 am
por ANTRAX