Bouton modifier non actif VBA Excel

Bonjour à tous,

J'ai un petit problème avec mon bouton validation modif pour modifier lié à deux TextBox... Lorsque je clique sur mon bouton il n'y a aucune modification qui s'effectue sur ma feuille et ça me donne aucune erreur ....

Private Sub b_valid_Click()
Enreg = Me.b_valid
  For C = 1 To NbCol
   If Not Range(NomTableau).Item(Enreg, C).HasFormula Then
     Tmp = Me("textbox" & C)
     If IsNumeric(Replace(Tmp, ".", ",")) And InStr(Tmp, " ") = 0 Then
        Tmp = Replace(Tmp, ".", ",")
        Range(NomTableau).Item(Enreg, C) = CDbl(Tmp)
     Else
         If IsDate(Tmp) Then
           Range(NomTableau).Item(Enreg, C) = CDate(Tmp)
         Else
           Range(NomTableau).Item(Enreg, C) = Tmp
         End If
     End If
    Else
     Range(NomTableau).Item(Enreg - 1, C).Copy
     Range(NomTableau).Item(Enreg, C).PasteSpecial Paste:=xlPasteFormats
    End If
  Next C
  UserForm_Initialize
  raz

End Sub
hello me

Bonjour,

sans fichier, c'est impossible de trouver l'erreur,

Le fichier pèse vraiment pour l'envoyer d'ici ...

Mais voici un lien https://www.cjoint.com/c/IFAoBUIqcUN

re,

est ce que tu peux faire une copie de ton fichier avec moins de données ?

'affiche de la feuille dans la listebox

Private Sub UserForm_Initialize()

 Set f = Sheets("Synthese")
   colVisu = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 12, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28) ' colonnes à visualiser
     'EnTeteListBox
   Me.Frame3.ScrollWidth = Me.ListBox1.Width + 3
   Me.Frame3.ScrollBars = 3
   Set Rng = f.Range("A1:AI" & f.[A65000].End(xlUp).Row)
   Tbltmp = Rng.Value
   BD = Rng.Value
   Ncol = UBound(colVisu) + 1
   '-- en têtes de colonne ListBox
   X = 28
   Y = Me.ListBox1.Top - 27
   For Each k In colVisu
     Set Lab = Me.Controls.Add("Forms.Label.1")
     Lab.Caption = f.Cells(1, k)
     Lab.Top = Y
     Lab.Left = X
     X = X + f.Columns(k).Width * 1.2
     temp = temp & f.Columns(k).Width * 1.2 & ";"
   Next

   temp = Left(temp, Len(temp) - 1)
   Me.ListBox1.ColumnCount = UBound(colVisu) + 1
   Me.ListBox1.ColumnWidths = temp
   '--
   Tbltmp = Rng.Value
   For i = LBound(BD) To UBound(BD)
     ReDim Preserve choix(1 To i)
     For Each k In colVisu
       choix(i) = choix(i) & BD(i, k) & " * "
     Next k
   Next i
   '--- valeurs initiales dans ListBox
   Dim Tbl(): ReDim Tbl(1 To UBound(BD), 1 To Ncol)
   For i = 1 To UBound(BD)
      C = 0
      For Each k In colVisu
        C = C + 1: Tbl(i, C) = BD(i, k)
      Next k
   Next i
   'TriMultiCol Tbl, LBound(Tbl), UBound(Tbl), 1
   Me.ListBox1.List = Tbl
   Me.Label1.Caption = Me.ListBox1.ListCount & " Ligne(s)"
End Sub
'textbox utilisé pour la barre de recherche

Private Sub TextBox1_Change()
Me.ListBox1.RowSource = ""

  If Me.TextBox1 <> "" Then
     mots = Split(Trim(Me.TextBox1), " ")
     Tbl = choix
     For i = LBound(mots) To UBound(mots)
        Tbl = Filter(Tbl, mots(i), True, vbTextCompare)
     Next i
     If UBound(Tbl) > -1 Then
        Dim b(): ReDim b(1 To UBound(Tbl) + 1, 1 To Ncol)
        For i = LBound(Tbl) To UBound(Tbl)
          a = Split(Tbl(i), "*")
          For k = 1 To Ncol: b(i + 1, k) = a(k - 1): Next k
        Next i
        Me.ListBox1.List = b
        Me.Label1.Caption = UBound(Tbl) + 1 & " Ligne(s)"
     End If
  Else
     UserForm_Initialize
  End If
End Sub
'affiche des éléments dans les Textbox qui sont lié à la listebox en double cliquant sur une ligne dans la listebox

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim ligne As Integer
On Error Resume Next
ligne = Me.ListBox1.ListIndex
Me.Qté_cdée = Me.ListBox1.Column(8, ligne)
Me.a_livrer = Me.ListBox1.Column(9, ligne)
Me.Délai = Me.ListBox1.Column(10, ligne)
Me.Besoin = Me.ListBox1.Column(14, ligne)
Me.Sto_phy = Me.ListBox1.Column(15, ligne)
Me.Sto_cde = Me.ListBox1.Column(16, ligne)
Me.Sto_rés = Me.ListBox1.Column(17, ligne)
Me.Sto_théo = Me.ListBox1.Column(18, ligne)
Me.Livr = Me.ListBox1.Column(19, ligne)
Me.Livr = CDate(Me.Livr)
Me.Qte_plan = Me.ListBox1.Column(21, ligne)
Me.Qte_réal = Me.ListBox1.Column(22, ligne)
Me.Ope = Me.ListBox1.Column(23, ligne)
Me.Commentaire = Me.ListBox1.Column(12, ligne)
Me.Rowid = Me.ListBox1.Column(-1, ligne)
Me.of = Me.ListBox1.Column(20, ligne)
Me.heure = Me.ListBox1.Column(0, ligne)
End Sub
Sub raz()
    For k = 1 To NbCol
      Me("textBox" & k) = ""
    Next k
    'Me.MultiPage1.Value = 0
    Me.TextBox1.SetFocus
End Sub
'Le bouton pour modifier 
Private Sub b_valid_Click()

  Enreg = Me.b_valid
  For C = 1 To NbCol
   If Not Range(NomTableau).Item(Enreg, C).HasFormula Then
     Tmp = Me("textbox" & C)
     If IsNumeric(Replace(Tmp, ".", ",")) And InStr(Tmp, " ") = 0 Then
        Tmp = Replace(Tmp, ".", ",")
        Range(NomTableau).Item(Enreg, C) = CDbl(Tmp)
     Else
         If IsDate(Tmp) Then
           Range(NomTableau).Item(Enreg, C) = CDate(Tmp)
         Else
           Range(NomTableau).Item(Enreg, C) = Tmp
         End If
     End If
    Else
     Range(NomTableau).Item(Enreg - 1, C).Copy
     Range(NomTableau).Item(Enreg, C).PasteSpecial Paste:=xlPasteFormats
    End If
  Next C
  UserForm_Initialize
  raz

End Sub
Rechercher des sujets similaires à "bouton modifier actif vba"