I’m having a lot of problems here… If I copy it gets messed up since I am not pasting in the same exact spot. If I cut I lose my block of information. If i do = then click and drag it gets messed up since the cells I am copying are actually references, so when I sort those references its bad news bears.
IE Sheet1 A1:E5 = data1 information
Sheet2 Q5:U9 = ‘Sheet1’!A1:A5
On sheet 3, because of the way sheet 2 is setup, I cannot just go directly from sheet1 (due to sorting). I know this is a little confusing but TL;DR, is there anyway to emulate “Cut” without deleting the cells? .
If the cell references need to be constant regardless of where the equations are moved to, use something like
$A$1:$A$5 for your range to fix the rows and columns in place. (the
$ is an indication to Excel to not adjust the value of the index that follows it [either row or column], so if you have an equation in cell A1 that references the range
$C3:$C19, copying the equation to cell B2 would result in the equation referencing range
$C4:$C20, and if the range was
C$3:C$19 then copying the equation to cell B2 would result in the equation referencing range
D$3:D$19, while using
$C$3:$C$19 would result in the referenced range being unchanged).
You could also look into using R1C1 notation, but I don’t think that’s necessary for you.
Have you tried doing a Paste Special?
- Highlight the cells you want to copy.
- Copy the cells via right-click -> copy or CTRL-C.
- Move your cursor to the new cell location you want to paste the information.
- Right-click on the cell and find the *Paste Special option.
- What you are probably searching for is an option under Paste Values
If you have Excel 2010 (may even be true of 2007), then you can see the effect of paste before actually pasting.
Now, if you need the references to the cells in Sheet1 to remain on the copy, then you will need to add the $ in front of the cells as JAB has pointed out, then you can do a Paste Special -> Formulas
Possible simple VBA Code:
Sub ConvertUserRangeToAbsolute() Dim cell As Object For Each cell In Selection cell.Formula = Application.ConvertFormula(Formula:=cell.Formula, fromreferencestyle:=Application.ReferenceStyle, toabsolute:=xlAbsolute) Next cell End Sub
Hope this helps.
Make a copy of the sheet you are trying to copy from. Name it Temp or something similar to keep it obvious.
Cut the blocks you wish to from this Temp sheet and paste them where you want in your new sheet. This worked for me.
Delete the temp sheet when you are done.
I just copy the original to an adjoining cell, then go back to the original and cut it and put it where I want it, then copy the copy back to the original place of the original. It seems screw it up, then unscrew it up.