ActiveSheet.Copy After:=ActiveSheet

Status
Niet open voor verdere reacties.

pasan

Terugkerende gebruiker
Lid geworden
6 nov 2010
Berichten
1.110
hallo

met de volgende code kopieer ik een blad naar een nieuw workbook

Code:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False

Sheets("blad1").Copy
With ActiveWorkbook

Application.DisplayAlerts = False
.SaveAs "G:\zelf gemaakte exel bestanden\" & Format(DateValue(Now - 8.5 / 24), "dd-mm-yyyy") & ".xls"
 
ActiveSheet.Copy After:=ActiveSheet
With ActiveSheet
.Shapes("CommandButton1").Delete
[COLOR="red"]Range("P1").Value = Range("AE1").Text[/COLOR]
End With
.Close
Application.DisplayAlerts = True
End With
Application.ScreenUpdating = True
ThisWorkbook.Save
End Sub

in blad 1 is cel P1... "P1=AE1" en AE1 heeft een formule =now()-8.5/24

ik wilde graag dat cel "P1" in het opgeslagen blad de datum waarde omzet naar tekst.
dit gaat op zich ook wel goed maar alleen in het hoofd bestand veranderd cel "P1"ook van formule naar een vreemde datum waarde
dit is uiteraard niet de bedoeling, alleen het nieuwe blad moet veranderen en het hoofd blad dus niet.

ik dacht omdat het stukje rode code text na ActiveSheet.Copy After:=ActiveSheet komt dat hiermee alleen het gekopieerde blad de active sheet zou zijn
maar schijnbaar dus niet?
het stukje in het rood daar gaat het volgens mij mis

iemand een suggestie?
 
Laatst bewerkt:
Code:
With ActiveSheet
  .Shapes("CommandButton1").Delete
  .Range("P1").Value = .Range("AE1").Text
End With
 
Warme bakkertje bedankt weer voor je reactie
het hoofdblad behoud nu in cel "P1" zn oorspronkelijke waarde dus dat is prima
maar het gekopieerde blad behoud in cel "P1" de zelfde waarde(formule)
en ik wilde graag dat de formule omgezet werd in text
de formule =nu()-8/24 geeft met behulp van de celeigenschappen de datum waarde weer ("dd-mmmm-jj")
ik wil dus graag dat er komt te staan bijv. 18-oktober-11, dit is de datum van vandaag zodat als ik volgende week het opgeslagen mapje nog eens wil openen deze datum waarde nog in beeld komt en niet door de formule =nu()-8,5/24 de datum van die dag
 
Code:
With ActiveSheet
        .Range("P1").Value = Format(Now - 8.5 / 24, "dd-mmmm-yy")
End With
 
helaas Warme bakkertje de formule blijft staan in cel "P1"

heeft excel versie er iets mee te maken?
 
ook al met paste values iets geprobeerd inelkaar te flansen maar ook zonder succes
 
opgelost denk ik

na nog eens door pluisen van dit forum kwam ik een voorbeeld bestandje van jou tegen Warme bakkertje.
in dit bestandje geef je bij workbook open een cel een datum
En volgens mij werkt dit, als ik nu opsla dan heb ik in cel "P1" dus de datum als tekst staan

heb de code niet in workbook open gezet maar in
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Range("P1").Value = Format(Now - 8.5 / 24, "dd-mmmm-yy")
    Range("T1").Value = Format(Now - 8.5 / 24, "dddd")
End Sub
want anders verspringt de datum niet om half negen smorgens
(vooropgesteld dat er een keer op een cel geklikt wordt)

op of aanmerkingen zijn uiteraard welkom

Warme bakkertje bedankt :thumb::thumb:
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan