20. april 2005 - 17:49Der er
6 kommentarer og 1 løsning
VBA: Fjerne formatering ved kopiering af celle
Er der er en smart måde at fjerne formateringen af kopierede celler i VBA?
F.eks. hvis brugeren kopierer en celle med en farvet baggrund, skal kun værdien i cellen indsættes i den nye celle (ligesom Rediger->Indsæt speciel->Værdier).
Jeg har set en løsning som netop gør det, dvs. ved alm. Paste (eller Cltr-V) insættes "Speciel->Værdier". Problemet er bare at denne løsning kun fungerer mellem ark og mapper i samme "instans" (proces) af Excel. Jeg har dog også brug for at det virker, hvis det kopierede kommer fra en anden instans af Excel.
Problemet med den løsningen, er at jeg derved mister "betydningen" af værdierne. Med mindre der findes en funktion, som tager en tekst-streng og giver et korrekt værdi-objekt.
Jeg er ikke sikker på at jeg bruger de rigtige termer - jeg er lige begyndt med VBA, men det jeg mener er f.eks. hvis man kopierer en celle der indeholder en dato og fjerner formatteringen, får man antal dage der er gået siden 1. januar 1900 - et neutralt værdiformat, hvorimod hvis man paster med tekstformatering, "mistes" denne information, da indholdet af cellen kopieres verbatim (f.eks. 21-04-05). Håber det tydeliggør problemet?!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.