Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

#N/B worden via macro niet allemaal vervangen

187 views
Skip to first unread message

Joyce

unread,
Feb 12, 2010, 5:56:01 AM2/12/10
to
Ik heb in Excel 2007 een excelsheet waarbij een aantal #N/B staan als vaste
waarde.
De sheet is gevuld tot en met kolom BJ.
Nu heb ik in mijn macro de volgende opdracht staan. Echter bij het opnemen
van de macro werkt dit goed. Maar als ik de macro uitvoer dan worden alleen
de #N/B-tjes weggehaald tot een bepaalde kolom, AK bijvoorbeeld vanaf AL
blijven de #N/B-tjes staan.

Range("A1").Select
Cells.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Ik heb ook geprobeerd om als range Kolom A tot en met BJ in te geven maar
het lukt niet.. Kan iemand me helpen.


Gijs

unread,
Feb 12, 2010, 9:28:01 AM2/12/10
to
Selecteer je via die macro eerst ook dat hele gedeelte, want dan zou hij toch
alles moeten pakken.
--
Gijs


"Joyce" schreef:

Joyce

unread,
Feb 12, 2010, 11:09:01 AM2/12/10
to
Ja, ik heb echt alles geprobeerd, het vreemde is als ik een kleine selectie
opgeef, dan lukt het wel maar zodra ik alles pak, dan wordt maar tot de helft
van de kolommen #N/B vervangen...

Vreemd he...

"Gijs" schreef:

Gijs

unread,
Feb 12, 2010, 12:45:01 PM2/12/10
to
Het is inderdaad vreemd. Maar ik wilde graag weten of je gewoon hele kolommen
selecteert of een reeks, bijv. van B1:BJ500, dus niet tot helemaal onderaan
toe, want dan kan je nl. een probleem krijgen met je geheugen. (ruim 1
miljoen cellen naar beneden in Excel 2007)

"Joyce" schreef:

Joyce

unread,
Feb 15, 2010, 9:05:01 AM2/15/10
to
Ik heb diverse selecties geprobeerd:

Range("A1:Z1376").Select
Selection.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

en

Cells.Select
Range("BG1").Activate
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False


Range("A1").Select
Cells.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False,
ReplaceFormat:=False

Ook als ik een kleinere range neem lukt het niet...

"Gijs" schreef:

Niek Otten

unread,
Feb 15, 2010, 12:39:32 PM2/15/10
to
Hoe heb je die #NB's ingevoerd? Als tekst of met een =NB() functie?

--
Kind regards,

Niek Otten
Microsoft MVP - Excel

"Joyce" <Jo...@discussions.microsoft.com> wrote in message
news:4FFC54B1-05B4-47B4...@microsoft.com...

Joyce

unread,
Feb 15, 2010, 5:20:07 PM2/15/10
to
Het waren uitkomsten van functies, maar die heb ik daarna omgezet naar
waarde. (kopieeren en plakken speciaal-waarde).

Ik hoop dat dit je vraag beantwoord want ik begreep je vraag niet helemaal...

groetjes Joyce

"Niek Otten" schreef:

Gijs

unread,
Feb 16, 2010, 8:51:02 AM2/16/10
to
Joyce, ik zag dat je selectie toch behoorlijk groot is en heb toch nog steeds
het idee dat het hier om een geheugen probleem gaat.
Als je nu eens niet 1376 diep gaat, maar bijv. 200. Kijk dan nog eens of het
programma wel tot de juiste kolom gaat.


"Joyce" schreef:

Joyce

unread,
Feb 16, 2010, 10:56:01 AM2/16/10
to
Ik heb nu A1:BJ9 geselecteerd. maar het lukt nog steeds niet.

Range("A1:A9").Select
Range(Selection, Selection.End(xlToRight)).Select


Cells.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False,
ReplaceFormat:=False

Range("A1").Select

"Joyce" schreef:

Joyce

unread,
Feb 16, 2010, 11:01:03 AM2/16/10
to
> Ik heb nu A1:BJ9 geselecteerd. maar het lukt nog steeds niet.
>
> Range("A1:A9").Select
> Range(Selection, Selection.End(xlToRight)).Select
> Cells.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, SearchOrder _
> :=xlByRows, MatchCase:=False, SearchFormat:=False,
> ReplaceFormat:=False
> Range("A1").Select
>
Ook heb ik de volgende macro geprobeerd, ook dat werkt niet.:

Range("A1:A9").Select
Range(Selection, Selection.End(xlToRight)).Select
Selection.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
>

jan

unread,
Feb 16, 2010, 11:13:53 AM2/16/10
to
Joyce,

Als je nu eens alleen probeert te vervangen in het gebied waar dat nu niet
lukt, dus bv alleen kolom AL, lukt dat wel.

Jan

jan

unread,
Feb 16, 2010, 3:50:11 PM2/16/10
to
Joyce,

In oudere versies van Excel moet je, om met VBA te zoeken naar #N/B
gebruikmaken van #N/A (de engelse term), ik weet niet of dat in Excel 2007
nog steeds zo is (maar verwacht dat eigenlijk wel).
Het kan zijn dat je #N/B deels gewoon uit tekst bestaat, dat wordt met #N/B
gevonden, terwijl de rest van de #N/B nog steeds de foutmedling (Fout 2042)
is die alleen gevonden kan worden met #N/A.

Als dat het geval is zou je deze code moeten gebruiken om beide te
vervangen:

Cells.Replace What:="#N/A", Replacement:="", LookAt:=xlPart, _


SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Cells.Replace What:="#N/B", Replacement:="", LookAt:=xlPart, _


SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False

Jan


0 new messages