Advertisement
ski900

VBA Excel Combobox Database (with errors)

May 26th, 2016
434
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Option Explicit
  2.  
  3. Dim blnNew As Boolean
  4. Dim TRows, i As Long
  5. Dim search As String
  6.  
  7.  
  8.  
  9. Private Sub cmdClose_Click()
  10.     If cmdClose.Caption = "Close" Then
  11.         Unload Me
  12.     Else
  13.         cmdClose.Caption = "Close"
  14.         cmdNew.Enabled = True
  15.         cmdDelete.Enabled = True
  16.        
  17.     End If
  18. End Sub
  19.  
  20. Private Sub cmdDelete_Click()
  21.     TRows = Worksheets("Data").Range("A1").CurrentRegion.Rows.Count
  22.     Dim strDel
  23.     strDel = MsgBox("Confirm Delete", vbYesNo, "Delete")
  24.     If strDel = vbYes Then
  25.         For i = 2 To TRows
  26.             If Trim(Worksheets("Data").Cells(i, 1).Value) = Trim(ComboBox1.Text) Then
  27.                
  28.               '  Sheet1.Range(i & ":" & i).Delete
  29.                Worksheets("Data").Range(i & ":" & i).Delete
  30.                
  31.                 schoolName.Text = ""
  32.                 cityName.Text = ""
  33.                 countyName.Text = ""
  34.                 txtTel.Text = ""
  35.                 websiteName.Text = ""
  36.                 mathDept.Text = ""
  37.                 txtNotes.Text = ""
  38.                 Call prComboBoxFill
  39.                
  40.                 Exit For
  41.             End If
  42.         Next i
  43.         If Trim(ComboBox1.Text) = "" Then
  44.             cmdSave.Enabled = False
  45.             cmdDelete.Enabled = False
  46.         Else
  47.             cmdSave.Enabled = True
  48.             cmdDelete.Enabled = True
  49.         End If
  50.         cmdNew.Enabled = True
  51.         cmdClose.Caption = "Close"
  52.        
  53.        
  54.     End If
  55.    
  56.     If Trim(schoolName.Text) = "" Then
  57.         cmdSave.Enabled = False
  58.         cmdDelete.Enabled = False
  59.         Frame2.Enabled = False
  60.        
  61.     Else
  62.         cmdSave.Enabled = True
  63.         cmdDelete.Enabled = True
  64.         Frame2.Enabled = True
  65.        
  66.     End If
  67. End Sub
  68.  
  69. Private Sub cmdNew_Click()
  70.     blnNew = True
  71.     schoolName.Text = ""
  72.     cityName.Text = ""
  73.     countyName.Text = ""
  74.     txtTel.Text = ""
  75.     websiteName.Text = ""
  76.     mathDept.Text = ""
  77.     txtNotes.Text = ""
  78.    
  79.     cmdClose.Caption = "Cancel"
  80.     cmdNew.Enabled = False
  81.     cmdDelete.Enabled = False
  82.     cmdSave.Enabled = True
  83.     Frame2.Enabled = True
  84. End Sub
  85.  
  86. Private Sub cmdSave_Click()
  87.     If Trim(schoolName.Text) = "" Then
  88.         MsgBox "Enter School Name.", vbCritical, "Save"
  89.         schoolName.SetFocus
  90.         Exit Sub
  91.     End If
  92.     Call prSave
  93.     cmdClose.Caption = "Close"
  94.     cmdNew.Enabled = True
  95.     ThisWorkbook.Save
  96.    
  97. End Sub
  98. Private Sub prSave()
  99.      ''''' Save the Data
  100.    If blnNew = True Then
  101.         TRows = Worksheets("Data").Range("A1").CurrentRegion.Rows.Count
  102.         With Worksheets("Data").Range("A1")
  103.             .Offset(TRows, 0).Value = schoolName.Text
  104.             .Offset(TRows, 1).Value = cityName.Text
  105.             .Offset(TRows, 2).Value = countyName.Text
  106.             .Offset(TRows, 3).Value = txtTel.Text
  107.             .Offset(TRows, 4).Value = websiteName.Text
  108.             .Offset(TRows, 5).Value = mathDept.Text
  109.             .Offset(TRows, 6).Value = txtNotes.Text
  110.          End With
  111.             schoolName.Text = ""
  112.             cityName.Text = ""
  113.             countyName.Text = ""
  114.             txtTel.Text = ""
  115.             websiteName.Text = ""
  116.             mathDept.Text = ""
  117.             txtNotes.Text = ""
  118.             Call prComboBoxFill
  119.      Else
  120.         For i = 2 To TRows
  121.             If Trim(Worksheets("Data").Cells(i, 1).Value) = Trim(ComboBox1.Text) Then
  122.                 Worksheets("Data").Cells(i, 1).Value = schoolName.Text
  123.                 Worksheets("Data").Cells(i, 2).Value = cityName.Text
  124.                 Worksheets("Data").Cells(i, 3).Value = countyName.Text
  125.                 Worksheets("Data").Cells(i, 4).Value = txtTel.Text
  126.                 Worksheets("Data").Cells(i, 5).Value = websiteName.Text
  127.                 Worksheets("Data").Cells(i, 6).Value = mathDept.Text
  128.                 Worksheets("Data").Cells(i, 7).Value = txtNotes.Text
  129.                 schoolName.Text = ""
  130.                 cityName.Text = ""
  131.                 countyName.Text = ""
  132.                 txtTel.Text = ""
  133.                 websiteName.Text = ""
  134.                 mathDept.Text = ""
  135.                 txtNotes.Text = ""
  136.                 Exit For
  137.             End If
  138.         Next i
  139.       End If
  140.     blnNew = False
  141.    
  142.     If Trim(schoolName.Text) = "" Then
  143.         cmdSave.Enabled = False
  144.         cmdDelete.Enabled = False
  145.         Frame2.Enabled = False
  146.     Else
  147.         cmdSave.Enabled = True
  148.         cmdDelete.Enabled = True
  149.         Frame2.Enabled = True
  150.     End If
  151. End Sub
  152.  
  153. Private Sub cmdSearch_Click()
  154.     blnNew = False
  155.     schoolName.Text = ""
  156.     cityName.Text = ""
  157.     countyName.Text = ""
  158.     txtTel.Text = ""
  159.     websiteName.Text = ""
  160.     mathDept.Text = ""
  161.     txtNotes.Text = ""
  162.    
  163.     search = Worksheets("Data").Range("A1").CurrentRegion.Rows.Count
  164.     For i = 2 To TRows
  165.         If Val(Trim(Worksheets("Data").Cells(i, 1).Value)) = Val(Trim(ComboBox1.Text)) Then
  166.                
  167.             schoolName.Text = Worksheets("Data").Cells(i, 1).Value
  168.             cityName.Text = Worksheets("Data").Cells(i, 2).Value
  169.             countyName.Text = Worksheets("Data").Cells(i, 3).Value
  170.             txtTel.Text = Worksheets("Data").Cells(i, 4).Value
  171.             websiteName.Text = Worksheets("Data").Cells(i, 5).Value
  172.             mathDept.Text = Worksheets("Data").Cells(i, 6).Value
  173.             txtNotes.Text = Worksheets("Data").Cells(i, 7).Value
  174.            
  175.             Exit For
  176.         End If
  177.     Next i
  178.     If Trim(schoolName.Text) = "" Then
  179.         cmdSave.Enabled = False
  180.         cmdDelete.Enabled = False
  181.         Frame2.Enabled = False
  182.     Else
  183.         cmdSave.Enabled = True
  184.         cmdDelete.Enabled = True
  185.         Frame2.Enabled = True
  186.     End If
  187. End Sub
  188.  
  189.  
  190. Private Sub UserForm_Click()
  191.  
  192. End Sub
  193. Private Sub prComboBoxFill()
  194.     TRows = Worksheets("Data").Range("A1").CurrentRegion.Rows.Count
  195.     ComboBox1.Clear
  196.     For i = 2 To TRows
  197.         ComboBox1.AddItem Worksheets("Data").Cells(i, 1).Value
  198.            
  199.     Next i
  200. End Sub
  201.  
  202. Private Sub UserForm_Initialize()
  203.     Call prComboBoxFill
  204.     cmdSave.Enabled = False
  205.     cmdDelete.Enabled = False
  206.     Frame2.Enabled = False
  207. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement