Simplifier formule ?

salut a tous

voici un extrait de mon code .

pourriez vous m'aider a le simplifier ? car toutes ces lignes sont juste pour un une ligne dans ma listbox et je compte faire de même pour les 26 lignes ^^

merci d'avance

Private Sub CommandButton1_Click()

If Me.ListBox2.Value = "APP" Then
Sheets("CV AUSSEDAT").Range("M65536").End(xlUp).Offset(1, 0).Value = Me.TextBox1.Value
Sheets("CV AUSSEDAT").Range("N65536").End(xlUp).Offset(1, 0).Value = Me.TextBox2.Value
Sheets("CV AUSSEDAT").Range("O65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("P65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("Q65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("R65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("S65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("T65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("U65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("V65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("W65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("X65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("Y65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("Z65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AA65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AB65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AC65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AD65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AE65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AF65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AG65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AH65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AI65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AJ65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
Sheets("CV AUSSEDAT").Range("AK65536").End(xlUp).Offset(1, 0).Value = Sheets("DATA").Range("B1")
End If

End Sub

Bonsoir,

Vous trouverez une première proposition :

Public Lignefin As Variant
Public a, b As Variant

Sub test()

If Me.ListBox2.Value = "APP" Then

 'si le codename de la feuille est Feuil1 alors
 With Feuil1 'snon remplacer Feuil1 par Feuil2 ou autre 

Lignefin = Range("M" & Rows.Count).End(xlUp).Offset(1, 0).Row

For a = Lignefin To Lignefin
    For b = 13 To 37
    If b = 13 Then .Cells(a, b) = Me.TextBox1.Value
    If b = 14 Then .Cells(a, b) = Me.TextBox2.Value
    If b > 14 Then .Cells(a, b) = Feuil2.Range("B1") 'ici pareil le codename de la feuille Hypothèse prise Feuil2
    Next b

Next a

Else: End If

End With

End Sub

Cdt

Air_2

Bonsoir

Je suis parti du principe que toutes les colonnes sont au même niveau

Private Sub CommandButton1_Click()
Dim Lg As Long

  If Me.ListBox2.Value = "APP" Then
    With Sheets("CV AUSSEDAT")
      Lg = .Range("M" & Rows.Count).End(xlUp).Row + 1
      .Range("M" & Lg & ":N" & Lg) = Me.TextBox1.Value
      .Range("O" & Lg & ":AK" & Lg) = Sheets("DATA").Range("B1").Value
    End With
  End If
End Sub

Bonjour à vous et merci de me filer un coup de main

j'ai essayé les deux version et malheureusement aucune ne fonctionne dans mon fichier.

la première me dis " erreur de compilation else sans if "

et la deuxième : quand je clique sur mon bouton il ne se passe rien .

je continu à chercher ^^

Bonjour

Etonnant

Peux fournir un fichier représentatif de ton fichier réel

Afin de trouver ce qui ne fonctionne pas

Le peu de test fait avec un fichier test était concluant, mais je n'avais vraiment pas toutes les conditions de ton fichier

arf malheureusement je ne peut pas envoyer le fichier je bosse a l'etrangé actuellement et les ordi internet du boulot bloque l'upload de fichier avec macro, alors que je peut les utiliser sur les autre ordi..... no comment

est ce que les code complet pourrai aider ? ou des print ecran du tableur ?

merci

Bonjour

Cela ne va pas être évident

Un peu de boulot

Tu exportes les modules, userfom (tu obtiens des fichiers texte (extension Bas et Frm ), ensuite tu vires routes les macros de la copie de ton fichier, tu anonymises ta copie

Tu zippes l'ensemble (fichiers texte et ton fichier excel) et tu postes sur le forum

A titre d'info

Fichier recréé pour les tests

oki pas de souci merci encore !

j'ai essayé de zipper un dossier avec les fichier extrait et le fichier excel sans les macro mais le site me bloque encore . faut il convertir les fichiers frm dans un autre format ? je pense que c'est eux qui bloque car un excel vierge ca passe...

Bonsoir

Un fichier zippé ne passe pas ?

Sinon les fichiers frm sont des fichiers texte mais associés à ces fichiers il y a des fichiers frx (binaires)

exemple Userform1.frm et Userform1.frx

Donc je n'ai pas de solution

Bizarre un fichier excel c'est du binaire et un fichier avec macros zippé ne passe pas

Salut !!!

ça y est ça marche !!!

cela ne fonctionnait pas car les quatres première ligne de mon tableau étaient fusionnées ...

d'ailleurs que faudrait il que je change pour que l’incrémentation commence a la ligne 4 ?

merci encore

Bonjour

pti_twin a écrit :

que faudrait il que je change pour que l’incrémentation commence a la ligne 4

deux solutions:

1)tester si Lg <4 alors Lg=4

2)Ecrire quelque chose en cellule M3

oki merci encore a bientôt

Rechercher des sujets similaires à "simplifier formule"