2016-04-05 25 views
0

VBA ile olan yeteneklerim, başkalarının sıkı çalışmasını kopyalamaya ve ihtiyacım olanı yapmak için tinker'la kopyalamaya çok sınırlıdır. Farklı sitelere bakıyorum ve bir dizi seçenekle oynuyorum. Bir ağ klasöründe arama yapmam gerekiyor - klasördeki tüm dosyaları A sütununda saklanan dosya numarasına eşleştirin ve bu dosyalara bir köprü oluşturun ve A sütununda dosya adını saklayın. Neye ihtiyacım olduğunu ve ne olduğunu bulabilirim Yanıtlarımı oluşturmak için çevrimiçi olanları karıştırabildim. Yayımlanan sayfa, varolan yeni veri eklendiğinde haftalık olarak eklenir, böylece A sütunundaki dosya adlarının sayısı değişkendir.Çalışma zamanı hatası 9: Abonelik aralık dışı

Herhangi bir dosya türü/uzantısı için bir değişken olması da mümkün olabilir mi, yoksa dosya türü örneğin bir tür olmalıdır. msg veya pdf?

Aşağıdaki kod sadece bir başarısız çaba

Sub Hyperlinks() 
' 
    Const sFILENAME_CELLS As String = "A2:A3200" 

    Const sLINKS_COLUMN  As String = "A" 
    Const sFOLDER_NAME  As String = "C:\Users\*****\Desktop\Benny PDFs" 
    Const sSHEET_NAME  As String = "Projects" 

    Dim rFilenameCells  As Range 
    Dim rFilenameCell  As Range 
    Dim sFilename   As String 
    Dim sFullName   As String 
    Dim wksTarget   As Worksheet 
    Dim iRowNo    As Integer 

    Set wksTarget = ThisWorkbook.Sheets(sSHEET_NAME) 

    Set rFilenameCells = wksTarget.Range(sFILENAME_CELLS) 

    For Each rFilenameCell In rFilenameCells.Cells 

     sFilename = rFilenameCell.value 

     If sFilename <> vbNullString Then 

      sFullName = sFOLDER_NAME & "\" & sFilename 

'   Check that the file exists in the specified folder 
      If Dir$(sFullName) = sFilename Then 

       iRowNo = rFilenameCell.row 

       With wksTarget 
        .Hyperlinks.Add Anchor:=.Range(sLINKS_COLUMN & iRowNo), _ 
            Address:=sFullName, _ 
            TextToDisplay:=sFilename 
       End With 

      End If 

     End If 

    Next rFilenameCell 

End Sub 
+0

hangi satırda hata 9 alıyorsunuz? – Rosetta

+0

Muhtemelen çalışma kitabınızda 'Projeler 'sayfanız yok. –

cevap

0

alınıyor çalışma zamanı hatası 9: nedeni muhtemelen içinde Projects formu olmayan bir aralıkta

üzerinden simge senin çalışma kitabı. Çünkü A2:A3200 dosya adı dosyasına köprü ile değiştirilecektir böyle, o zaman başka bir şey A

Const sLINKS_COLUMN  As String = "A" 

: Ayrıca bu satırı değiştirin.

İlgili konular