Du kan använda Application.Caller för att ta reda på vilken knapp/ruta som startade makrot. Sen kan du få reda på vilken cell som ligger i övre vänsstra hörnet av "shapen" ActiveSheet.Shapes(Application.Caller).TopLeftCell.Select ActiveCell.value =wienerbröd"
eller, kompaktare:
ActiveSheet.Shapes(Application.Caller).TopLeftCell.Value = "wienerbröd"
Av någon anledning är det alltid övre vänstra hörnet man är intresserad av i script. Vill du hamna under figuren så får du förskjuta ner den ett lagom antal rader, antingen med offsett eller så här:
Dim rad As Integer rad = ActiveSheet.Shapes(Application.Caller).TopLeftCell.Row ActiveSheet.Cells(rad + 2, 1).Select ActiveCell.Value = "wienerbröd"
PS: När det gäller forumet brukar jag få bäst resultat om jag först väljer "Enkel text" -> text och sedan skriver/klistrar in. Men det känns ofta som en glad överraskning om det blir rätt.
**********ED*********** Jag glömde ju bort BottomRightCell. då behöver du kanske inte lägga på några rader:
ActiveSheet.Cells(ActiveSheet.Shapes(Application.Caller).BottomRightCell.Row, 1).value = "wienerbröd"
|
|