Code VBA ne fonctionnant pas sur libreOffice

Bonjour,

Le code ci dessous fonctionne sur Excel 2011 (Mac) mais pas sur LibreOffice ... (Application à jour)

Sub Compo_100_M()
    Range("K15").Value = "100 % M"
    Range("I24").FormulaLocal = "=I15"
    Range("I30").ClearContents
End Sub

Une idée de ce qui va pas ?

Merci

Cdlt

GeGaX

Salut le Forum

Normal, ce n'est pas le même langage de programmation pour les deux applications.

REM  *****  BASIC  *****

Option VBASupport 1
Option Compatible

Sub Compo_100_M()
    Range("K15").Value = "100 % M"
    Range("I24").Formula  = "=I15"
    Range("I30").ClearContents
End Sub

Mytå

Merci beaucoup )

Je reviendrais sur ce salon quand ma feuille sera 100% fonctionnelle sur excel.

J'aurais surement beaucoup de questions à vous poser (sur LibreOffice, j'ai des menus déroulants qui ne fonctionnent pas / une mise en forme conditionnelle qui ne fonctionne pas (et toutes les autres sont OK ?! ) et quasi tous le code VBA c'est surement de petits problèmes de syntaxes comme ci dessus ...)

Je laisse le post ouvert et reviens très bientôt

Merci

Cdlt

GeGaX

Re le Forum

Tu n'auras jamais un fichier 100% compatible Excel - OpenOffice.

Il y a trop de différence au niveau du VBA et du Basic

Mytå

ca casse pas 3 pattes a un canard voici a quoi ressemble le peut de code que j'ai

Sub Base_Veterans()
    Range("I20:I33, I35:I48, I50:I60").ClearContents
    Range("L20:L33, L35:L48, L50:L60").ClearContents
End Sub
Sub Compo_100_M()
    Range("K15").Value = "100 % M"
    Range("I24").Formula = "=I15"
    Range("I30").ClearContents
End Sub
Sub Compo_75_M_25_D()
    Range("K15").Value = "75 % M - 25 % D"
    Range("I24").Formula = "=I15*(3/4)"
    Range("I30").Formula = "=I15*(1/4)"
End Sub
Sub Compo_50_M_50_D()
    Range("K15").Value = "50 % M - 50 % D"
    Range("I24").Formula = "=I15*(1/2)"
    Range("I30").Formula = "=I15*(1/2)"
End Sub
Sub Compo_25_M_75_D()
    Range("K15").Value = "25 % M - 75 % D"
    Range("I24").Formula = "=I15*(1/4)"
    Range("I30").Formula = "=I15*(3/4)"
End Sub
Sub Compo_100_D()
    Range("K15").Value = "100 % D"
    Range("I24").ClearContents
    Range("I30").Formula = "=I15"
End Sub
Sub Flanc_Gauche()
    Range("I11").Value = "FLANC GAUCHE"
    Range("O75").Value = 0
End Sub
Sub Flanc_Centre()
    Range("I11").Value = "FLANC CENTRAL"
    Range("O75").FormulaLocal = "=SI((K75+K76+I7+E6)+(K67-K6)>=0;(K75+K76+I7+E6)+(K67-K6);0)"
End Sub
Sub Flanc_Droit()
    Range("I11").Value = "FLANC DROIT"
    Range("O75").Value = 0
End Sub
Sub RAZ()
    ' % BAILLI / % BASE & % COMMANDANT
    Range("E5:E9").Value = 0
    Range("I5, I7, I9").Value = 0
    Range("K5:K9").Value = 0
    ' FLANC & COMPO
    Range("I11").MergeArea.ClearContents
    Range("I15").ClearContents
    Range("K15").MergeArea.ClearContents
    ' SOLDATS
    Range("I20:I33, I35:I48, I50:I60").ClearContents
    Range("L20:L33, L35:L48, L50:L60").ClearContents
    ' ENGINS ATTAQUE
    Range("D66, D72:D74").Value = "::: MURS :::"
    Range("D67, D75:D76").Value = "::: PORTES :::"
    Range("D68, D77").Value = "::: DOUVES :::"
    Range("D69, D78:D80").Value = "::: DISTANCES :::"
    Range("I66, I72:I74").Value = 0
    Range("I67, I75:I76").Value = 0
    Range("I68, I77").Value = 0
    Range("I69").Value = 0
End Sub
Sub Cmdt_Melee()
    Range("K5:K7, K9").Value = 0
    Range("K8").Value = 0.45
End Sub
Sub Cmdt_Mixte()
End Sub
Sub Cmdt_Distant()
    Range("K6, K8").Value = 0
    Range("K5").Value = 0.3
    Range("K7").Value = 0.22
    Range("K9").Value = 0.22
End Sub

Et je pense que c'est mal écrit mais bon c'est fonctionnel

Rechercher des sujets similaires à "code vba fonctionnant pas libreoffice"