Forum » Programiranje » [Excel VBA] združljivost verzij (Nemška v.)
[Excel VBA] združljivost verzij (Nemška v.)
mihafner8 ::
Pozdravljeni
V Excelu (VBA) sem prvič izdelal svoj nekoliko bolj resen program, na mojem računalniku je seveda delal odlično. Ko sem ga poslal kolegom sem ugotovil, da je program več kot samo pisanje kode.
Stvar je sledeča, program je stestiran v Excelu 2007 in 2010 v Slo. in Angl. verziji. Ko pa ga pošljem kolegom v Nemčijo in Avstrijo vsem javi napako: Run-time error '13' Type mismatch.
Kje bi lahko bili vzroki za to napako, sprašujem se o nastavitvah Excela, težava v kodi se mi ne zdi prav verjetna, ali pač…pošiljam del kode, kjer se mi zdi, da se »zatakne«:
Za kakršenkoli namig ali opis problema (glede na to da sem začetnik) bom nadvse hvaležen.
// Slo-Tech ima za namene lepljenja kode značko st.koda :) -- moderator
V Excelu (VBA) sem prvič izdelal svoj nekoliko bolj resen program, na mojem računalniku je seveda delal odlično. Ko sem ga poslal kolegom sem ugotovil, da je program več kot samo pisanje kode.
Stvar je sledeča, program je stestiran v Excelu 2007 in 2010 v Slo. in Angl. verziji. Ko pa ga pošljem kolegom v Nemčijo in Avstrijo vsem javi napako: Run-time error '13' Type mismatch.
Kje bi lahko bili vzroki za to napako, sprašujem se o nastavitvah Excela, težava v kodi se mi ne zdi prav verjetna, ali pač…pošiljam del kode, kjer se mi zdi, da se »zatakne«:
Function MeasOutput() ' UNPROTECT Sheets("RESULT").Select ActiveSheet.Unprotect Password:="E" Dim FRow As Integer FRow = 7 Dim Space As Integer Dim Space1 As Integer Dim Space2 As Integer Dim Space3 As Integer Dim Space4 As Integer Dim Space5 As Integer Dim Space6 As Integer Space1 = 0 nn = 0 ' NETWORK MEASURES If UserForm1.NetworkMeas = False Then: GoTo Empty_1 Sheets("RESULT").Cells(FRow, 2) = "NETWORK MEASURES:" Sheets("RESULT").Cells(FRow + 1, 2) = "CN:" 'določi kam naj izpiše CN! če je v 3 koloni mora biti barjavnje na koncu! Sheets("RESULT").Cells(FRow + 1, 4) = "MEASURE NAME:" Sheets("RESULT").Cells(FRow + 1, 16) = "MEASURE DESCRIPTION:" Columns("P:P").Select Columns("P:P").EntireColumn.AutoFit ' ***barvanje izpisa: Sheets("RESULT").Range(Cells(FRow, 2), Cells(FRow, 16)).Select e_Appearance.text1 Sheets("RESULT").Range(Cells(FRow + 1, 3), Cells(FRow + 1, 2)).Select e_Appearance.text2 Sheets("RESULT").Range(Cells(FRow + 1, 4), Cells(FRow + 1, 15)).Select e_Appearance.text2 Sheets("RESULT").Range(Cells(FRow + 1, 16), Cells(FRow + 1, 16)).Select e_Appearance.text2 For i = 1 To N If Sheets("PRELIMINAR").Cells(E + i, 31) > "0" Then If UserForm1.NewOb = True And _ Sheets("PRELIMINAR").Cells(E + i, 6) = 1 Then nn = nn + 1 Sheets("RESULT").Cells(FRow + 1 + nn, 3) = Sheets("PRELIMINAR").Cells(E + i, 2) Sheets("RESULT").Cells(FRow + 1 + nn, 4) = Sheets("PRELIMINAR").Cells(E + i, 3) ' ***barvanje izpisa: Sheets("RESULT").Range(Cells(FRow + 1 + nn, 2), Cells(FRow + 1 + nn, 3)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 4), Cells(FRow + 1 + nn, 15)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 16), Cells(FRow + 1 + nn, 16)).Select e_Appearance.text3 End If If UserForm1.RetrofittingOb = True And _ Sheets("PRELIMINAR").Cells(E + i, 7) = 1 Then nn = nn + 1 Sheets("RESULT").Cells(FRow + 1 + nn, 3) = Sheets("PRELIMINAR").Cells(E + i, 2) Sheets("RESULT").Cells(FRow + 1 + nn, 4) = Sheets("PRELIMINAR").Cells(E + i, 3) ' ***barvanje izpisa: Sheets("RESULT").Range(Cells(FRow + 1 + nn, 2), Cells(FRow + 1 + nn, 3)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 4), Cells(FRow + 1 + nn, 15)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 16), Cells(FRow + 1 + nn, 16)).Select e_Appearance.text3 End If If UserForm1.NotImportant = True Then nn = nn + 1 Sheets("RESULT").Cells(FRow + 1 + nn, 3) = Sheets("PRELIMINAR").Cells(E + i, 2) Sheets("RESULT").Cells(FRow + 1 + nn, 4) = Sheets("PRELIMINAR").Cells(E + i, 3) ' ***barvanje izpisa: Sheets("RESULT").Range(Cells(FRow + 1 + nn, 2), Cells(FRow + 1 + nn, 3)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 4), Cells(FRow + 1 + nn, 15)).Select e_Appearance.text3 Sheets("RESULT").Range(Cells(FRow + 1 + nn, 16), Cells(FRow + 1 + nn, 16)).Select e_Appearance.text3 End If Else nn = nn End If Next i Space1 = 3 Empty_1:
Za kakršenkoli namig ali opis problema (glede na to da sem začetnik) bom nadvse hvaležen.
// Slo-Tech ima za namene lepljenja kode značko st.koda :) -- moderator
- spremenil: Mavrik ()
mihafner8 ::
Pozdravljeni,
zanimiv vzrok napake sem odkril za rešitev mojega problema.
Nemške verzije Excela (in verjetno tudi kakšna druga) ima nemške ukaze za funkcije. Npr. Excelova funkcija Sum v Angl. in Slo. verziji, je v nemški Summe.
V mojem programu sem uporabil zapisovanje funkcij v celice, ki pa jih nemška verzija ni "razumela". Namesto Summe jezapisalo Sum.
Zato sem spremenil kodo, da program v celice piše številske vrednosti in zdaj dela v vseh verzijah.
Hvala in LP
zanimiv vzrok napake sem odkril za rešitev mojega problema.
Nemške verzije Excela (in verjetno tudi kakšna druga) ima nemške ukaze za funkcije. Npr. Excelova funkcija Sum v Angl. in Slo. verziji, je v nemški Summe.
V mojem programu sem uporabil zapisovanje funkcij v celice, ki pa jih nemška verzija ni "razumela". Namesto Summe jezapisalo Sum.
Zato sem spremenil kodo, da program v celice piše številske vrednosti in zdaj dela v vseh verzijah.
Hvala in LP
kr?en ::
To so pa nemci, ko morajo vse prevest :D
Preveri slucajno se v italijanski verziji. Oni imajo tudi navado, da morajo vse prevest.
Preveri slucajno se v italijanski verziji. Oni imajo tudi navado, da morajo vse prevest.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | rabib vba kodo za shranjevanje v bin (iz excella)Oddelek: Programiranje | 883 (665) | Silikon |
» | kako v excelu avtomatsko obarvati celiceOddelek: Programska oprema | 4198 (3971) | smetko |
» | Calc/excel delo s tabeloOddelek: Programiranje | 1467 (1234) | salabajs |
» | [VB] excel makro, VB program ali kaj drugegaOddelek: Programiranje | 2364 (2364) | Tutankhamun |
» | [Excel] problem z makrojem, visual basic (strani: 1 2 )Oddelek: Programiranje | 5707 (5170) | steev |