praegune kellaaeg 20.06.2025 00:26:48
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Skyrim
HV vaatleja
liitunud: 28.01.2015
|
25.02.2015 12:33:53
Excel 2013 macro |
|
|
Tervitus.
Ehk leidub siin mõni exceli guru.
Mul nimelt üks fail, mis osades arvutites käivitub ja osades mitte. Kasutuses Excel 2013.
Nendes kus fail tööle ei lähe annab vea:
Microsoft Visual Basic aknas
Run-time error ´424´: Object required
Valikus End, Debug, Help
Debug logi siin:
'Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const SaveFolderCellName = "SaveFold"
Sub Launch()
Centering
ClaimsForm.Show (selle rea vikab kollaseks)
End Sub
Sub SaveData(Qarr(), ErrVar)
RowSplitter = 56
SaveName = "Kahjuteade"
bookname = ActiveWorkbook.Name
SaveLoc = Range(SaveFolderCellName)
If Right(SaveLoc, 1) <> "\" Then SaveLoc = SaveLoc & "\"
Workbooks.Add
Cells.NumberFormat = "@"
o2 = 0
For i = 1 To UBound(Qarr(), 1)
Rws = 0
Rws2 = 0
o2 = o2 + 1
Range("A1").Cells(o2, 1) = Qarr(i, 2)
Range("A1").Cells(o2, 1).Font.Italic = True
Range("A1").Cells(o2, 1).Font.Bold = True
If Len(Qarr(i, 2)) > RowSplitter Then
Rws = Application.WorksheetFunction.RoundDown(Len(Qarr(i, 2)) / RowSplitter, 0)
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws, 9)).MergeCells = True
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws, 9)).WrapText = True
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws, 9)).VerticalAlignment = xlTop
End If
o2 = o2 + 1 + Rws
Range("A1").Cells(o2, 1) = Qarr(i, 4)
If Len(Qarr(i, 4)) > RowSplitter Then
Rws2 = Application.WorksheetFunction.RoundDown(Len(Qarr(i, 4)) / RowSplitter, 0)
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws2, 9)).MergeCells = True
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws2, 9)).WrapText = True
Range(Range("A1").Cells(o2, 1), Range("A1").Cells(o2 + Rws, 9)).VerticalAlignment = xlTop
End If
o2 = o2 + 1 + Rws2
Next i
Cells.NumberFormat = "General"
For i = 1 To 10
For j = 1 To UBound(Qarr, 1)
If Qarr(j, 5) = i Then
NameVar = NameVar & Qarr(j, 4) & " "
NameErrVar = NameErrVar & Qarr(j, 2) & Chr(10)
End If
Next j
Next i
PrintRng = Range(Cells(1, 1), Cells(ActiveSheet.UsedRange.Rows.Count, 9)).Address
Printarea PrintRng, Qarr(1, 4)
FolderName = NameVar & " (Created by " & Application.UserName & " at " & Date & " " & Hour(Time) & "." & Minute(Time) & "." & Second(Time) & ")"
On Error GoTo SaveErrSpot
MkDir SaveLoc & FolderName
On Error GoTo 0
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
SaveLoc & FolderName & "\" & SaveName & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
ActiveWorkbook.Close False
Windows(bookname).Activate
Exit Sub
SaveErrSpot:
ErrVar = 1
ActiveWorkbook.Close False
Application.ScreenUpdating = True
MsgBox "Salvestamisel tekkis rike." & Chr(10) & "Palun kontrolli kas järgnevates lahtrites on kasutatud vaid tähti, numbreid ja tühikuid." & Chr(10) & Chr(10) & NameErrVar, 16, "Error!"
End Sub
Sub Printarea(PrintRng, StrCase)
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.Printarea = PrintRng
With ActiveSheet.PageSetup
.LeftHeader = "&""-,Bold Italic""&9File Created By " & Application.UserName
.CenterHeader = "&""-,Bold Italic""&9Case: " & StrCase
.RightHeader = "&""-,Bold Italic""&9Creation Time: " & Date & " at " & Time
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = "&""-,Italic""&9&K01+049&P/&N"
.LeftMargin = Application.InchesToPoints(0.708661417322835)
.RightMargin = Application.InchesToPoints(0.708661417322835)
.TopMargin = Application.InchesToPoints(0.748031496062992)
.BottomMargin = Application.InchesToPoints(0.748031496062992)
.HeaderMargin = Application.InchesToPoints(0.31496062992126)
.FooterMargin = Application.InchesToPoints(0.31496062992126)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 100
.PrintErrors = xlPrintErrorsDisplayed
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.ScaleWithDocHeaderFooter = True
.AlignMarginsHeaderFooter = True
.EvenPage.LeftHeader.Text = ""
.EvenPage.CenterHeader.Text = ""
.EvenPage.RightHeader.Text = ""
.EvenPage.LeftFooter.Text = ""
.EvenPage.CenterFooter.Text = ""
.EvenPage.RightFooter.Text = ""
.FirstPage.LeftHeader.Text = ""
.FirstPage.CenterHeader.Text = ""
.FirstPage.RightHeader.Text = ""
.FirstPage.LeftFooter.Text = ""
.FirstPage.CenterFooter.Text = ""
.FirstPage.RightFooter.Text = ""
End With
End Sub
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
alfreedo
HV vaatleja
liitunud: 20.06.2010
|
25.02.2015 19:10:26
|
|
|
Esmapilgul pakuks variandi:
Kas sul muutujate deklareerimine on tehtud kohustuslikuks s.t. enne koodi vaja määrang: Option Explicit
Kui selle sisestusel annab veateate:
Compile error:
Variable not defined.
Siis pakun, et Excel ei suuda kasutajaformi nimega "ClaimsForm" leida.
Võib olla ka, et eksin kuna 2013 ise veel ei kasuta.(Esialgu ei meeldinud seal miski.)
Kas neis arvuteis, kus annab veateate on ka Excel 2013?
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Skyrim
HV vaatleja
liitunud: 28.01.2015
|
25.02.2015 19:49:47
|
|
|
Jah, kõigis on kasutusel 2013 versioon.
Option Explicit, kuidas see täpsemalt käib?
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
alfreedo
HV vaatleja
liitunud: 20.06.2010
|
25.02.2015 20:00:11
|
|
|
'Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Selle lause ette sisestad sõnad: Option Explicit
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Skyrim
HV vaatleja
liitunud: 28.01.2015
|
25.02.2015 23:21:18
|
|
|
Ei miskit, sama viga.
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
alfreedo
HV vaatleja
liitunud: 20.06.2010
|
26.02.2015 20:22:06
|
|
|
Kas samas sõnastuses: Run-time error ´424´: Object required
Võiksid PS-i panna vigase faili.
Saadetud faili "UserForm_Initialize" koodis on sul pandud:
Bx1.Value = Date
Bx2.Value = Date
Bx3.Value = Date
,kuid neid textboxe minule saadetud faili kasutajaformis füüsiliselt pole?
Siit ka veateade: Run-time error ´424´: Object required
Textboxid mis sisaldavad teksti (kuupäev) ära kasuta .Value
vaid Bx1 = Date
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Skyrim
HV vaatleja
liitunud: 28.01.2015
|
|
Kommentaarid: 7 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
7 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
|
|
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.
|