2015-12-01 69 views
0

第一篇文章。我有一個工作簿,它是客戶名稱的列表,每個名稱都是指向其在SharePoint站點上的個人工作簿的鏈接。第二列是一個 「最後的接觸」 列,其具有式 = MAX(」 https://example.com/folder/Folder/Customer庫/地區/ T/[Customername.xlsm]注意$ B $ 2:$ B $ 120)VBA:插入最大公式,關閉工作簿的引用列

我能夠通過打開鏈接的工作簿,選擇我的客戶列表中的單元格,手動輸入「= max(」,然後在鏈接的工作簿上突出顯示我想要的範圍。將客戶添加到列表中的過程我有一個用戶表單,您可以在文本框1中鍵入客戶名稱,並在文本框2中輸入sharepoint wb的地址。提交按鈕具有以下代碼,該代碼將客戶名稱與鏈接在列A的目標單元格中​​的sharepoint book。這工作正常。我也在嘗試t o將MAX公式插入B列的相鄰單元格中。我可以將公式導入正確的位置。但是,我遇到了Web引用的問題,因爲它是textbox2的價值。當我使用textbox2.value它會給出錯誤。很抱歉的書,這裏是沒有網絡書籍參考代碼:

Private Sub CommandButton1_Click() 
Sheets("Dashboard").Select 
NextFree = Range("A2:A" & Rows.Count).Cells.SpecialCells(xlCellTypeBlanks).Row 
Range("A" & NextFree).Select 
ActiveCell.Hyperlinks.Add Anchor:=ActiveCell.Offset(0, 0), Address:=TextBox2.Value, TextToDisplay:=TextBox1.Value 
Range("B" & NextFree).Formula = "=MAX(Notes'!$B$2:$B$120)" 
UserForm1.Hide 

Unload Me 

End Sub 

之間= MAX(&注......我知道,需要有TextBox2中值,但我不明白的語法我假設「註釋」是範圍在sharepoint wb上的表單,範圍對於所有添加到客戶列表的範圍是相同的。獲取錯誤類型不匹配

Private Sub CommandButton1_Click() 
Sheets("Dashboard").Select 
Dim SPbook As Workbook 
Dim SPsheet As Worksheet 
Dim SPrange As Range 
Set SPbook = Workbooks.Open(TextBox2.Value) 
Set SPsheet = Sheets("Notes") 
Set SPrange = SPsheet.Range("B1:B120") 
NextFree = Range("A2:A" & Rows.Count).Cells.SpecialCells(xlCellTypeBlanks).Row 
Range("A" & NextFree).Select 
ActiveCell.Hyperlinks.Add Anchor:=ActiveCell.Offset(0, 0), Address:=TextBox2.Value, TextToDisplay:=TextBox1.Value 
Range("B" & NextFree).Formula = "=MAX([" & SPrange & "])" 
UserForm1.Hide 

Unload Me 

End Sub 
+0

你試過'me.textbox2.value'?要排除故障,您可以設置一個臨時變量:'aaa = me.textbox2.value',然後'Range(「B」&NextFree).Formula = aaa'。 –

+0

我根據你的建議做了,我得到的下標超出範圍。 – Dnel

回答

0

您應該引用textbox2.Value如下:

Range("B" & NextFree).Formula = "=MAX(" & textbox2.Value $ "Notes'!$B$2:$B$120)" 

公式字段需要一個字符串,所以你只需要建立字符串串聯你的價值觀。

如果textbox2.Value給你一個錯誤,這不會解決這個問題。請包含此錯誤的更多詳細信息,包括完整的錯誤消息以及從窗體傳遞給子例程的值。問候,

+0

感謝您的回覆。我根據您的評論調整了代碼,並收到「運行時錯誤'1004':應用程序定義或對象定義的錯誤,調試突出顯示了我們剛纔調整的行 – Dnel

+0

它傳遞客戶名稱和鏈接到頁面很好,但是應該在列B中的公式是空白的 – Dnel

+0

如果你把鼠標懸停在textbox2.Value上,它會進入調試狀態嗎?它能顯示一個值嗎?你可以嘗試將文件地址硬編碼到腳本中,以查看你得到的結果? – nbayly

相關問題