Erreur 1004

Fermé
someone51 Messages postés 1 Date d'inscription samedi 15 mai 2010 Statut Membre Dernière intervention 15 mai 2010 - 15 mai 2010 à 20:43
Bonsoir,

J'ai un problème avec un userform que j'ai créé pour un dossier scolaire. Je voudrais pouvoir permettre de créer un portefeuille dont on remplis le nom et dont on choisit 5 actions qui appartiennent à un indice disponible sur une feuille. Le programme devrait créer une nouvelle feuille, la nommer d'après le nom choisit, la mettre en forme selon un portefeuille déjà existant et remplir les différentes colonnes en allant chercher sur la feuille de l'indice les valeurs adéquates. Ca me met quasi automatiquement une erreur 1004 ou alors ça ne me met pas les bonnes valeurs correspondantes aux titres choisis...

Ci dessous le code

Merci d'avance pour votre aide :-)

Private Sub CommandButton1_Click()
'Obliger à remplir un nom et à choisir cinq valeurs
If ComboBox1.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
If ComboBox2.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
If ComboBox3.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
If ComboBox4.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
If ComboBox5.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
If TextBox1.Value = "" Then
variable = MsgBox("Vous devez séléctionner cinq actions et un nom pour votre nouveau portefeuille", 64, "Attention !")
Else
'Construction du portefeuille
Sheets("Portefeuille Al Capone").Select
Range("A1:F7").Select
Selection.Copy
Sheets.Add
Range("A1:F7").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False

Range("A1").Select
ActiveCell.FormulaR1C1 = "Code"
Range("B1").Select
ActiveCell.FormulaR1C1 = "Nom de la société"
Range("C1").Select
ActiveCell.FormulaR1C1 = "Industrie du péché"
Range("D1").Select
ActiveCell.FormulaR1C1 = "Dernier cours"
Range("E1").Select
ActiveCell.FormulaR1C1 = "Clôture précédente"
Range("F1").Select
ActiveCell.FormulaR1C1 = "Variation sur un an en % "

ActiveSheet.Range("B7") = TextBox1.Value
ActiveSheet.Select
ActiveSheet.Name = Range("B7").Value

ActiveSheet.Range("B2") = ComboBox1.Value
ActiveSheet.Range("B3") = ComboBox2.Value
ActiveSheet.Range("B4") = ComboBox3.Value
ActiveSheet.Range("B5") = ComboBox4.Value
ActiveSheet.Range("B6") = ComboBox5.Value

Set base = Worksheets("Sin Index").Range("A1:Z100")
ActiveSheet.Range("A2") = Application.WorksheetFunction.VLookup(ComboBox1.Value, base, "1")
ActiveSheet.Range("A3") = Application.WorksheetFunction.VLookup(ComboBox2.Value, base, "1")
ActiveSheet.Range("A4") = Application.WorksheetFunction.VLookup(ComboBox3.Value, base, "1")
ActiveSheet.Range("A5") = Application.WorksheetFunction.VLookup(ComboBox4.Value, base, "1")
ActiveSheet.Range("A6") = Application.WorksheetFunction.VLookup(ComboBox5.Value, base, "1")
ActiveSheet.Range("C2") = Application.WorksheetFunction.VLookup(ComboBox1.Value, base, "3")
ActiveSheet.Range("C3") = Application.WorksheetFunction.VLookup(ComboBox2.Value, base, "3")
ActiveSheet.Range("C4") = Application.WorksheetFunction.VLookup(ComboBox3.Value, base, "3")
ActiveSheet.Range("C5") = Application.WorksheetFunction.VLookup(ComboBox4.Value, base, "3")
ActiveSheet.Range("C6") = Application.WorksheetFunction.VLookup(ComboBox5.Value, base, "3")
ActiveSheet.Range("D2") = Application.WorksheetFunction.VLookup(ComboBox1.Value, base, "4")
ActiveSheet.Range("D3") = Application.WorksheetFunction.VLookup(ComboBox2.Value, base, "4")
ActiveSheet.Range("D4") = Application.WorksheetFunction.VLookup(ComboBox3.Value, base, "4")
ActiveSheet.Range("D5") = Application.WorksheetFunction.VLookup(ComboBox4.Value, base, "4")
ActiveSheet.Range("D6") = Application.WorksheetFunction.VLookup(ComboBox5.Value, base, "4")
ActiveSheet.Range("E2") = Application.WorksheetFunction.VLookup(ComboBox1.Value, base, "5")
ActiveSheet.Range("E3") = Application.WorksheetFunction.VLookup(ComboBox2.Value, base, "5")
ActiveSheet.Range("E4") = Application.WorksheetFunction.VLookup(ComboBox3.Value, base, "5")
ActiveSheet.Range("E5") = Application.WorksheetFunction.VLookup(ComboBox4.Value, base, "5")
ActiveSheet.Range("E6") = Application.WorksheetFunction.VLookup(ComboBox5.Value, base, "5")
ActiveSheet.Range("F2") = Application.WorksheetFunction.VLookup(ComboBox1.Value, base, "6")
ActiveSheet.Range("F3") = Application.WorksheetFunction.VLookup(ComboBox2.Value, base, "6")
ActiveSheet.Range("F4") = Application.WorksheetFunction.VLookup(ComboBox3.Value, base, "6")
ActiveSheet.Range("F5") = Application.WorksheetFunction.VLookup(ComboBox4.Value, base, "6")
ActiveSheet.Range("F6") = Application.WorksheetFunction.VLookup(ComboBox5.Value, base, "6")

'Calcul de la moyenne des variations des différentes valeurs

Range("F7").Select
ActiveCell.FormulaR1C1 = "=AVERAGE(R[-5]C:R[-1]C)"
'Mise en forme des colonnes
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Columns("C:C").EntireColumn.AutoFit
Columns("D:D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
UserForm5.Hide
End If
End If
End If
End If
End If
End If
End Sub