Why Do Some Excel Documents NOT Allow To Undo / Redo When Using Macro
Jul 11, 2013
Some of my Excel files work perfectly in terms of undo/redo, while others simply cannot use that feature. I took a stroll through the internet looking for the answer, but the issues that I found seemed to point to the application losing its ability, which was resolved with a registry edit/update/change. I don't think that's the case here because I CAN undo is SOME documents.
After some investigation with my problem documents I have found that THIS Macro is the one thing all my undo-free documents have in common: [URL]
Undo / Redo - they do NOT work properly after a save. Before a save, its great - I can undo / redo many many changes.
After a save, I can only undo 2 changes, but the worst thing is it ONLY REDOES ONE of them.
I work by saving very regularly, then I go and look at something on the sheet, and then use Undo / Redo to get back to where I was last updating the sheet and see what I had just been working on, especially if its a few minutes in between.
However, when I do that now, it undoes my last change, but the redo has been lost. So I do:
change, save, undo, redo
and it just doesn't do the redo. The redo button is greyed out.
If I do:
change, change, save, undo, undo, redo, redo
the first redo works, and the second fails as the redo has been lost.
It seems pretty basic that undo / redo should be symmetrical but they aren't, at least now.
I would rather just not have undo after save at all than this broken version.
Why are they putting so much stuff in Excel but they can't even get one of the most basic parts of spreadsheets correct - such as undo / redo, and the ability to open independent spreadsheets without having to change things in the registry (which I have had to do so I can work on two spreadsheets in a semi-sane fashion, undo being shared across your sheets otherwise). MS needs a back to basics...
A coworker just ran something by me that i'm quite frankly baffled by. After running a macro, the undo function becomes disabled up to the point of when the macro was ran. I've done a quick search through the forums and can't seem to find this question so i thought i'd ask.
Is there an option to toggle somewhere or 3rd party addon that keeps Undo enabled after running a macro? On a similar topic for my own curiosity, what's the reason that it disables?
I managed to implement a macro that adds a time/date stamp in Column A when any of the subsequent cells in that row are changed. With this now working, I really need the ability to restore the undo history in case a change to the data needs to be reverted.
Sub procedure:
Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range Application.EnableEvents = False For Each c In Target If c.Column > 1 And c.Column < 21 Then Cells(c.Row, 1) = Now End If Next c Application.EnableEvents = True End Sub
Basically I have manually generated word documents based on a spreadsheet. Now, I need to countercheck the contents of the word documents with another spreadsheet i.e. make sure the courses in the word document for a particular student is same as that reflected on the spread sheet. Is it possible to write a macro for this? I'm a beginner and I'm waaay out of my depth. I have attached sample documents and spreadsheets.
The link to the documents are as follows: Macro to check data from Word documents against an excel spread sheet
I am having problems opening Excel documents on first try. If I double click a excel doc icon it will start excel, hang for about a minute and a half then just display a excel blank doc. If I then go back to the original doc icon with excel still open and double click it again the document appears.
I have used MS Office Excel 2003 for many years without difficulty in XP. Suddenly I find I can't open many of my old documents. I get a message,"Microsoft Office (InfoPath2003) cannot open (the following file, etc.) A second message says, "The form contains XML that is not parsed: An invalid character was found in the content. Line 0, Position 0" Then I get the message "MS Office is not currently set as default." I complete the instructions that follow and it is now corrected but I continue to get the same error messages.
I have MS Office 2010 Home Edition. Is there a way to make 2 different Excel docs show up on 2 different monitors at the same time (one on each, of course)? (I have a PC and 2 displays total.)
I have about 600 Word Documents that contains information about clients. Each Word document file name is the name of the client. Example. Tom Smith. I wanted to be able to highlight all 600 word documents and paste them into Excel, so that I can press Ctrl-F to find what ever name it is I'm looking for, then click the name and the word document open. Is this possible?
How I can merge multiple word documents based on checkboxes selected on Excel.
Specifically, I have some 75 checkboxes found on Column F with linked cells on Column G (for example, checkbox1 place on Cell F1 linked to Cell G1). Each of the checkboxes have a corresponding Word document (containing text and tables about 1 to 4 pages in length). Based on what checkboxes are selected, I'd like to have those corresponding Word documents merge together and create an entirely new Word file (for sake of order, the datapoints from each selected Word document should be placed at the beginning of a new page in the new file).
The user will eventually name and save the new file on their own.
I'm not familiar with the required code as well as where it should be placed (whether on the excel file that contains the checkboxes, on the individual word documents that are eligible to be merged, or parsed out on all files).
I have a sales spreadsheet, that people on this forum have very kindly helped me with by giving me two macros; one to remind users that they need to update the month cell when an order comes in, and the other to automatically put the date in a cell when any cell in that row is changed.
The final thread is here: Message To Remind That Cell Is Mandatory
and the Macro used is:
Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range Application.EnableEvents = False For Each c In Target If c.Column = 11 Then If c.Value = "100 - Purchase Order In" Then MsgBox "Is the Month In correct?" End If End If If c.Column > 1 And c.Column < 18 Then Cells(c.Row, 1) = Now End If Next c Application.EnableEvents = True End Sub
However...
We've now found that we cannot undo anything in these spreadsheets. If, for example, a cell is incorrectly copied or deleted, the only way of undoing the change is to shut down the spreadsheet without saving!
Is this just a by-product of using the time macro (a search on other threads suggests that it might be), and, if so, is there any way of changing it?
I have a large macro where it looks into 50 documents and pulls out a value from a specific cell.
I dont have any problem with the coding for this but was wondering if it is possible to add another line of coding so that once it has copied the cell value the documents then close.
Currently when I run the macro, it leaves all 50 documents open once it has taken all the cell values and pasted them into my "Master Document".
Couple of the end users are unable to use undo/redo functions on certain excel worksheet. I have uninstalled/reinstalled office 2003 without success. Then I even installed office 2000 and office XP without any luck. Have checked into macro's and clipboard and also got idea of adding registry value.
If any work is done by a macro it canot be restored by undo. Can a macro be provided so that I can attach the same to my codes and thus undo action can be performed?
i implement DTPicker inside a userform in my pc ... but when i open the userform in other pc there's an error saying could not found DTPicker ... when i reopen it in the pc that i've made the userform the DTPicker is no longer there and i had to redo the same thing over and over again when others opens it in other pc.
I am trying to figure out how to save a worksheet's autofiltering settings and be able to re-create those settings.
I would start off with a spreadsheet with a few Autofilters on. I would like to make a macro that will record the initial Autofilter settings, then the macro would do a bunch of stuff that would need to 'Show All'. After these actions take place, I would like to be able to return to the initial Autofilter settings. I'm not even sure which VBA command should be used for this sort of thing.
A Worksheet_Change macro in Sheet1 changes the font colour if the target is cell(1,1). So, if I change the value of cell(1,1), it will become red. But then I cannot change it back to the original value because the undo button is not active anymore. And what if I changed cell(1,1) by mistake instead of cell(2,1), and I want to put it back to the original value?
I have a database in excel which I want only selected users to have edit rights & others should have readonly rights. I have written the following code where a pop up would appear in selected cells warning user for editing the said cell. What I want is when a user clicks yes he should be able to edit it & when he clicks no the cell should get protected.
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Dim rTriggerCell As Range If Not Intersect(Target, Range("D1:D100")) Is Nothing Then Set rTriggerCell = Target Application.EnableEvents = True If MsgBox("Edit Cell?", vbYesNo) End If On Error Goto 0 Exit Sub End If
I created a lookup table that works quite well. It even has if statements in the LookUp Formula. However, I have to update the table it pulls the information from each day. I wind up recreating the range each time because the table always has more rows each time. Is there a way I could just paste the table in each day and not have to change the range? The columns never change.
I had a list of email addresses that I put into two columns with the @-now I have finished manipulating and I need to have the email addresses whole again.
The email is now in column A and the domain is in column B. I cannot click undo.
What i have is a userform which contains textboxes a user can enter or change data in.
What i'd like to do is to have a button called something like "undo last" whereby a user can 'swap' back the last change they made.. does anyone have any idea how i might go about it?
In Dave and Raina Hawley's excellent Excel Hacks book they showed how to increase the undo limit of 16 up to 100. THis only works for EXcel 2002. Any Bright spark know how to do this for Excel 2003?