Excel работает на одном компьютере, но на другом я получаю ошибку 400 - PullRequest
0 голосов
/ 04 марта 2019

У меня один вопрос по поводу кода Excel VBA.Он отлично работает на моем компьютере, но не работает на компьютере моего друга.(Появляется ошибка 400).Я попытался удалить Application.UserName, но это не работает.У меня действительно нет идей о том, что это может быть.

вот код:

Sub Preglej_datum()

Dim c As Range
Dim novPodatek
'Za podatek, kateri stolpec vzamemo, da dobimo celoto izpolnjenih vrstic (vedno se gleda številka objave
Dim stolpec_do
Dim rngstolpec_do
rngstolpec_do = "A1:UU1"
For Each stolpec In ActiveSheet.Range(rngstolpec_do)
    If stolpec = "Stevilka objave" Then
        stolpec_do = stolpec.Column
        End If
    Next stolpec



'Za podatek, koliko vrstic vzamemo za pregled
Dim st_vrstic As Range
lastRow = ActiveSheet.Range(Cells(1, stolpec_do), Cells(700000, stolpec_do)).End(xlDown).Row



'V katerem stolpcu dobimo podatek, koliko časa je do konca razpisa
Dim datum_do
For Each stolpec1 In ActiveSheet.Range(rngstolpec_do)
    If stolpec1 = "Veljavnost Razpisa do" Then
        datum_do = stolpec1.Column
        End If
    Next stolpec1

'V katerem stolpcu dobimo podatek o Nazivu javnega narocnika
Dim stolpec_javninarocnik
For Each x In ActiveSheet.Range(rngstolpec_do)
    If x.Value = "Naziv Javnega naročnika" Then
        stolpec_javninarocnik = x.Column
        End If
    Next x


'V katerem stolpcu dobimo podatek o Opozorilu
Dim stolpec_opozorilo
For Each x In ActiveSheet.Range(rngstolpec_do)
    If x.Value = "Opozorjen" Then
        stolpec_opozorilo = x.Column
        End If
    Next x

'V katerem stolpcu dobimo podatek o sifri javnega narocila
Dim stolpec_sifrajavnega
For Each x In ActiveSheet.Range(rngstolpec_do)
    If x.Value = "Stevilka objave" Then
        stolpec_sifrajavnega = x.Column
        End If
    Next x


'Dobimo podatke, katerim razpisom poteče veljavnost (150dni od današnjega dneva)
Dim rng_potek_pogodbe As Range
Dim dostolpec_nazivjavnega
Dim dostolpec_opozorjen
Dim dostolpec_sifranarocila

dostolpec_nazivjavnega = stolpec_javninarocnik - datum_do
dostolpec_opozorjen = stolpec_opozorilo - datum_do
dostolpec_sifranarocila = stolpec_sifrajavnega - datum_do


Set rng_potek_pogodbe = ActiveSheet.Range(Cells(2, datum_do), Cells(lastRow, datum_do))
For Each c In rng_potek_pogodbe
    If c.Value - Date < 150 And IsEmpty(c.Offset(0, dostolpec_opozorjen).Value) And Not IsEmpty(c.Value) Then
        Dim vrednost
        vrednost = c.Value - Date
        MsgBox "Čez " & vrednost & " dni poteče veljavnost razpisa:" & vbCrLf & vbCrLf & "Šifra: " & c.Offset(0, dostolpec_sifranarocila).Value & vbCrLf & "Javni naročnik: " & c.Offset(0, dostolpec_nazivjavnega)
        ActiveSheet.Unprotect "1111"
        c.Offset(0, dostolpec_opozorjen).Value = "Opozorjen:" & Application.username
        ActiveSheet.Protect "1111", True, True, True, True, True, True, True, True, True
        novPodatek = novPodatek & "javni naročnik: " & c.Offset(0, dostolpec_nazivjavnega) & "; Potek naročila čez:" & vrednost & ";  Šifra Naročila:" & c.Offset(0, dostolpec_sifranarocila) & vbCrLf
    End If
Next c

'Zapis v beležnico
If Not IsEmpty(novPodatek) Then
    'Call beleznica(novPodatek)
    MsgBox "Works!"
End If
MsgBox "Pregled zaključen"
End Sub

Может кто-нибудь помочь, что может быть не так с этим кодом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...