Excel vba, pídele al profesor que califique. No comprendo. Esta es una mesa que alguien más hizo para mí.
dim r % I %
dim array,brr
Dim d como objeto
Marcar wb como libro de trabajo
Marcar ws como hoja de trabajo
Atenuar mi ruta$, mi nombre$
Atenuar reg como Nueva expresión regular 'La parte superior es la variable de definición. Declarar objeto de expresión regular reg.
Set d = createobject("Script.Dictionary")' define un diccionario.
Con registro
. El objeto de expresión regular "global=False" se detendrá cuando solo se encuentre un objeto. Si quieren una coincidencia exacta, deben establecerse en VERDADERO aquí.
. patrón = "(\d+) \.(\ d+) \.XLS$ " 'Este principio es un patrón de expresión regular. El punto en el medio coincide con cualquier carácter excepto "\n (\ d+)". , XLS $ significa terminar en xls.
Termina con
Usa la hoja(" hoja1 ")' para realizar las siguientes acciones en la hoja(" hoja1 ").
R=. celda (número de fila, 1). final (xlup). "fila" calcula las filas utilizadas en la tabla.
arr =. Range(" a 1:af " & amp; r)' asigna un valor a la matriz ARR.
For i = 1 to UBound(ARR)' Bucle en datos ARR.
If Len(arr(i,1))<>0 Then 'Si la longitud del contenido de la celda (arr(i,1)) no está vacía.
D(arr(i, 1)) = i 'Agrega el contenido de la celda arr(i, 1) al diccionario como un carácter clave, I representa la entrada correspondiente en el diccionario.
Termina si...
Entonces
Termina con...
mi ruta = ThisWorkbook. Caminos y caminos. "\" 'mypath es igual a la ruta de la hoja de trabajo operativa.
mi nombre = Dir(mi ruta & "*.xls") 'mi nombre es igual a la hoja de cálculo cuya ruta termina en *.xls.
Cuando mi nombre& lt& gtSi el valor de minombre no está vacío, lo está.
Si está registrado. test(mi nombre)t reg objeto regular coincide con el contenido.
Establezca mh = reg. Ejecutar(minombre)' asigna el contenido coincidente a mh.
N = valor(MH(0)). SubMatches(1))+1 ' n = el valor contenido en la cadena devuelta por la función val más 1, mh(0). SubMatches(1)La expresión aquí es el valor devuelto por SubMatches en el primer valor de MH.
set WB = GetObject(mi ruta y mi nombre)
Con wb
Con. Hoja de trabajo("Nueva tabla de resumen")' abre la hoja de trabajo.
brr =. range("a6:y47")
Para i = 1 para subestimar(brr)
si D .exists(brr(i,1)) T si BRR(I, 1) ) El contenido del valor existe en el diccionario D.
M = d(brr(i, 1))' Establece el elemento correspondiente a M=Dbrr(i, 1).
Arr(m, n) = brr(i, 21)'Asigna un valor a Arr igual a brr(i, 21).
Termina si...
Entonces
Termina con...
.
Cerrar falso
Termina con...
Terminará si...
'Mi nombre = Dir()'Abre las hojas de trabajo que cumplen las condiciones en secuencia .
Anillo
Con hoja ("hoja1")
. rango("a1"). resize (ubound (ARR), ubound (ARR, 2)) = arr 'Asigna el contenido de la tabla anterior a ARR.
Termina con...
Finalmente, este programa abrirá las hojas de trabajo en una carpeta en secuencia y resumirá los datos que cumplan con los requisitos en una nueva hoja de trabajo.