Apagada docs

Aprendiendo a programar el pasado

Herramientas de usuario

Herramientas del sitio


es:basic:vba:estadistica_letras

Estadística Letras

Hace una estadística del uso de cada letra en un documento.

De momento, no tiene en cuenta reglas fonológicas (ejemplo: cuenta QU como Q + U, y no como K). Mi idea era averiguar si ciertas “aliteraciones” que ve alguna crítica impresionista en obras del siglo XVII eran de verdad aliteraciones o no (pero en realidad, para eso, debería haber usado criterios fonológicos).

  • Como entrada, se toma el texto del documento actual.
  • La salida se muestra en la consola de depuración de Visual Basic.
EstadisticaLetras.bas
Attribute VB_Name = "EstadisticaLetras"
Sub Estadisticalibro()
'
'
' Estadisticalibro Macro
' Averigua la frecuencia de una letra en el idioma español basándose en el documento actual.
' Quiero usarla con el Quijote para la frecuencia en el siglo XVI.
'
'
' Sería interesante usar conversiones fonológicas pero no me apetece tardar tanto.
'
 
Dim D As Document
Set D = ActiveDocument
Dim P As Paragraph
Dim a(256)
For f = 0 To 256: a(f) = 0: Next
 
Constante1 = "ÁÂÄÃÀÉÊËÈÍÎÏÌÓÔÒÖÕÒÚÛÜÙ"
Constante2 = "AAAAAEEEEIIIIOOOOOOUUUU"
Dim I As Integer
 
Dim C As String
Dim valid As Boolean
Debug.Print D.Content.Characters.Count & " Caracteres."
For f = 1 To D.Content.Characters.Count
    C = D.Content.Characters(f)
    C = UCase(C)
    valid = True
    I = InStr(Constante1, C)
    If I >= 1 Then C = Mid(Constante2, I)
    If C < "A" Or C > "Z" Then valid = False
    If C = "Ç" Or C = "Ñ" Then valid = True
    If valid Then
        a(Asc(C)) = a(Asc(C)) + 1
    End If
Next f
For f = 1 To 256
    If a(f) > 0 Then Debug.Print Chr(f), a(f)
Next f
End Sub
Este sitio web utiliza cookies. Al utilizar el sitio web, usted acepta almacenar cookies en su computadora. También reconoce que ha leído y entendido nuestra Política de privacidad. Si no está de acuerdo abandone el sitio web.Más información
es/basic/vba/estadistica_letras.txt · Última modificación: 2025/02/20 09:09 por nepenthes