Vba sur office 11

Fermé
jp - 14 mai 2012 à 13:59
linkcr15 Messages postés 362 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 31 mars 2016 - 15 mai 2012 à 16:41
Bonjour,

J'ai un problème dans l'entreprise ou je travail on à office 11 et sur mon ordi perso j'ai office 12
j'ai créé un programme VBA sur offcie 12 et il marche pas sur office 11

ça c'est la partie sur office 12 que j'aimerai qui marche sur office 11

'Programmation Visual BASIC dans AutoCAD
Dim AcadDoc As Object, ExcelApp As Object, ExcelSheet As Excel.Worksheet, ExcelWorkBook As Excel.Workbooks
Private Sub Liste_Click()
Dim Collection As Object, Objet As Object
Dim i As Integer
Dim z As Integer
Dim w As Integer
Dim P As Variant, Attributes As Variant, Column As Integer, colonne As Integer, nom As Variant
If MsgBox("Vous aller procéder à l'extraction des attributs.", vbOKCancel) = vbOK Then
Dim Nonfichier As String



'ExcelApp est un lien sur l'application excel en cours
On Error Resume Next
'Verifie si Excel est ouvert et sinon l'ouvrir.
Set objExcel = GetObject(, "Excel.Application")
If Err.Number > 0 Then
Set objExcel = CreateObject("Excel.Application")
End If

objExcel.Visible = True
'Set ExcelWorkBook = objExcel.GetOpenFilename
objExcel.Workbooks.Open ("e:\Projet LP CAODAO\Projet 2.0\Excel\QAcier.1.31.xls")
objExcel.Worksheets("AutoCad").Range("A1:BZ60000").ClearContents
objExcel.Sheets("Tableau de données").EnableSelection = xlUnlockedCells
objExcel.Sheets("Tableau de données").Protect Contents:=False
Set ExcelSheet = objExcel.ActiveWorkbook.Sheets("AutoCad")

'AcadDoc est un lien sur le dessin en cours
Set AcadDoc = GetObject(, "Autocad.application").ActiveDocument

'Remplissage sur la ligne n°1 de le feuille AutoCad avec les titre des de la feuilleExtraction
For x = 1 To 201
ExcelSheet.Cells(1, x) = objExcel.Sheets("Tableau de données").Cells(92, (x + 1)).Value
Next x

'collection représente l'ensemble des entités graphiques contenues dans l'espace objet
Set Collection = AcadDoc.ModelSpace
i = 2
'Pour chaque objet de la collection


Excelfeuil.Cells(1, 34) = Objet.Caption
For Each Objet In Collection
'Remplissage dans excel, ligne par ligne à partir de la deuxième
'ligne de la feuille, en indiquant l'identifiant, le type d'entité
If Objet.EntityType = 7 Then
nom = Objet.Name
For z = 64 To 65
Select Case nom
Case objExcel.Sheets("Tableau de données").Cells(z, 1).Value
ExcelSheet.Cells(i, 200) = Objet.Handle
Attributes = Objet.GetAttributes
For j = 0 To UBound(Attributes)
For w = 1 To 201
Select Case Attributes(j).TagString
Case objExcel.Sheets("Tableau de données").Cells(z, (w + 1)).Value: colonne = w
End Select
Next w
ExcelSheet.Cells(i, colonne) = Attributes(j).TextStrin
Next j
i = i + 1 'on passe à la ligne suivante pour le prochain
End Select
Next z

End If

Next
End If

ExcelSheet.Cells(1, 202) = ActiveDocument.FullName
objExcel.Sheets("Tableau de données").EnableSelection = xlUnlockedCells
objExcel.Sheets("Tableau de données").Protect Contents:=True
objExcel.Sheets("Recap").EnableSelection = xlUnlockedCells
objExcel.Sheets("Recap").Protect Contents:=False
objExcel.Sheets("Recap").Range("C4:E5").Interior.color = RGB(0, 255, 0)
objExcel.Sheets("Recap").EnableSelection = xlUnlockedCells
objExcel.Sheets("Recap").Protect Contents:=True
End Sub

ça c'est le programme dont je suis partie pour créer celui du dessus

If Objet.EntityType = 7 Then 'si l'objet et un bloc
nom = Objet.Name
For z = 94 To 143
'selon le cas du nom du bloc
Select Case nom
Case objExcel.Sheets("Tableau de données").Cells(z, 1).Value 'on va cherhcer si le nom du bloc
'est égal au nom renseigné dans le tableau Liste des Bloc AutoCad Utiles dans la colonne
'Nom du blocs de la feuille tableau de donnée en cherchant sur toute les ligne numérotées par la boucle z
ExcelSheet.Cells(i, 200) = Objet.Handle 'On récupère l'ID de chaque bloc et on l'inscrit en colonne GR
Attributes = Objet.GetAttributes

For J = 0 To UBound(Attributes)
'selon le nom de l'attribut
Select Case Attributes(J).TagString
'si le nom de l'attribut est égale a celui renseigné dans le tableau Liste des Bloc AutoCad
'en fonction de z qui correspond au nom du bloc
'alors on va récupérer la valeur de l'attribut et l'inscrire dans la colonne lui correspondant sur AutoCad
'faisant un boucle z qui va lire ligne par ligne les noms des attributs sur la feuille Excel est les comparer aux attributs
'des blocs présent sur le dessin
Case objExcel.Sheets("Tableau de données").Cells(z, 2).Value: colonne = 1
Case objExcel.Sheets("Tableau de données").Cells(z, 3).Value: colonne = 2
Case objExcel.Sheets("Tableau de données").Cells(z, 4).Value: colonne = 3
Case objExcel.Sheets("Tableau de données").Cells(z, 5).Value: colonne = 4
Case objExcel.Sheets("Tableau de données").Cells(z, 6).Value: colonne = 5
Case objExcel.Sheets("Tableau de données").Cells(z, 7).Value: colonne = 6
Case objExcel.Sheets("Tableau de données").Cells(z, 8).Value: colonne = 7
Case objExcel.Sheets("Tableau de données").Cells(z, 9).Value: colonne = 8
Case objExcel.Sheets("Tableau de données").Cells(z, 10).Value: colonne = 9
Case objExcel.Sheets("Tableau de données").Cells(z, 11).Value: colonne = 10
Case objExcel.Sheets("Tableau de données").Cells(z, 12).Value: colonne = 11
Case objExcel.Sheets("Tableau de données").Cells(z, 13).Value: colonne = 12
Case objExcel.Sheets("Tableau de données").Cells(z, 14).Value: colonne = 13
Case objExcel.Sheets("Tableau de données").Cells(z, 15).Value: colonne = 14
Case objExcel.Sheets("Tableau de données").Cells(z, 16).Value: colonne = 15
Case objExcel.Sheets("Tableau de données").Cells(z, 17).Value: colonne = 16
Case objExcel.Sheets("Tableau de données").Cells(z, 18).Value: colonne = 17
Case objExcel.Sheets("Tableau de données").Cells(z, 19).Value: colonne = 18
Case objExcel.Sheets("Tableau de données").Cells(z, 20).Value: colonne = 19
Case objExcel.Sheets("Tableau de données").Cells(z, 21).Value: colonne = 20
Case objExcel.Sheets("Tableau de données").Cells(z, 22).Value: colonne = 21
Case objExcel.Sheets("Tableau de données").Cells(z, 23).Value: colonne = 22
Case objExcel.Sheets("Tableau de données").Cells(z, 24).Value: colonne = 23
Case objExcel.Sheets("Tableau de données").Cells(z, 25).Value: colonne = 24
Case objExcel.Sheets("Tableau de données").Cells(z, 26).Value: colonne = 25
Case objExcel.Sheets("Tableau de données").Cells(z, 27).Value: colonne = 26
Case objExcel.Sheets("Tableau de données").Cells(z, 28).Value: colonne = 27
Case objExcel.Sheets("Tableau de données").Cells(z, 29).Value: colonne = 28
Case objExcel.Sheets("Tableau de données").Cells(z, 30).Value: colonne = 29
Case objExcel.Sheets("Tableau de données").Cells(z, 31).Value: colonne = 30
Case objExcel.Sheets("Tableau de données").Cells(z, 32).Value: colonne = 31
Case objExcel.Sheets("Tableau de données").Cells(z, 33).Value: colonne = 32
Case objExcel.Sheets("Tableau de données").Cells(z, 34).Value: colonne = 33
Case objExcel.Sheets("Tableau de données").Cells(z, 35).Value: colonne = 34
Case objExcel.Sheets("Tableau de données").Cells(z, 36).Value: colonne = 35
Case objExcel.Sheets("Tableau de données").Cells(z, 37).Value: colonne = 36
Case objExcel.Sheets("Tableau de données").Cells(z, 38).Value: colonne = 37
Case objExcel.Sheets("Tableau de données").Cells(z, 39).Value: colonne = 38
Case objExcel.Sheets("Tableau de données").Cells(z, 40).Value: colonne = 39
Case objExcel.Sheets("Tableau de données").Cells(z, 41).Value: colonne = 40
Case objExcel.Sheets("Tableau de données").Cells(z, 42).Value: colonne = 41
Case objExcel.Sheets("Tableau de données").Cells(z, 43).Value: colonne = 42
Case objExcel.Sheets("Tableau de données").Cells(z, 44).Value: colonne = 43
Case objExcel.Sheets("Tableau de données").Cells(z, 45).Value: colonne = 44
Case objExcel.Sheets("Tableau de données").Cells(z, 46).Value: colonne = 45
Case objExcel.Sheets("Tableau de données").Cells(z, 47).Value: colonne = 46
Case objExcel.Sheets("Tableau de données").Cells(z, 48).Value: colonne = 47
Case objExcel.Sheets("Tableau de données").Cells(z, 49).Value: colonne = 48
Case objExcel.Sheets("Tableau de données").Cells(z, 50).Value: colonne = 49
Case objExcel.Sheets("Tableau de données").Cells(z, 51).Value: colonne = 50
Case objExcel.Sheets("Tableau de données").Cells(z, 52).Value: colonne = 51
Case objExcel.Sheets("Tableau de données").Cells(z, 53).Value: colonne = 52
Case objExcel.Sheets("Tableau de données").Cells(z, 54).Value: colonne = 53
Case objExcel.Sheets("Tableau de données").Cells(z, 55).Value: colonne = 54
Case objExcel.Sheets("Tableau de données").Cells(z, 56).Value: colonne = 55
Case objExcel.Sheets("Tableau de données").Cells(z, 57).Value: colonne = 56
Case objExcel.Sheets("Tableau de données").Cells(z, 58).Value: colonne = 57
Case objExcel.Sheets("Tableau de données").Cells(z, 59).Value: colonne = 58
Case objExcel.Sheets("Tableau de données").Cells(z, 60).Value: colonne = 59
Case objExcel.Sheets("Tableau de données").Cells(z, 61).Value: colonne = 60
Case objExcel.Sheets("Tableau de données").Cells(z, 62).Value: colonne = 61
Case objExcel.Sheets("Tableau de données").Cells(z, 63).Value: colonne = 62
Case objExcel.Sheets("Tableau de données").Cells(z, 64).Value: colonne = 63
Case objExcel.Sheets("Tableau de données").Cells(z, 65).Value: colonne = 64
Case objExcel.Sheets("Tableau de données").Cells(z, 66).Value: colonne = 65
Case objExcel.Sheets("Tableau de données").Cells(z, 67).Value: colonne = 66
Case objExcel.Sheets("Tableau de données").Cells(z, 68).Value: colonne = 67
Case objExcel.Sheets("Tableau de données").Cells(z, 69).Value: colonne = 68
Case objExcel.Sheets("Tableau de données").Cells(z, 70).Value: colonne = 69
Case objExcel.Sheets("Tableau de données").Cells(z, 71).Value: colonne = 70
Case objExcel.Sheets("Tableau de données").Cells(z, 72).Value: colonne = 71
Case objExcel.Sheets("Tableau de données").Cells(z, 73).Value: colonne = 72
Case objExcel.Sheets("Tableau de données").Cells(z, 74).Value: colonne = 73
Case objExcel.Sheets("Tableau de données").Cells(z, 75).Value: colonne = 74
Case objExcel.Sheets("Tableau de données").Cells(z, 76).Value: colonne = 75
Case objExcel.Sheets("Tableau de données").Cells(z, 77).Value: colonne = 76
Case objExcel.Sheets("Tableau de données").Cells(z, 78).Value: colonne = 77
Case objExcel.Sheets("Tableau de données").Cells(z, 79).Value: colonne = 78
Case objExcel.Sheets("Tableau de données").Cells(z, 80).Value: colonne = 79
Case objExcel.Sheets("Tableau de données").Cells(z, 81).Value: colonne = 80
Case objExcel.Sheets("Tableau de données").Cells(z, 82).Value: colonne = 81
Case objExcel.Sheets("Tableau de données").Cells(z, 83).Value: colonne = 82
Case objExcel.Sheets("Tableau de données").Cells(z, 84).Value: colonne = 83
Case objExcel.Sheets("Tableau de données").Cells(z, 85).Value: colonne = 84
Case objExcel.Sheets("Tableau de données").Cells(z, 86).Value: colonne = 85
Case objExcel.Sheets("Tableau de données").Cells(z, 87).Value: colonne = 86
Case objExcel.Sheets("Tableau de données").Cells(z, 88).Value: colonne = 87
Case objExcel.Sheets("Tableau de données").Cells(z, 89).Value: colonne = 88
Case objExcel.Sheets("Tableau de données").Cells(z, 90).Value: colonne = 89
Case objExcel.Sheets("Tableau de données").Cells(z, 91).Value: colonne = 90
Case objExcel.Sheets("Tableau de données").Cells(z, 92).Value: colonne = 91
Case objExcel.Sheets("Tableau de données").Cells(z, 93).Value: colonne = 92
Case objExcel.Sheets("Tableau de données").Cells(z, 94).Value: colonne = 93
Case objExcel.Sheets("Tableau de données").Cells(z, 95).Value: colonne = 94
Case objExcel.Sheets("Tableau de données").Cells(z, 96).Value: colonne = 95
Case objExcel.Sheets("Tableau de données").Cells(z, 97).Value: colonne = 96
Case objExcel.Sheets("Tableau de données").Cells(z, 98).Value: colonne = 97
Case objExcel.Sheets("Tableau de données").Cells(z, 99).Value: colonne = 98
Case objExcel.Sheets("Tableau de données").Cells(z, 100).Value: colonne = 99
Case objExcel.Sheets("Tableau de données").Cells(z, 101).Value: colonne = 100
Case objExcel.Sheets("Tableau de données").Cells(z, 102).Value: colonne = 101
Case objExcel.Sheets("Tableau de données").Cells(z, 103).Value: colonne = 102
Case objExcel.Sheets("Tableau de données").Cells(z, 104).Value: colonne = 103
Case objExcel.Sheets("Tableau de données").Cells(z, 105).Value: colonne = 104
Case objExcel.Sheets("Tableau de données").Cells(z, 106).Value: colonne = 105
Case objExcel.Sheets("Tableau de données").Cells(z, 107).Value: colonne = 106
Case objExcel.Sheets("Tableau de données").Cells(z, 108).Value: colonne = 107
Case objExcel.Sheets("Tableau de données").Cells(z, 109).Value: colonne = 108
Case objExcel.Sheets("Tableau de données").Cells(z, 110).Value: colonne = 109
Case objExcel.Sheets("Tableau de données").Cells(z, 111).Value: colonne = 110
Case objExcel.Sheets("Tableau de données").Cells(z, 112).Value: colonne = 111
Case objExcel.Sheets("Tableau de données").Cells(z, 113).Value: colonne = 112
Case objExcel.Sheets("Tableau de données").Cells(z, 114).Value: colonne = 113
Case objExcel.Sheets("Tableau de données").Cells(z, 115).Value: colonne = 114
Case objExcel.Sheets("Tableau de données").Cells(z, 116).Value: colonne = 115
Case objExcel.Sheets("Tableau de données").Cells(z, 117).Value: colonne = 116
Case objExcel.Sheets("Tableau de données").Cells(z, 118).Value: colonne = 117
Case objExcel.Sheets("Tableau de données").Cells(z, 119).Value: colonne = 118
Case objExcel.Sheets("Tableau de données").Cells(z, 120).Value: colonne = 119
Case objExcel.Sheets("Tableau de données").Cells(z, 121).Value: colonne = 120
Case objExcel.Sheets("Tableau de données").Cells(z, 122).Value: colonne = 121
Case objExcel.Sheets("Tableau de données").Cells(z, 123).Value: colonne = 122
Case objExcel.Sheets("Tableau de données").Cells(z, 124).Value: colonne = 123
Case objExcel.Sheets("Tableau de données").Cells(z, 125).Value: colonne = 124
Case objExcel.Sheets("Tableau de données").Cells(z, 126).Value: colonne = 125
Case objExcel.Sheets("Tableau de données").Cells(z, 127).Value: colonne = 126
Case objExcel.Sheets("Tableau de données").Cells(z, 128).Value: colonne = 127
Case objExcel.Sheets("Tableau de données").Cells(z, 129).Value: colonne = 128
Case objExcel.Sheets("Tableau de données").Cells(z, 130).Value: colonne = 129
Case objExcel.Sheets("Tableau de données").Cells(z, 131).Value: colonne = 130
Case objExcel.Sheets("Tableau de données").Cells(z, 132).Value: colonne = 131
Case objExcel.Sheets("Tableau de données").Cells(z, 133).Value: colonne = 132
Case objExcel.Sheets("Tableau de données").Cells(z, 134).Value: colonne = 133
Case objExcel.Sheets("Tableau de données").Cells(z, 135).Value: colonne = 134
Case objExcel.Sheets("Tableau de données").Cells(z, 136).Value: colonne = 135
Case objExcel.Sheets("Tableau de données").Cells(z, 137).Value: colonne = 136
Case objExcel.Sheets("Tableau de données").Cells(z, 138).Value: colonne = 137
Case objExcel.Sheets("Tableau de données").Cells(z, 139).Value: colonne = 138
Case objExcel.Sheets("Tableau de données").Cells(z, 140).Value: colonne = 139
Case objExcel.Sheets("Tableau de données").Cells(z, 141).Value: colonne = 140
Case objExcel.Sheets("Tableau de données").Cells(z, 142).Value: colonne = 141
Case objExcel.Sheets("Tableau de données").Cells(z, 143).Value: colonne = 142
Case objExcel.Sheets("Tableau de données").Cells(z, 144).Value: colonne = 143
Case objExcel.Sheets("Tableau de données").Cells(z, 145).Value: colonne = 144
Case objExcel.Sheets("Tableau de données").Cells(z, 146).Value: colonne = 145
Case objExcel.Sheets("Tableau de données").Cells(z, 147).Value: colonne = 146
Case objExcel.Sheets("Tableau de données").Cells(z, 148).Value: colonne = 147
Case objExcel.Sheets("Tableau de données").Cells(z, 149).Value: colonne = 148
Case objExcel.Sheets("Tableau de données").Cells(z, 150).Value: colonne = 149
Case objExcel.Sheets("Tableau de données").Cells(z, 151).Value: colonne = 150
Case objExcel.Sheets("Tableau de données").Cells(z, 152).Value: colonne = 151
Case objExcel.Sheets("Tableau de données").Cells(z, 153).Value: colonne = 152
Case objExcel.Sheets("Tableau de données").Cells(z, 154).Value: colonne = 153
Case objExcel.Sheets("Tableau de données").Cells(z, 155).Value: colonne = 154
Case objExcel.Sheets("Tableau de données").Cells(z, 156).Value: colonne = 155
Case objExcel.Sheets("Tableau de données").Cells(z, 157).Value: colonne = 156
Case objExcel.Sheets("Tableau de données").Cells(z, 158).Value: colonne = 157
Case objExcel.Sheets("Tableau de données").Cells(z, 159).Value: colonne = 158
Case objExcel.Sheets("Tableau de données").Cells(z, 160).Value: colonne = 159
Case objExcel.Sheets("Tableau de données").Cells(z, 161).Value: colonne = 160
Case objExcel.Sheets("Tableau de données").Cells(z, 162).Value: colonne = 161
Case objExcel.Sheets("Tableau de données").Cells(z, 163).Value: colonne = 162
Case objExcel.Sheets("Tableau de données").Cells(z, 164).Value: colonne = 163
Case objExcel.Sheets("Tableau de données").Cells(z, 165).Value: colonne = 164
Case objExcel.Sheets("Tableau de données").Cells(z, 166).Value: colonne = 165
Case objExcel.Sheets("Tableau de données").Cells(z, 167).Value: colonne = 166
Case objExcel.Sheets("Tableau de données").Cells(z, 168).Value: colonne = 167
Case objExcel.Sheets("Tableau de données").Cells(z, 169).Value: colonne = 168
Case objExcel.Sheets("Tableau de données").Cells(z, 170).Value: colonne = 169
Case objExcel.Sheets("Tableau de données").Cells(z, 171).Value: colonne = 170
Case objExcel.Sheets("Tableau de données").Cells(z, 172).Value: colonne = 171
Case objExcel.Sheets("Tableau de données").Cells(z, 173).Value: colonne = 172
Case objExcel.Sheets("Tableau de données").Cells(z, 174).Value: colonne = 173
Case objExcel.Sheets("Tableau de données").Cells(z, 175).Value: colonne = 174
Case objExcel.Sheets("Tableau de données").Cells(z, 176).Value: colonne = 175
Case objExcel.Sheets("Tableau de données").Cells(z, 177).Value: colonne = 176
Case objExcel.Sheets("Tableau de données").Cells(z, 178).Value: colonne = 177
Case objExcel.Sheets("Tableau de données").Cells(z, 179).Value: colonne = 178
Case objExcel.Sheets("Tableau de données").Cells(z, 180).Value: colonne = 179
Case objExcel.Sheets("Tableau de données").Cells(z, 181).Value: colonne = 180
Case objExcel.Sheets("Tableau de données").Cells(z, 182).Value: colonne = 181
Case objExcel.Sheets("Tableau de données").Cells(z, 183).Value: colonne = 182
Case objExcel.Sheets("Tableau de données").Cells(z, 184).Value: colonne = 183
Case objExcel.Sheets("Tableau de données").Cells(z, 185).Value: colonne = 184
Case objExcel.Sheets("Tableau de données").Cells(z, 186).Value: colonne = 185
Case objExcel.Sheets("Tableau de données").Cells(z, 187).Value: colonne = 186
Case objExcel.Sheets("Tableau de données").Cells(z, 188).Value: colonne = 187
Case objExcel.Sheets("Tableau de données").Cells(z, 189).Value: colonne = 188
Case objExcel.Sheets("Tableau de données").Cells(z, 190).Value: colonne = 189
Case objExcel.Sheets("Tableau de données").Cells(z, 191).Value: colonne = 190
Case objExcel.Sheets("Tableau de données").Cells(z, 192).Value: colonne = 191
Case objExcel.Sheets("Tableau de données").Cells(z, 193).Value: colonne = 192
Case objExcel.Sheets("Tableau de données").Cells(z, 194).Value: colonne = 193
Case objExcel.Sheets("Tableau de données").Cells(z, 195).Value: colonne = 194
Case objExcel.Sheets("Tableau de données").Cells(z, 196).Value: colonne = 195
Case objExcel.Sheets("Tableau de données").Cells(z, 197).Value: colonne = 196
Case objExcel.Sheets("Tableau de données").Cells(z, 198).Value: colonne = 197
Case objExcel.Sheets("Tableau de données").Cells(z, 199).Value: colonne = 198
Case objExcel.Sheets("Tableau de données").Cells(z, 100).Value: colonne = 199
Case objExcel.Sheets("Tableau de données").Cells(z, 102).Value: colonne = 201

End Select
ExcelSheet.Cells(i, colonne) = Attributes(J).TextString
Next J
i = i + 1 'on passe à la ligne suivante pour le prochain
End Select
Next z
End If


A voir également:

1 réponse

linkcr15 Messages postés 362 Date d'inscription mercredi 7 janvier 2009 Statut Membre Dernière intervention 31 mars 2016 12
15 mai 2012 à 16:41
Incompréhensible, envoie nous le projet entier au lieu de poster des lignes et des lignes ici.
Cherche les composants qui existent sous 12 et pas sous 11, tu verras tout de suite ce qui ne va pas!
PS : Programme toujours sur les versions les plus anciennes, ainsi tu n'auras pas ce genre de problème par la suite.
0