@sinkfaze Here you go... Its not Working.
Code: Select all
#SingleInstance, Force
#NoEnv
ListLines Off
Process, Priority,%PID% , H
fileselectfile, path,,%A_ScriptDir%,Choose File to Generate your ChCut,(*.xls; *.xlsx)
if ERRORLEVEL
{
exitapp
}
else
Gui +LastFound +OwnDialogs +AlwaysOnTop
InputBox, FileNaming,Enter Output FileName!,,,200,100,880,540
cc:=2
SetBatchLines, -1
SetConTrolDelay, 0
;oWorkbook := ComObjGet(path)
xl:= ComObjCreate("Excel.Application")
oWorkbook :=xl.Workbooks.Open(path)
oWorkbook.Application.Windows(oWorkbook.Name).Visible := True
oWorkbook.Application.DisplayAlerts := 0
lstrw := oWorkbook.ActiveSheet.UsedRange.rows.count
oWorkbook.Application.ScreenUpdating:=False
xlDown := -4121
xlPasteAll := -4104
xlPasteSpecialOperationMultiply := 4
oWorkbook.ActiveSheet.Range("L1").Value := 1
xlApp := ComObjActive("Excel.Application")
xlApp.Range("L1").Copy
rngD2 := xlApp.Range("G2:H2")
rng := xlApp.Range(rngD2, rngD2.End(xlDown))
rng.PasteSpecial(xlPasteAll, xlPasteSpecialOperationMultiply)
xlApp.ActiveSheet.Range("L1").Delete
neg1 = =IF($K2=$K1,L1,A2)
neg2 = =IF($K2=$K1,M1,B2)
neg3 = =IF($K2=$K3,N3,C2)
neg4 = =IF($K2=$K3,O3,D2)
neg8 = =ROUND(SQRT((L2-N2)^2+(M2-O2)^2),4)
neg9 = =ROUND(P2/(COUNTIF(K:K,K2)),4)
neg10 = =IF(K1=K2,Q2+R1,Q2)
neg11 = =ROUND(IF((ATAN2((O2-M2),(N2-L2))*180/PI())<0,(ATAN2((O2-M2),(N2-L2))*180/PI())+360,(ATAN2((O2-M2),(N2-L2))*180/PI())),0)
lstrwq := oWorkbook.ActiveSheet.UsedRange.rows.count
oWorkbook.Activesheet.Range("L2").Value := neg1
oWorkbook.Activesheet.Range("M2").Value := neg2
oWorkbook.Activesheet.Range("N2").Value := neg3
oWorkbook.Activesheet.Range("O2").Value := neg4
oWorkbook.Activesheet.Range("P2").Value := neg8
oWorkbook.Activesheet.Range("Q2").Value := neg9
oWorkbook.Activesheet.Range("R2").Value := neg10
oWorkbook.Activesheet.Range("S2").Value := neg11
oWorkbook.Activesheet.Range("L2:S2").AutoFill(oWorkbook.Activesheet.Range("L2:S"lstrwq))
oWorkbook.Activesheet.Range("L2:S"lstrwq).Value := oWorkbook.Activesheet.Range("L2:S"lstrwq).value
oWorkbook.Activesheet.Range("L:O").Delete
oWorkbook.Activesheet.Range("M:M").Delete
oWorkbook.ActiveSheet.Columns("L:M").Insert
;###############################################yung ArcTangent ng angle
oWorkbook.ActiveSheet.Range("M:M").Value := oWorkbook.ActiveSheet.Range("P:P").Value
oWorkbook.Activesheet.Range("P:P").Delete
MainArray := oWorkbook.Activesheet.Range("A1:Z"lstrwq).Value
oWorkbook.Close(1)
oWorkBook := "", oSheet := ""
xlApp.Quit()
xl.Quit()
current:= part:= 100 / lstrw
lstrw1 := lstrw-1
Gui, Destroy
Progress, b w200,, Generating ASSAY..., ScoRm
Loop, %lstrw1%
{
result = %a_index%
result :=result+1
result1 = %a_index%
ccc:=cc-1
var1:=Floor(MainArray[cc, 11])
var1:=SubStr("0000000" var1, -6)
var2 = 62-%var1%
MainArray[cc, 12]:=var2
QSOURCE = EXPLO_LAD
HEADERArray[cc,1]:= MainArray[cc, 12]
HEADERArray[cc,2]:= MainArray[cc, 1]
HEADERArray[cc,3]:= MainArray[cc, 2]
HEADERArray[cc,4]:= MainArray[cc, 6]
HEADERArray[cc,5]:= MainArray[cc, 14]
HEADERArray[cc,6]:= MainArray[cc, 26]
HEADERArray[cc,7]:= 1900
HEADERArray[cc,8]:= QSOURCE
SURVEYArray[cc, 1]:= MainArray[cc, 12]
SURVEYArray[cc, 2]:= 0
SURVEYArray[cc, 3]:= MainArray[cc, 13]
SURVEYArray[cc, 4]:= 0
ASSAYArray[cc, 1]:= MainArray[cc, 12]
;assayFrom
If (MainArray[result, 1] = MainArray[result1, 1])
{
ASSAYArray[cc, 2]:= MainArray[result1, 3]
}
Else
{
ASSAYArray[cc, 2]:= 0
}
ASSAYArray[cc, 3]:= MainArray[cc, 15]
ASSAYArray[cc, 4]:= ASSAYArray[result, 3] - ASSAYArray[result, 2]
ASSAYArray[cc, 5]:= MainArray[cc, 9]
ASSAYArray[cc, 6]:= MainArray[cc, 10]
ASSAYArray[cc, 7]:= ROUND(MainArray[result, 5]+(MainArray[result, 6]*0.701),2)
cc:=cc+1
Progress, %current%
current +=part
}
MainArray[1, 12]:= "Hole ID"
MainArray[1, 13]:= "Count"
MainArray[1, 14]:= "Length"
HEADERArray[1, 1]:= "HOLE-ID"
HEADERArray[1, 2]:= "LOCATIONX"
HEADERArray[1, 3]:= "LOCATIONY"
HEADERArray[1, 4]:= "LOCATIONZ"
HEADERArray[1, 5]:= "LENGTH"
HEADERArray[1, 6]:= "CATEGORY"
HEADERArray[1, 7]:= "AREA"
HEADERArray[1, 8]:= "MINING_BLK"
HEADERArray[1, 9]:= "PANEL_ID"
HEADERArray[1, 10]:= "PNL_WIDTH"
HEADERArray[1, 11]:= "VEIN"
HEADERArray[1, 12]:= "ZONE"
HEADERArray[1, 13]:= "DATE"
HEADERArray[1, 14]:= "YEAR"
HEADERArray[1, 15]:= "AREA2"
HEADERArray[1, 16]:= "SOURCE"
HEADERArray[1, 17]:= "REMARKS"
HEADERArray[1, 18]:= "COMMENTS"
SURVEYArray[1, 1]:= "HoleID"
SURVEYArray[1, 2]:= "Distance"
SURVEYArray[1, 3]:= "Azimuth"
SURVEYArray[1, 4]:= "Dip"
ASSAYArray[1, 1] := "HoleID"
ASSAYArray[1, 2] := "From"
ASSAYArray[1, 3] := "To"
ASSAYArray[1, 4] := "Length"
ASSAYArray[1, 5] := "Cu"
ASSAYArray[1, 6] := "Au"
ASSAYArray[1, 7] := "CuEQ"
Progress, off
lstrw2 := HEADERArray.MaxIndex() + 1
lstrw3 := lstrw2-1
cc:=2
current:= part:= 100 / lstrw2
Progress, b w200,, Generating HEADER...,
oSheet := oWorkbook.Worksheets.Add()
oSheet.Name := "ASSAY"
oSheet := oWorkbook.Worksheets.Add()
oSheet.Name := "SURVEY"
oSheet := oWorkbook.Worksheets.Add()
oSheet.Name := "HEADER"
oWorkbook.Worksheets("HEADER").Activate
cHead := 2
loop, % HEADERArray.MaxIndex()
{
oWorkbook.Worksheets("HEADER").Range("A1:Z"cHead).Value := HEADERArray
;oWorkbook.Worksheets("HEADER").Range("A1:Z"cHead).Value := HEADERArray[cHead, 1]
cHead ++
}
cSurv := 2
loop, % SURVEYArray.MaxIndex()
{
oWorkbook.Worksheets("SURVEY").Range("A1:D"cSurv).Value := SURVEYArray
;oWorkbook.Worksheets("SURVEY").Range("A1:D"cSurv).Value := SURVEYArray[cSurv, 1]
cSurv ++
}
cAssa := 2
loop, % ASSAYArray.MaxIndex()
{
oWorkbook.Worksheets("ASSAY").Range("A1:H"cAssa).Value := ASSAYArray
;oWorkbook.Worksheets("ASSAY").Range("A1:H"cAssa).Value := ASSAYArray[cAssa, 1]
cAssa ++
}
file_path := A_Desktop "\" FileNaming ".xlsx"
oWorkbook.Application.DisplayAlerts := 1
oWorkbook.Worksheets("HEADER").SaveAs(file_path, 51)
oWorkbook.Save()
oWorkbook.Close(1)
oWorkBook := "", oSheet := ""
xlApp.Quit()
xl.Quit()
ExitApp