Problème : lors de la
copie d'une cellule contenant un script à partir d'Excel dans un autre programme, les guillemets doubles ( ""
) sont ajoutés automatiquement au lieu de guillemets simples ( "
).
De plus, au début et à la fin des scripts, un "
est automatiquement ajouté.
Voici mon script, et les citations soulignées sont les plus superficielles:
" // script pour changer le budget par jour de la semaine // Jon Gritton 2016
// user vars var BUDG_NAME = " " Budget partagé S104 (CX - Elevé) " " ; var B_MON = 500000; var B_TUE = 500000; var B_WED = 500000; var B_THU = 500000; var B_FRI = 500000; var B_SAT = 500000; var B_SUN = 500000;
function main () {setBudget (getBudgetToday ()); }
fonction getBudgetToday () {var budgArray = [B_SUN, B_MON, B_TUE, B_WED, B_THU, B_FRI, B_SAT]; var d = new Date (Utilities.formatDate (new Date (),> AdWordsApp.currentAccount (). getTimeZone (), " " MMM jj, aaaa HH: mm: ss " " )); var aujourd'hui = d.getDay (); renvoyer budgArray [aujourd'hui]; }
function setBudget (budgetToday) {Logger.log ( " " Le budget d'aujourd'hui est: " " + budgetToday); var budgetIter = AdWordsApp.budgets () .withCondition ( " " BudgetName = '" " + BUDG_NAME + " " "" " ) .get () while (budgetIter.hasNext ()) {var thisBudget = budgetIter.next (); thisBudget.setAmount (budgetAujourd'hui); }} "
Détails :
J'utilise Excel 2013 sur Windows 10.
J'ai lu sur un autre fil que nous pouvons résoudre ceci en utilisant cette macro
Sub CopyCellContents()
'create a reference in the VBE to Microsft Forms 2.0 Lib
Dim objData As New DataObject
Dim strTemp As String
strTemp = ActiveCell.Value
objData.SetText (strTemp)
objData.PutInClipboard
End Sub
mais apparemment, cette macro est uniquement compatible avec Excel 2007 et non Excel 2013:
"Erreur de compilation: type défini par l'utilisateur non défini"
La seule solution consiste à copier la cellule (qui contient le script) dans Word 2013 et à copier le texte en bloquant la barre de formule. Mais je dois simplement copier la cellule dans le nouveau programme.
Comment puis-je empêcher ces guillemets de s'afficher lors de la copie dans un autre programme? En d'autres termes, puis-je supprimer de ces guillemets doubles d'être automatiquement ajoutés lorsque la cellule est copiée dans le Presse-papiers?
la source
Réponses:
En fait, cette macro est compatible avec Excel 2013. Vous devez ajouter une référence à la
Microsoft Forms 2.0 Object Library
, comme expliqué dans le commentaire de la deuxième ligne du code.Dans le VBE, allez à
Tools
→References…
, faites défiler jusqu'à la référence de formulaire (ce sera sous "M") et cochez la case:La macro devrait fonctionner maintenant.
la source