Excel VBA användarform och intervall - enkla Excel -makron

Innehållsförteckning

Du kan använda en RefEdit -kontroll i Excel VBA för att få ett intervall från en användare. De Användarform vi ska skapa färger minimivärdet för räckvidd lagras i RefEdit -kontrollen.

För att skapa denna användarform, utför följande steg.

1. Öppna Visual Basic Editor. Om Project Explorer inte syns, klicka på View, Project Explorer.

2. Klicka på Infoga, användarform. Om Verktygslådan inte visas automatiskt klickar du på Visa, Verktygslåda. Din skärm ska konfigureras enligt nedan.

3. Lägg till etiketten, RefEdit -kontrollen och kommandoknapparna. När detta har slutförts bör resultatet överensstämma med bilden av användarformen som visades tidigare. Skapa till exempel en RefEdit -kontroll genom att klicka på RefEdit från verktygslådan. Därefter kan du dra en RefEdit -kontroll på användarformuläret.

Obs! Om verktygslådan inte har en RefEdit -kontroll anger du en referens till RefEdit -kontrollen. Klicka på Verktyg, referenser och markera Ref Redigera kontroll.

4. Du kan ändra namn och bildtexter på kontrollerna. Namn används i Excel VBA -koden. Bildtexter är de som visas på skärmen. Det är bra att ändra namnen på kontrollerna, men det är inte nödvändigt här eftersom vi bara har några få kontroller i det här exemplet. För att ändra bildtexten för användarform, etikett och kommandoknappar, klicka på Visa, Egenskapsfönster och klicka på varje kontroll.

5. För att visa användarformuläret, placera en kommandoknapp på ditt kalkylblad och lägg till följande kodrad:

Privat underkommandoButton1_Click ()
UserForm1.Show
Avsluta Sub

Vi ska nu skapa Sub UserForm_Initialize. När du använder metoden Visa för användarformuläret körs denna sub automatiskt.

6. Öppna Visual Basic Editor.

7. I Project Explorer, högerklicka på UserForm1 och klicka sedan på Visa kod.

8. Välj Userform från den vänstra listrutan. Välj Initiera från den högra listrutan.

9. Lägg till följande kodrader:

Private Sub UserForm_Initialize ()
Sheet1.Cells.Font.Color = vbBlack
UserForm1.RefEdit1.Text = Selection.Address
Avsluta Sub

Förklaring: den första kodraden ändrar teckensnittsfärgen för alla celler på blad1 till svart. Den andra kodraden hämtar adressen till det aktuella urvalet och visar den i RefEdit -kontrollen.

Vi har nu skapat den första delen av Userform. Även om det ser snyggt ut, kommer inget att hända ännu när vi klickar på kommandoknapparna på användarformuläret.

10. Dubbelklicka på UserForm1 i Project Explorer.

11. Dubbelklicka på Go -knappen.

12. Lägg till följande kodrader:

Privat underkommandoButton1_Click ()
Dim addr As String, rng, cell As Range, minimum As Double
addr = RefEdit1.Value
Ställ in rng = Range (addr)
minimum = WorksheetFunction.Min (rng)
För varje cell I rng
Om cell.Value = minimum Sedan cell.Font.Color = vbRed
Nästa cell
Avsluta Sub

Förklaring: först får vi adressen från RefEdit -kontrollen och lagrar den i strängvariabeln addr. Därefter ställer vi in ​​rng till det intervall som anges i RefEdit -kontrollen. Därefter använder vi kalkylbladsfunktionen Min för att hitta minimivärdet i intervallet. Slutligen färgar vi minimivärden med en loop.

13. Dubbelklicka på knappen Avbryt.

14. Lägg till följande kodrad:

Privat underkommandoButton2_Click ()
Ladda ur mig
Avsluta Sub

Förklaring: denna kodrad stänger användarformuläret när du klickar på knappen Avbryt.

15. Testa användarformen.

Resultat:

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave