Creation page excel ( modele, titre, place)

prince77 -  
 prince77 -
Bonjour

voila mon problemes; je voudrai creer une page excel dans mon classeur de maniere automatique avec ces 3 attributs
un nom que l'on rentre ds une msg box
un emplacement, la derniere créée placé en dernier
et une forme étant un modele excel créé indépendament
merci d'avance pour l'attention apporté a mon égard

,Sub Formelibre1_QuandClic()

'appui sur une forme quelconque'
' Formelibre1_QuandClic Macro
' Macro enregistrée le 27/07/2009'
'
Dim premessai As String
premessai = InputBox("date creation", "creation")

'declaration des variables'
'Dim premessai As String'

'inscription de la variable manuellement'
'premessai = InputBox("date creation", "creation")'

' nomme la feuille active'
'ActiveSheet.Name = premessai'

'ca marche: Sheets.Add Type:="C:\Documents and Settings\Application Data\Microsoft\Modèles\essai prog macro .xlt" '

'ca marche: Sheets.Add after:=Sheets(Sheets.Count)'

'des que je veux appliquer ces trois parametres a mon document ca ne fonctionne pas:
Sheets.Add([after:=Sheets(Sheets.Count)], ["C:\Documents and Settings\Application Data\Microsoft\Modèles\essai prog macro.xlt"], [name=premessai]) = Sheets(Sheets.Count)

End Sub
Configuration: Windows 2000
Firefox 3.0.12

4 réponses

  1. melanie1324 Messages postés 1561 Statut Membre 156
     
    Bonjour,

    Pour copier coller une forme :
    tu sélectionnes les cellules à copier
    cells.copy
    tu choisis le classeur et la feuille dans laquelle tu veux coller la forme
    puis
    activesheets.paste
    cells.select
    selection =""

    ou alors tu enregistres une macro avec collage spécial mise en forme et tu remplaces mes trois dernières lignes.
    0
  2. prince77
     
    bonjours, merci mais c'est pas ca du tout.
    j'ai presque reussi en faisant comme ca, mais si je saute une page en remplissant moi meme le titre de la page
    qui doit etre 1 OU 2 OU 3 etc...
    ca bloque!!!

    voila ce que j'ai fait:
    Private Sub TabStrip1_Click(ByVal Index As Long)

    Dim dateval As String
    Dim premessai As String
    Dim before As String
    Dim buttons As String

    Dim Message, Title, Default

    ' Définit le message.
    Message = "date pour la création d'une nouvelle feuille excel"
    Title = "création d'un nouvel onglet" ' Définit le titre.
    Default = "1" ' Définition la valeur par défaut.

    ' Utilise le fichier d'aide et le contexte.
    ' Le bouton Aide est ajouté automatiquement.
    premessai = InputBox(Message, Title, , , , "DEMO.HLP", 10)

    'si ca marche pas

    If premessai = "" Then Exit Sub

    'si ca marche'
    Sheets.Add Type:= _
    "C:\Users\TOUS LES JOURS\AppData\Roaming\Microsoft\Templates\project.xltm"
    ActiveSheet.Name = premessai
    Sheets(Sheets.Count).Select

    If Sheets.Count > "31" Then Exit Sub
    If Sheets.Count = "31" Then Sheets(31).Move before:=Sheets("31")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "31" Then Exit Sub
    If Sheets.Count = "30" Then Sheets(30).Move before:=Sheets("30")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "30" Then Exit Sub
    If Sheets.Count = "29" Then Sheets(29).Move before:=Sheets("29")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "29" Then Exit Sub
    If Sheets.Count = "28" Then Sheets(28).Move before:=Sheets("28")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "28" Then Exit Sub
    If Sheets.Count = "27" Then Sheets(27).Move before:=Sheets("27")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "27" Then Exit Sub
    If Sheets.Count = "26" Then Sheets(26).Move before:=Sheets("26")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "26" Then Exit Sub
    If Sheets.Count = "25" Then Sheets(25).Move before:=Sheets("25")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "25" Then Exit Sub
    If Sheets.Count = "24" Then Sheets(24).Move before:=Sheets("24")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "24" Then Exit Sub
    If Sheets.Count = "23" Then Sheets(23).Move before:=Sheets("23")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "23" Then Exit Sub
    If Sheets.Count = "22" Then Sheets(22).Move before:=Sheets("22")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "22" Then Exit Sub
    If Sheets.Count = "21" Then Sheets(21).Move before:=Sheets("21")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "21" Then Exit Sub
    If Sheets.Count = "20" Then Sheets(20).Move before:=Sheets("20")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "20" Then Exit Sub
    If Sheets.Count = "19" Then Sheets(19).Move before:=Sheets("19")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "19" Then Exit Sub
    If Sheets.Count = "18" Then Sheets(18).Move before:=Sheets("18")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "8" Then Exit Sub
    If Sheets.Count = "17" Then Sheets(17).Move before:=Sheets("17")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "17" Then Exit Sub
    If Sheets.Count = "16" Then Sheets(16).Move before:=Sheets("16")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "16" Then Exit Sub
    If Sheets.Count = "15" Then Sheets(15).Move before:=Sheets("15")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "15" Then Exit Sub
    If Sheets.Count = "14" Then Sheets(14).Move before:=Sheets("14")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "14" Then Exit Sub
    If Sheets.Count = "13" Then Sheets(13).Move before:=Sheets("13")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "13" Then Exit Sub
    If Sheets.Count = "12" Then Sheets(12).Move before:=Sheets("12")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "12" Then Exit Sub
    If Sheets.Count = "11" Then Sheets(11).Move before:=Sheets("11")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "11" Then Exit Sub
    If Sheets.Count = "10" Then Sheets(10).Move before:=Sheets("10")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "10" Then Exit Sub
    If Sheets.Count = "9" Then Sheets(9).Move before:=Sheets("9")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "9" Then Exit Sub
    If Sheets.Count = "8" Then Sheets(8).Move before:=Sheets("8")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "8" Then Exit Sub
    If Sheets.Count = "7" Then Sheets(7).Move before:=Sheets("7")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "7" Then Exit Sub
    If Sheets.Count = "6" Then Sheets(6).Move before:=Sheets("6")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "6" Then Exit Sub
    If Sheets.Count = "5" Then Sheets(5).Move before < Sheets("5")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "5" Then Exit Sub
    If Sheets.Count = "4" Then Sheets(4).Move before < Sheets("4")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "4" Then Exit Sub
    If Sheets.Count = "3" Then Sheets(3).Move before < Sheets("3")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "3" Then Exit Sub
    If Sheets.Count = "2" Then Sheets(2).Move before < Sheets("2")
    Sheets(Sheets.Count).Select
    If Sheets.Count > "2" Then Exit Sub

    Sheets(Sheets.Count).Select
    End Sub
    0
  3. melanie1324
     
    bonjour,
    dim i as string
    Private Sub TabStrip1_Click(ByVal Index As Long)

    Dim dateval As String
    Dim premessai As String
    Dim before As String
    Dim buttons As String

    Dim Message, Title, Default

    ' Définit le message.
    Message = "date pour la création d'une nouvelle feuille excel"
    Title = "création d'un nouvel onglet" ' Définit le titre.
    Default = "1" ' Définition la valeur par défaut.

    ' Utilise le fichier d'aide et le contexte.
    ' Le bouton Aide est ajouté automatiquement.
    premessai = InputBox(Message, Title, , , , "DEMO.HLP", 10)

    If premessai = "" Then Exit Sub
    else
    a=activeworkbook.name
    workbook.add
    'si ca marche'
    'Sheets.Add Type:= _
    activeworkbook.saveas filename:="C:\Users\TOUS LES JOURS\AppData\Roaming\Microsoft\Templates\project.xltm"

    ActiveSheet.Name = premessai
    b=activeworkbook.name
    'Sheets(Sheets.Count).Select

    for i = 1 to worksheets.count
    If i > 31 Then Exit Sub
    else
    workbook(a).Sheets(I).Move before:=workbook(b).Sheets(i)

    end if
    next i
    end if
    0
  4. prince77
     
    merci bcp!!

    je vais essayer des que j'aurai un peu de temps.

    a bientôt bise, bye
    0