Jak automatycznie zmienić rozmiar kształtu na podstawie / w zależności od określonej wartości komórki w programie Excel?
Jeśli chcesz automatycznie zmienić rozmiar kształtu na podstawie wartości określonej komórki, ten artykuł może Ci pomóc.
Automatycznie zmieniaj rozmiar kształtu na podstawie określonej wartości komórki za pomocą kodu VBA
Automatycznie zmieniaj rozmiar kształtu na podstawie określonej wartości komórki za pomocą kodu VBA
Poniższy kod VBA może pomóc w zmianie określonego rozmiaru kształtu na podstawie określonej wartości komórki w bieżącym arkuszu. Wykonaj następujące czynności.
1. Kliknij prawym przyciskiem myszy zakładkę arkusza z kształtem, którego rozmiar chcesz zmienić, a następnie kliknij Wyświetl kod z menu po kliknięciu prawym przyciskiem myszy.
2. w Microsoft Visual Basic for Applications okno, skopiuj i wklej następujący kod VBA do okna Code.
Kod VBA: Automatyczna zmiana rozmiaru kształtu na podstawie określonej wartości komórki w programie Excel
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Row = 2 And Target.Column = 1 Then
Call SizeCircle("Oval 2", Val(Target.Value))
End If
End Sub
Sub SizeCircle(Name As String, Diameter)
Dim xCenterX As Single
Dim xCenterY As Single
Dim xCircle As Shape
Dim xDiameter As Single
On Error GoTo ExitSub
xDiameter = Diameter
If xDiameter > 10 Then xDiameter = 10
If xDiameter < 1 Then xDiameter = 1
Set xCircle = ActiveSheet.Shapes(Name)
With xCircle
xCenterX = .Left + (.Width / 2)
xCenterY = .Top + (.Height / 2)
.Width = Application.CentimetersToPoints(xDiameter)
.Height = Application.CentimetersToPoints(xDiameter)
.Left = xCenterX - (.Width / 2)
.Top = xCenterY - (.Height / 2)
End With
ExitSub:
End Sub
Note: W kodzie „Owalny 2”To nazwa kształtu, którego rozmiar zmienisz. I Rząd = 2, Kolumna = 1 oznacza, że rozmiar kształtu „Owal 2” zostanie zmieniony na wartość z A2. Zmień je według potrzeb.
Aby automatycznie zmienić rozmiar wielu kształtów na podstawie różnych wartości komórek, zastosuj poniższy kod VBA.
Kod VBA: Automatycznie zmieniaj rozmiar wielu kształtów na podstawie różnych określonych wartości komórek w programie Excel
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xAddress As String
On Error Resume Next
If Target.CountLarge = 1 Then
xAddress = Target.Address(0, 0)
If xAddress = "A1" Then
Call SizeCircle("Oval 1", Val(Target.Value))
ElseIf xAddress = "A2" Then
Call SizeCircle("Smiley Face 3", Val(Target.Value))
ElseIf xAddress = "A3" Then
Call SizeCircle("Heart 2", Val(Target.Value))
End If
End If
End Sub
Sub SizeCircle(Name As String, Diameter)
Dim xCenterX As Single
Dim xCenterY As Single
Dim xCircle As Shape
Dim xDiameter As Single
On Error GoTo ExitSub
xDiameter = Diameter
If xDiameter > 10 Then xDiameter = 10
If xDiameter < 1 Then xDiameter = 1
Set xCircle = ActiveSheet.Shapes(Name)
With xCircle
xCenterX = .Left + (.Width / 2)
xCenterY = .Top + (.Height / 2)
.Width = Application.CentimetersToPoints(xDiameter)
.Height = Application.CentimetersToPoints(xDiameter)
.Left = xCenterX - (.Width / 2)
.Top = xCenterY - (.Height / 2)
End With
ExitSub:
End Sub
Uwagi:
3. naciśnij inny + Q klawisze jednocześnie, aby zamknąć Microsoft Visual Basic for Applications okno.
Od teraz, gdy zmienisz wartość w komórce A2, rozmiar kształtu Oval 2 zostanie automatycznie zmieniony. Zobacz zrzut ekranu:
Lub zmień wartości w komórkach A1, A2 i A3, aby automatycznie zmienić rozmiar odpowiednich kształtów „Owal 1”, „Buźka 3” i „Serce 3”. Zobacz zrzut ekranu:
Note: Rozmiar kształtu nie będzie się już zmieniać, gdy wartość komórki będzie większa niż 10.
Wyświetl i wyeksportuj wszystkie kształty w bieżącym skoroszycie programu Excel:
Połączenia Eksportuj grafikę użyteczność Kutools dla programu Excel pomagają szybko wyświetlić wszystkie kształty w bieżącym skoroszycie i możesz wyeksportować je wszystkie do określonego folderu naraz, jak pokazano na poniższym zrzucie ekranu. Pobierz i wypróbuj teraz! (30-dniowy bezpłatny szlak)
Podobne artykuły:
- Jak dodać kursor myszy nad końcówką do określonego kształtu w programie Excel?
- Jak wypełnić kształt przezroczystym kolorem tła w programie Excel?
- Jak ukryć lub odkryć określony kształt na podstawie określonej wartości komórki w programie Excel?
Najlepsze narzędzia biurowe
Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas. Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...
Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę
- Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
- Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
- Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!