Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1529 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  extension d'un formule via VBA

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

extension d'un formule via VBA

n°1379483
lden
Posté le 02-06-2006 à 09:22:34  profilanswer
 

salut les gars
 
 
j'ai un pb plus simple que l'autre!
 
voila mon code, il insert des lignes puis etend la formule des cellules sous la ligne insérée.
le pb ce que ca bug! je sais pas pourquoi puisque je me suis basé sur une macro..
 
If lig_insertion >= 2 And lig_insertion <= nb_item_de_base + 1 Then
 
    ligAlpha = CStr(lig_insertion + 1 + (nb_item_de_base * i))
    ligAlphaDest = CStr(lig_insertion + (nb_item_de_base * i))
    plage = "A" + ligAlpha + ":" + "H" + ligAlpha
    plage_dest = "A" + ligAlphaDest + ":" + "H" + ligAlphaDest
    Range(plage).Select
    Selection.AutoFill Destination:=Range(plage_dest), Type:=xlFillDefault   'c'est ici que ca bug !
    Range("A2:H3" ).Select
 
End If
 
 
merci les gars!


Message édité par lden le 06-06-2006 à 16:37:54
mood
Publicité
Posté le 02-06-2006 à 09:22:34  profilanswer
 

n°1381808
lden
Posté le 06-06-2006 à 09:50:09  profilanswer
 

Euh salut.
 
je ne suis toujours pas inspiré dans la résolution de ce problème.
pensez vous que c'est le passage d'une plage_dest en argument qui empeche l'extension des formules?
merci
Lden

n°1381838
lden
Posté le 06-06-2006 à 10:30:22  profilanswer
 

Qui peut me dire pourquoi dans une sub ca marche et pourquoi dans une fonction ca marche pas?
 
Range("A3:H3" ).Select 'mettre plage
    Selection.AutoFill Destination:=Range("A2:H2" ), Type:=xlFillDefault

n°1381869
RavenShado​W1
Posté le 06-06-2006 à 10:56:20  profilanswer
 

donc, tu as fais un ptit prog sous access si je comprend bien, qui devrai lancer une macro, une macro copié de excel ??
mais access comprend pas le Range("....." ) du fait que tu n'as pas de colonnes lol  
mais il y a un moyen ;)  
 
pour ma part j'ai fais ceci :
 

Code :
  1. Public Function MacroExcel()
  2. Dim Xl As Excel.Application
  3. Set Xl = New Excel.Application
  4. Xl.Workbooks.Open "C:\123456\MACRO_TEL.XLS"
  5. Xl.Run "MACRO_TEL.XLS!RSW_TRI.auto_Open"
  6.                 ' en nommant une macro : auto_Open, elle se lance a l'ouverture du fichier..
  7. Xl.Quit
  8. Set Xl = Nothing
  9. End Function
  10. '---------------------------------
  11. Private Sub ouvrir_fichier_Click()
  12. MacroExcel            ' je lance la macro quand je click sur mon bouton ouvrir_fichier sur mon formulaire..
  13. End Sub


 
Voila, j'espere que ca peut t'aider, par contre, lancer une macro excel ou word depuis access et formulaire, ca prend beaucoup de temps :/  je sais d'ailleurs pas pourquoi, car quand j'execute directement ma macro, ca me prend 15 secondes contre 2 minutes si je la lance par mon formulaire :/

n°1382038
lden
Posté le 06-06-2006 à 13:54:30  profilanswer
 

ok j'ai trouvé, ce ma plage de dest qui ne convenait pas ...
ex si plage a etendre est A3:H3
plage de dest est A3:H2...si on fait une extension vers le haut..moi je mettait A2:H2..
++


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  extension d'un formule via VBA

 

Sujets relatifs
[VBA Excel] Chemin fichier ouvrirVBA ComboBox
[VBA] outlook 2003[Excel VBA] Piloter un classeur
VBA - Coller dans la ligne vierge[VB / VBA] Envoyer une facture PDF par Email?
[VBA] Identifier date la + proche de la fin de mois(VBA Excel)recopier liste perso dans une formule
Travailler sur des images en VBA sous Excel 
Plus de sujets relatifs à : extension d'un formule via VBA


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR