Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: guillehampp en 3 Febrero 2015, 00:49 am



Título: Leer una columna de un .XLS y contar los repetidos VBScript
Publicado por: guillehampp en 3 Febrero 2015, 00:49 am
Hola, estoy tratando de leer un archivo de excel, donde tiene varias palabras repetida, pero en una una sola columna. Como puedo hacer para leer esa columna, y mostrar cuales se repiten?

EJ: Pepe 5 veces

Muchas Gracias!!


Título: Re: Leer una columna de un .XLS y contar los repetidos VBScript
Publicado por: guillehampp en 9 Febrero 2015, 22:03 pm
Aqui he logrado Solucionarlo :o :o :o :o :o :o


Código
  1. Set objExcel = CreateObject("Excel.Application")
  2. objExcel.Visible = True
  3.  
  4. Set objWorkbook = objExcel.Workbooks.Open("d:\Script\Inbox\comandos.xls")
  5. Set data = objWorkbook.WorkSheets("comandos")
  6. ReDim pass(790)
  7. j = 1
  8. For i = 1 To data.UsedRange.Rows.Count
  9.    pass(i) = data.Cells(i, 1).Value
  10. Next
  11.  
  12. DisplayArrayDupeCount pass,1
  13.  
  14. Sub DisplayArrayDupeCount(aTemp, iShow)
  15. Dim itemNameKey
  16. Dim d:Set d = GetDupDict(aTemp)
  17.  
  18. For Each itemNameKey In d.Keys
  19. If d(itemNameKey) > iShow Then
  20.     WScript.Echo itemNameKey & " found in array " & d(itemNameKey) & " times"
  21.    End If
  22. Next
  23. Set d = Nothing
  24. End Sub
  25.  
  26. Function GetDupDict(aTemp)
  27. Dim dItems, j
  28.  
  29. Set dItems = CreateObject("Scripting.Dictionary")
  30.  
  31. For j = 0 To UBound(aTemp)
  32.   If Not IsEmpty(aTemp(j)) Then
  33.      dItems(aTemp(j)) = dItems(aTemp(j)) + 1
  34.   End If
  35. Next
  36. Set GetDupDict = dItems
  37. Set dItems = Nothing
  38. End Function