got this code from codebank i got the create_empty_zip working excellent but when i get to zip a folder or file i get error on

vb Code:
  1. Private Sub Zip_Activity(Action As String, sFileSource As String, sFileDest As String)
  2.  
  3.     '//copies contents of folder to zip file
  4.     Dim ShellClass  As Shell32.Shell    'I GET ERROR HERE it doesnt exist in my list
  5.     Dim Filesource  As Shell32.Folder 'error
  6.     Dim Filedest    As Shell32.Folder  'error
  7.     Dim Folderitems As Shell32.Folderitems 'errors
  8.    
  9.     If sFileSource = "" Or sFileDest = "" Then GoTo EH
  10.                
  11.     Select Case UCase$(Action)
  12.        
  13.         Case "ZIPFILE"
  14.            
  15.             If Right$(UCase$(sFileDest), 4) <> ".ZIP" Then
  16.                 sFileDest = sFileDest & ".ZIP"
  17.             End If
  18.            
  19.             If Not Create_Empty_Zip(sFileDest) Then
  20.                 GoTo EH
  21.             End If
  22.        
  23.             Set ShellClass = New Shell32.Shell
  24.             Set Filedest = ShellClass.NameSpace(sFileDest)
  25.            
  26.             Call Filedest.CopyHere(sFileSource, 20)
  27.                
  28.         Case "ZIPFOLDER"
  29.            
  30.             If Right$(UCase$(sFileDest), 4) <> ".ZIP" Then
  31.                 sFileDest = sFileDest & ".ZIP"
  32.             End If
  33.            
  34.             If Not Create_Empty_Zip(sFileDest) Then
  35.                 GoTo EH
  36.             End If
  37.        
  38.             '//Copy a folder and its contents into the newly created zip file
  39.             Set ShellClass = New Shell32.Shell
  40.             Set Filesource = ShellClass.NameSpace(sFileSource)
  41.             Set Filedest = ShellClass.NameSpace(sFileDest)
  42.             Set Folderitems = Filesource.Items
  43.            
  44.             Call Filedest.CopyHere(Folderitems, 20)
  45.        
  46.         Case "UNZIP"
  47.            
  48.             If Right$(UCase$(sFileSource), 4) <> ".ZIP" Then
  49.                 sFileSource = sFileSource & ".ZIP"
  50.             End If
  51.            
  52.             Set ShellClass = New Shell32.Shell
  53.             Set Filesource = ShellClass.NameSpace(sFileSource)      '//should be zip file
  54.             Set Filedest = ShellClass.NameSpace(sFileDest)          '//should be directory
  55.             Set Folderitems = Filesource.Items                      '//copy zipped items to directory
  56.            
  57.             Call Filedest.CopyHere(Folderitems, 20)
  58.        
  59.         Case Else
  60.        
  61.     End Select
  62.            
  63.     '//Ziping a file using the Windows Shell API creates another thread where the zipping is executed.
  64.     '//This means that it is possible that this console app would end before the zipping thread
  65.     '//starts to execute which would cause the zip to never occur and you will end up with just
  66.     '//an empty zip file. So wait a second and give the zipping thread time to get started.
  67.  
  68.     Call Sleep(1000)
  69.    
  70. EH:
  71.  
  72.     If Err.Number <> 0 Then
  73.         MsgBox Err.Description, vbExclamation, "error"
  74.     End If
  75.  
  76.     Set ShellClass = Nothing
  77.     Set Filesource = Nothing
  78.     Set Filedest = Nothing
  79.     Set Folderitems = Nothing
  80.  
  81. End Sub

how come i do not have the Shell32 option to dim as?

is it normal that i do not have it or do i have to install something or i can dim it a different way? i need some advice/help

thanks in advance