
Sub importa()
close number1
Open "C:UsersfraDesktopfradiana94worksmetri_modifica 030310 50310.tb" For Input As number1
Dim b, c As String
Dim d, Nnodi, somma_sxx As Single
Nnodi = 2
b = 0
c = "SZZ"
Do Until b = c 'vai fino alla riga di cui mi interessa il valore
Line Input number1, a
b = Mid(a, 42, 3)
Loop
somma_sxx = 0
For i = 1 To Nnodi
Line Input number1, a 'input di stringa
c = Mid(a, 26, 10) 'prendi un certo valore nella stringa
d = CSng(c) 'converti da stringa a valore numerico
somma_sxx = somma_sxx + d
Next i
Worksheets(1).Cells(4, 10) = somma_sxx
Close number1
End Sub
|
Sub importa()
'
' importa Macro
'
Close number1
Open "C:UsersfraDesktopfradiana94worksmetri_modifica 030310 50310.tb" For Input As number1
Dim b, c, sigmaxx, sigmayy, sigmazz As String
Dim d, e, f, Nnodi_elemento, Nnodi_base, Nnodi_altre_sup, somma_sxx, somma_syy, somma_szz, sigmaxx_media, sigmayy_media, sigmazz_media As Single
Nnodi_elemento = 20 'fisso i valori dei contatori per i cicli
Nnodi_base = 8
Nnodi_altre_sup = Nnodi_elemento - Nnodi_base
Nelementi = 33
b = 0
c = "SZZ"
Do Until b = c 'arrivo alla tabella numerica che mi interessa nel file .txt
Line Input number1, a
b = Mid(a, 42, 3)
Loop
For k = 1 To Nelementi
For j = 1 To Nnodi_altre_sup 'salto i valori numerici che non mi interessano
Line Input number1, a
Next j
somma_sxx = 0
somma_syy = 0
somma_szz = 0
For i = 1 To Nnodi_base
Line Input number1, a
sigmaxx = Mid(a, 15, 10) 'valori numerici che mi interessa riportare
sigmayy = Mid(a, 26, 10)
sigmazz = Mid(a, 37, 10)
d = CSng(sigmaxx) 'converto da stringa a single
e = CSng(sigmayy)
f = CSng(sigmazz)
somma_sxx = somma_sxx + d
somma_syy = somma_syy + e
somma_szz = somma_szz + f
Next i
sigmaxx_media = somma_sxx / Nnodi_base
Worksheets(1).Cells(4 + k, 5) = sigmaxx_media 'riporto il valore finale su excel
sigmayy_media = somma_syy / Nnodi_base
Worksheets(1).Cells(4 + k, 6) = sigmayy_media
sigmazz_media = somma_szz / Nnodi_base
Worksheets(1).Cells(4 + k, 7) = sigmazz_media
Next k
Close number1
End Sub |
Sub importa()
'
' importa Macro
'
Close number1
Open "C:UsersfraDesktopfradiana94worksmetri_modifica 030310 50310.tb" For Input As number1 'in questo file ci sono i numeri tipo 1.543e+04
Dim b, c, sigmaxx, sigmayy, sigmazz As String 'penso che il problema sia qui anche perchè non ho errori di codice
Dim d, e, f, Nnodi_elemento, Nnodi_base, Nnodi_altre_sup, somma_sxx, somma_syy, somma_szz, sigmaxx_media, sigmayy_media, sigmazz_media As Single 'oppure il problema è qui
Nnodi_elemento = 20
Nnodi_base = 8
Nnodi_altre_sup = Nnodi_elemento - Nnodi_base
Nelementi = 33
b = 0
c = "SZZ"
Do Until b = c
Line Input number1, a
b = Mid(a, 42, 3)
Loop
''''''da qui in poi il programma è quello postato in precedenza |
d = CSng(sigmaxx) somma_sxx = somma_sxx + d 'in questi due casi il numero scritto in excel giusto 1,234 magicamente diventa 1234! Problema dell'esponenziale a parte, perchè non sono ancora riuscito a risolverlo |
dim a as integer,b as string,c as single,ecc... 'oppure dim a as integer dim b as sring dim c as single ecc... 'come fai tu dim a,b,c as integer 'solo c è integer le altre a b sono variant ' Ciao Max |
