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

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  VBA - Erreur Exécution

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

VBA - Erreur Exécution

n°2332712
desert-sto​rm
Never Give up
Posté le 29-04-2019 à 22:38:45  profilanswer
 

Bonjour,  
 
Merci de m'aider à optimiser mon code ci-dessous.
Actuellement j'ai une erreur d'exécution 1004 à la ligne "Selection.Offset(1, 0).Select".
 
 
Dim MyDataInventaire, MyDataInventaireHead, MyDataStock As Object
Dim mycol, myrow, i, j As Long
Dim rg As Variant
Dim reponse As Integer
Dim anneesel, moissel, moisannee As String
 
Set MyDataHead = Sheets("Inventaire" ).Range("B3" ).CurrentRegion
anneesel = MyDataHead.Range("C2" )
moissel = MyDataHead.Range("B2" )
If anneesel = "" Or moissel = "" Then
    MsgBox "Merci de selectionner le mois et/ou l'année !", vbCritical, "Informations"
Else
 
Set MyDataStock = Sheets("Stock" ).Range("A1" ).CurrentRegion
moisannee = moissel & "/" & anneesel
Set rg = MyDataStock.Range("A1:A10000" ).Find(moisannee, MyDataStock.Range("A1" ), LookIn:=xlValues, LookAt:=xlPart)
 
If Not rg Is Nothing Then
 
MsgBox "Un Inventaire a déja été défini pour cette période. Merci de selectionner une autre période !", vbCritical, "Informations"
Else
reponse = MsgBox("Voulez vous vraiment enregistrer cet inventaire ?", vbYesNo + vbQuestion, "Confirmation" )
 If reponse = vbYes Then
 
Set MyData = Sheets("Inventaire" ).Range("C7" ).CurrentRegion
mycol = MyData.Columns.Count
myrow = MyData.Rows.Count
 
Sheets("Stock" ).Activate
Range("A2" ).Select
Selection.End(xlDown).Select
 
For i = 2 To myrow - 1
For j = 2 To mycol - 1
If MyData(i, j) <> 0 Then
Selection.Offset(1, 0).Select
ActiveCell.Offset(0, 1).Value = moisannee
ActiveCell.Offset(0, 2).Value = MyData(1, j)
ActiveCell.Offset(0, 3).Value = MyData(i, 1)
ActiveCell.Offset(0, 4).Value = MyData(i, j)
End If
Next j
Next i
 
MsgBox "Inventaire enregistré avec succès !", vbInformation, "Informations"
restaurer_configuration
End If
End If
End If

mood
Publicité
Posté le 29-04-2019 à 22:38:45  profilanswer
 

n°2332734
desert-sto​rm
Never Give up
Posté le 30-04-2019 à 12:29:57  profilanswer
 

Resend !

n°2332735
Marc L
Posté le 30-04-2019 à 12:48:55  profilanswer
 

 
            Bonjour,
 
            un bon code VBA n'ayant besoin d'aucun affreux Activate ni Select pour accéder aux données …
 
            Quelle est donc la sélection au moment de l'erreur ?‼


Message édité par Marc L le 30-04-2019 à 12:49:49
n°2332736
desert-sto​rm
Never Give up
Posté le 30-04-2019 à 12:59:35  profilanswer
 

Bonjour,  
Merci Marc L pour ton retour rapide.
Je débute en programmation sous VBA et pour l'heure les seuls éléments que j'ai sont l'"Activate" et le "Select" pour insérer des données dans une feuille Excel.
 
Merci de m'aider à optimiser mon code.
 
L'erreur apparaît au moment de la sélection de la nouvelle ligne après la dernière ligne du tableau: pour pouvoir insérer les nouvelles valeurs dans le tableau.

n°2332802
Marc L
Posté le 02-05-2019 à 12:01:58  profilanswer
 

 
            Comme la question a été posée ailleurs, je conclus ici juste en indiquant la ligne déclenchant l'erreur ne respecte aucune logique …
 
            Activer l'Enregistreur de macros puis opérer manuellement : la solution sera livrée sur un plateau.
 


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

  VBA - Erreur Exécution

 

Sujets relatifs
Exposant VBA MacErreur de segmentation.
[JAVA] exécution projet multi-package[Python] Connection aux routeurs et détection d'erreur
VBA : erreur d'exécution 13Erreur VBA : erreur d'exécution 57121
VBA : Erreur d'exécution '-2147417848 (80010108)Erreur d'execution '9' VBA sur Excel 2007
[VBA] Erreur d'exécution '-2147417848 (80010108)'erreur d'execution VBA/access
Plus de sujets relatifs à : VBA - Erreur Exécution


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