Hoppa till huvudinnehåll

Hur roterar jag en bild baserat på ett cellvärde i Excel?

I Excel kan vi rotera bilden genom att dra musen, men har du någonsin försökt rotera en bild baserat på ett cellvärde. Exempelvis kommer bilden att roteras 90 grader om cellvärdet är 90 i Cell A1, som visas nedan.
doc rotera bilden efter cell 1

Rotera en bild baserat på cellvärde med makrokod


Rotera en bild baserat på cellvärde med makrokod

Endast en makrokod kan hjälpa dig att rotera en bild baserat på ett cellvärde i Excel.

1. Skriv ett värde i Cell A1 som du kommer att rotera bilden med och aktivera sedan bilden du vill rotera.

2. Tryck Alt + F11 för att aktivera Microsoft Visual Basic för applikationer och klicka Insert > Modulerna för att infoga en tom ny Modulerna. Se skärmdump:
doc rotera bilden efter cell 2

3. Klistra in koden nedan Modulerna tryck sedan på F5 för att köra koden. Se skärmdump:

VBA: Rotera bilden efter cellvärde

Sub RotateImage()
Selection.ShapeRange.IncrementRotation ActiveSheet.Range("A1").Value
End Sub

doc rotera bilden efter cell 3
doc rotera bilden efter cell 1

Notera: i koden är A1 den cell du vill rotera bilden baserat på, du kan ändra den efter behov.


Relativa artiklar:

Bästa kontorsproduktivitetsverktyg

🤖 Kutools AI Aide: Revolutionera dataanalys baserat på: Intelligent utförande   |  Generera kod  |  Skapa anpassade formler  |  Analysera data och generera diagram  |  Anropa Kutools funktioner.
Populära funktioner: Hitta, markera eller identifiera dubbletter   |  Ta bort tomma rader   |  Kombinera kolumner eller celler utan att förlora data   |   Rund utan formel ...
Superuppslag: Flera kriterier VLookup    VLookup med flera värden  |   VSök över flera ark   |   Fuzzy Lookup ....
Avancerad rullgardinslista: Skapa snabbt en rullgardinslista   |  Beroende rullgardinslista   |  Flervals-rullgardinslista ....
Kolumnhanterare: Lägg till ett specifikt antal kolumner  |  Flytta kolumner  |  Växla synlighetsstatus för dolda kolumner  |  Jämför intervall och kolumner ...
Utvalda funktioner: Rutnätsfokus   |  Designvy   |   Stor formelbar    Arbetsbok & Bladhanterare   |  Resursbibliotek (Automatisk text)   |  Datumväljare   |  Kombinera arbetsblad   |  Kryptera/Dekryptera celler    Skicka e-postmeddelanden efter lista   |  Superfilter   |   Specialfilter (filtrera fet/kursiv/genomstruken...) ...
Topp 15 verktygssatser12 text verktyg (lägga till text, Ta bort tecken, ...)   |   50+ Diagram Typer (Gantt Chart, ...)   |   40+ Praktiskt Formler (Beräkna ålder baserat på födelsedag, ...)   |   19 Införande verktyg (Infoga QR-kod, Infoga bild från sökväg, ...)   |   12 Konvertering verktyg (Siffror till ord, Valutaväxling, ...)   |   7 Slå ihop och dela verktyg (Avancerade kombinera rader, Dela celler, ...)   |   ... och mer

Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid.  Klicka här för att få den funktion du behöver mest...

Beskrivning


Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!
Comments (5)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This is what I want to do to an image, but I want it to rotate from the vertical position by however many degrees the cell states each time. However, say the cell says 30, it will rotate 30 degrees, but then if the cell value changes to 15, it will rotate 15 from the 30 position (45 from the vertical). I want it to rotate 15 from the vertical this time. Is there a way to do this?


Thanks!
This comment was minimized by the moderator on the site
Take the code from above:

Selection.ShapeRange.IncrementRotation ActiveSheet.Range("A1").Value

And modify it like so:

Selection.ShapeRange.Rotation = ActiveSheet.Range("A1").Value
This comment was minimized by the moderator on the site
Hey there, I have the same requirement too. Have you by chance figured out how to have the image rotate from "zero" every time?
This comment was minimized by the moderator on the site
Sorry I have no idea about this problem. You can place your prolem in out forum, maybe someone can help you solve it. https://www.extendoffice.com/forum.html
This comment was minimized by the moderator on the site
Take the code from above:

Selection.ShapeRange.IncrementRotation ActiveSheet.Range("A1").Value

And modify it like so:

Selection.ShapeRange.Rotation = ActiveSheet.Range("A1").Value
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations