code.gs

```
var runSelect = true
function onSelectionChange(e) {
  var sheet = SpreadsheetApp.getActiveSheet()
  var range = e.range;
  var column = range.getColumn();
  var lastRow = sheet.getLastRow();
  var ui = SpreadsheetApp.getUi();
  if (runSelect == true) {
    sheet.getRange(5, column, lastRow-4).activate();
    sheet.getRange(1, column).copyTo(sheet.getActiveRange());
    ui.alert("Finnish")

```

I have try to change my selection, but alert never show and not do copy
['https://Stackoverflow.com/questions/61929649', 'https://Stackoverflow.com', 'https://Stackoverflow.com/users/13578315/']
I just faced the same issue on a new spreadsheet with a new project having only a very simple `onSelectionChange`:

```
function onSelectionChange(e) {
  console.log(JSON.stringify(e));
}

```

After reopening the spreadsheet (refreshing the web browser tab), the `onSelectionChange` worked fine.
According to <https://developers.google.com/apps-script/reference/base/ui.html> alert(prompt) does not require authorization. Probably the onSelectionChange trigger is not executed and you are using the new V8 runtime. Use the legacy runtime, not the V8 runtime. With V8 runtime in my case sometimes it is triggered, sometimes not. There are general problems with trigger executions in V8, see <https://issuetracker.google.com/issues/147016387>