Olen kirjoittanut työkirjaan nimeltä "Pekka.xlsm" VBA-koodin, joka käynnistyy Workbook_Open() -eventistä.
Koodi tekee (toistaiseksi) seuraavat asiat:
- Kysyy käyttäjältä, että luodaanko kopio. Jos käyttäjä vastaa ei, niin ei tehdä mitään. Jos käyttäjä vastaa kyllä, niin:
- Luodaan uusi työkirja
- Kopioidaan työkirjan "Pekka.xlsm" worksheetin "Testi" kaikki solut uuden työkirjan worksheettiin "Sheet1".
Työkirjaan "Pekka.xlsm" ei tehdä missään vaiheessa mitään muutoksia.
Kaikki toimii niin kuin pitääkin, vastaan makrolle sitten kyllä tai ei - kunnes pitäisi sulkea työkirja "Pekka.xlsm": Jos olen vastannut kyllä, eli luodaan kopio, niin sulkemisen yhteydessä saan virhe-ilmoituksen "The picture is too large and will be truncated" 2-3 kertaa, ja sitten Excel yleensä kaatuu.
Työkirjassa "Pekka.xlsm" ei ole yhtäkään kuvaa eikä muutakaan erikoista, pelkästään tuo yksi worksheet jossa tekstiä ja numeroita.
Mitä teen väärin?
Koodi tekee (toistaiseksi) seuraavat asiat:
- Kysyy käyttäjältä, että luodaanko kopio. Jos käyttäjä vastaa ei, niin ei tehdä mitään. Jos käyttäjä vastaa kyllä, niin:
- Luodaan uusi työkirja
- Kopioidaan työkirjan "Pekka.xlsm" worksheetin "Testi" kaikki solut uuden työkirjan worksheettiin "Sheet1".
Työkirjaan "Pekka.xlsm" ei tehdä missään vaiheessa mitään muutoksia.
Kaikki toimii niin kuin pitääkin, vastaan makrolle sitten kyllä tai ei - kunnes pitäisi sulkea työkirja "Pekka.xlsm": Jos olen vastannut kyllä, eli luodaan kopio, niin sulkemisen yhteydessä saan virhe-ilmoituksen "The picture is too large and will be truncated" 2-3 kertaa, ja sitten Excel yleensä kaatuu.
Työkirjassa "Pekka.xlsm" ei ole yhtäkään kuvaa eikä muutakaan erikoista, pelkästään tuo yksi worksheet jossa tekstiä ja numeroita.
Mitä teen väärin?
Vastaukset 1
Vanhimmat
Private Sub Workbook_Open()
Dim wbCopy As Workbook
If MsgBox("Create a copy?", vbYesNo) = vbYes Then
Set wbCopy = Workbooks.Add
ThisWorkbook.Sheets("Passes").Cells.Copy wbCopy.Sheets("Sheet1").Cells(1, 1)
End If
End Sub