Maison  >  Article  >  Tutoriel logiciel  >  Le code macro Excel n'est pas difficile, les experts lèvent la main

Le code macro Excel n'est pas difficile, les experts lèvent la main

WBOY
WBOYavant
2024-01-17 10:06:21671parcourir

Le code macro Excel nest pas difficile, les experts lèvent la main

Il n'est pas difficile pour les experts de programmer un code macro Excel

Sous-test privé()

Dim result As String 'Un nombre aléatoire contenant dix nombres de 0 à 9

Dim randomValue As Integer

Dim randomData (10) en tant qu'entier

Dim drapeau comme booléen

Pour i = 0 à 9

drapeau = Vrai

While flag = True

Randomiser

randomValue = Int((9 - 0 + 1) * Rnd + 0)

Si i = 0 Ou search(randomValue, randomData, i) = False Alors

résultat = résultat & CStr(randomValue)

randomData(i) = randomValue

drapeau = Faux

Fin si

Wend

Suivant

Fin du sous-marin

Recherche de fonction privée (clé ByVal en tant qu'entier, données ByRef () en tant qu'entier, longueur ByVal en tant qu'entier) en tant que booléen

Si longueur = 0 Alors

recherche = Vrai

Fonction de sortie

Fin si

recherche = Faux

Pour i = 0 À longueur - 1

Si data(i) = clé Alors

recherche = Vrai

Fonction de sortie

Fin si

Suivant

Fin de fonction

C'est fait. Il s'agit de générer des nombres aléatoires Vous le mettez en cas de clic sur le bouton

.

S'il vous plaît, aidez-nous avec un code de macro EXCEL, merci !

L'utilisation d'un objet dictionnaire sera beaucoup plus rapide. Le code est le suivant : (Si vous pensez que ce n'est pas assez rapide, lisez toute la colonne A de la feuille 3 dans un tableau pour réduire le nombre de lectures fréquentes de la feuille de calcul et accélérer beaucoup )

Sous-sélection en double()

Dim Sht2Dic, CongFuArr()

Dim N As Long

Dim Rng2 comme plage, Rng3 comme plage

Set Sht2Dic = CreateObject("Scripting.Dictionary")

Pour chaque Rng2 dans Sheet2.Range("A1:A" & Sheet2.UsedRange.Rows.Count)

Sht2Dic(Rng2.Value) = Sht2Dic(Rng2.Value) + 1

Suivant

Pour chaque Rng3 dans Sheet3.Range("A1:A" & Sheet3.UsedRange.Rows.Count)

Si Sht2Dic.exists(Rng3.Value) Alors

N = N + 1

ReDim Préserver CongFuArr (1 à N)

CongFuArr(N) = Rng3.Value

Fin si

Suivant

Feuille1.Colonnes("A") = ""

Sheet1.Range("A1").Resize(N, 1) = WorksheetFunction.Transpose(CongFuArr)

Fin du sous-marin

Comment utiliser des macros sur un tableau dans Excel

Cliquez sur Outils de développement - Enregistrer la macro, définissez un nom de macro significatif et définissez la touche de raccourci pour utiliser la macro. Si nécessaire, vous pouvez saisir une description détaillée de la macro et cliquer sur OK

.

Désormais, chaque étape de votre opération doit être garantie pour répondre à vos besoins, car Excel a commencé à enregistrer vos étapes d'opération, et maintenant vous constatez que la position des macros d'enregistrement sur la barre d'outils a changé pour arrêter l'enregistrement.

Suivez ensuite l'exemple, nous sélectionnons tous les tableaux, définissons la police en italique, définissons la taille de la police sur la taille 16 et définissons la couleur d'arrière-plan sur turquoise, comme indiqué sur l'image, chaque étape est définie correctement.

Une fois les étapes terminées, cliquez pour arrêter l'enregistrement, afin que la macro permettant de définir le format du tableau par lots soit enregistrée. Lorsque nous cliquons sur la macro, nous pouvons constater que la macro que nous venons d'enregistrer a été enregistrée.

Lorsque nous devons définir le même format pour d'autres tables, il nous suffit d'appeler cette macro, comme le montre la figure, le format avant d'appeler la macro.

Sélectionnez le tableau que vous souhaitez formater, puis cliquez sur Macro, la zone de liste des macros apparaîtra, sélectionnez la macro que vous avez enregistrée, cliquez sur Exécuter et vous constaterez que le format du tableau devient le format souhaité.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer