问题描述
我有这个脚本:
SELECT OITM.ItemCode,OITM.ItemName,OITM.OnHand,DATEDIFF(day,MAX(RDR1.DocDate),GETDATE())
FROM OITM
JOIN RDR1
ON OITM.ItemCode = RDR1.ItemCode
WHERE OITM .OnHand > 0
GROUP BY OITM.ItemCode,OITM.OnHand;
当我链接到SAP B1到Excel时,我希望这个新的“ days_since_last_order”成为列的名称。但是目前它只是显示为“ column1”。 "column1 issue example"
在该脚本的什么时候可以将其定义为“自上次订购以来的天数”?
我尝试为其编写一个宏,但是它似乎在第一次刷新时有效,但在之后却没有,为什么会这样?
Sub New_SAP_Query()
'
' New_SAP_Query Macro
'
'
ActiveWorkbook.RefreshAll
With Range("F5")
.Value = Now()
.NumberFormat = "dd/mm/yyyy"
End With
Range("B7").Select
Columns("B:B").ColumnWidth = 83
Range("F7:F1048576").Select
Range("F1").Activate
Selection.ClearContents
Range("F7").Select
Range("C6").Select
ActiveCell.FormulaR1C1 = "Days since last order"
Range("C7").Select
Columns("C:C").EntireColumn.AutoFit
End Sub
这是工作表Macro issue。
我的背景是会计而不是计算机科学供参考。我试图使这一点尽可能清楚,希望它是一个简单的解决方法。
任何帮助将不胜感激。
解决方法
您可以用作关键字
SELECT OITM.ItemCode,OITM.ItemName,OITM.OnHand,DATEDIFF(day,MAX(RDR1.DocDate),GETDATE()) as new_column_name FROM OITM JOIN RDR1 ON OITM.ItemCode =RDR1.ItemCode WHERE OITM.OnHand > 0 GROUP BY OITM.ItemCode,OITM.OnHand;