• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Hoe haal ik met de formule links de 1ste positie weg

Status
Niet open voor verdere reacties.

Friend

Verenigingslid
Lid geworden
31 jan 2009
Berichten
1.128
Beste forummers,

Ik zou graag mijn vert.zoeken functie in een cel willen vastleggen en daarnaar verwijzen als op een ander blad dit nodig is.
Ik heb meerdere bladen waar op elk blad dezelfde ver.zoeken functie wordt gebruikt.

Die wil ik echter in een keer voor alle bladen kunnen wijzigen.

Is dit mogelijk. Zie voorbeeld bestandje.

Hartelijk dank

Friend
 

Bijlagen

  • links.xlsx
    11,6 KB · Weergaven: 49
Je wilt een tekst tot formule bombarderen. Dat gaat niet zomaar. Waarschijnlijk VBA voor nodig.

Maar: waarom moet de formule telkens wijzigen? Beter is de formule flexibel maken. Ik nu maar één regel in je voorbeeld, dus o.b.v. daarvan kan ik weinig. Begin wat mij betreft dus eens met een nadere toelichting van je probleem.
 
Ik zou op het tabblad waar de formule staat CTRL + ` indrukken zodat je de formule nog wel in zicht hebt.
Dat komt op zich op hetzelfde neer.
 
Alex, hartelijk dank voor je reactie :thumb:

Excuus als ik het niet helemaal duidelijk uitleg.

In de nieuwe bijlage heb ik 10 bladen. Graag zou ik in een keer de verwijzing / vert.zoeken opdracht in cel F2 van alle bladen willen wijzigen.

Friend
 

Bijlagen

  • links-1.xlsx
    21,6 KB · Weergaven: 46
Ik probeer het te begrijpen en mee te denken, maar dit voorbeeld is 10x hetzelfde blad. Ik snap dat je daar iets wilt met de verwijzingen aanpassen.

Mijn vraag blijft staan: WAAROM moet de verwijzing aangepast worden.
 
Formule aanpassen

Misschien de formule in een naam definiëren
 
Alex,

Ter verduidelijking. Ik haal vanuit een externe database gegevens binnen. Dit is jaargebonden. Dus bij jaarwijziging wijzigt mijn bronbestand.

Dat geeft vaak dat de vert.zoeken verwijzing in de fout gaat. #verw. Dan moet ik in al die 30 bladen de vert.zoeken verwijzing weer herstellen.

Vandaar dat ik dacht als hij dit nu standaard uit een cel kan aflezen dan heb ik dat probleem niet.

Friend
 
Je hebt geen VBA nodig.


Voordat je je Formule aanpast in "naw" selecteer je alle tabbladen. (zorg dat deze in dezelfde cel staat als waar je de formule in de andere tabbladen wilt hebben, dus F2)
Pas de formule aan en druk op enter.
Daarna de tabbladen deselecteren, klaar


Misschien voldoet dit al
 
Laatst bewerkt:
Misschien kan de functie INDIRECT je nog verder helpen.

Daarmee maak je geen harde verwijzing, en voorkom je verwijzingsfouten.
 
Beste JVeer, ook hartelijk dank voor jouw reactie:thumb:

Dat verandert inderdaad alles in één keer :)

Als het niet anders kan is dit prima, alleen mocht het nog anders kunnen dan zou dit ook mooi zijn (Ik moet nl wel 30 tabbladen selecteren).

Friend
 
Beste WBValk, ook hartelijk dank voor jouw reactie:thumb:

Dit lukt mij toch niet helemaal, zullen er nog even verder op stoeien.

Thanks
Friend
 
Code:
Sub formulacopy()
Dim ws As Worksheet
Application.ScreenUpdating = False

For Each ws In ActiveWorkbook.Worksheets
    Sheets("naw").Range("B2").Copy
    ws.Range("F2").PasteSpecial xlPasteFormulas
    
Next ws

Application.ScreenUpdating = True

End Sub

Anders krijg je zoiets, waarmee je 1 druk op de knop hoeft te geven.
Hiermee wordt de formule in alle tabbladen in cel F2 gezet.

(Dus ook op tabbladen waar je het misschien niet wil)
 
JVeer,

dat is een mooi stukje vba wat inderdaad het aanpast. Alleen dat doet het op alle tabbladen. Hoe kan ik dit beperken tot blad1 t/ blad10??

Friend
 
Zo:
Code:
Sub formulacopy()
    Application.ScreenUpdating = False
    For i = 1 To 10
        Sheets("naw").Range("B2").Copy
        Sheets("Blad" & i).Range("F2").PasteSpecial xlPasteFormulas
    Next i
    Application.ScreenUpdating = True
End Sub
 
Code:
Sub VenA()
  For Each sh In Sheets
    If IsNumeric(Right(sh.Name, 1)) Then sh.Cells(2, 6).Formula = Sheets("naw").Cells(2, 2).Formula
  Next sh
End Sub
 
Edmoor en VenA,

Hartelijk dank ook voor jullie reactie en bijdrage :thumb:

Ik moet het even een dagje laten rusten vanwege andere dingen die voor gaan. Morgen het weer oppakken.

Trouwens wel interessant mijn originele vraag hoe ik met een links of rechts functie de eerste positie (letter/cijfer) afhaal van tekst etc wat in een cel staat eigenlijk nog nooit beantwoord is.

Friend
 
Dat is beantwoord in #2 in de eerste zin. De apostrof is bij het gebruik aan het begin in een cel geen leesteken en wordt dan ook anders geïnterpreteerd.

Is ook simpel te testen. =LEFT(I2;1) zal = geven ipv de verwachte '
 
Controleren op een apostrof voor het gelijkteken kan enkel met Vba.

Code:
Sub hsv()
 If Range("I2").PrefixCharacter = "'" Then Range("I2") = Application.Substitute(Range("I2"), "'", "",1)
End Sub

Replace werkt hierbij niet.

Zo kan het ook,....
Code:
Sub hsv() 
 Range("I2") = Application.Substitute(Range("I2"), "'", "", 1)
End if
....maar er kan een apostrof midden in een formule staan en die wil je niet kwijt.
 
Laatst bewerkt:
Code:
Sub VenA()
  Range("I2").TextToColumns Range("I2")
End Sub

iets veiliger
Code:
Sub VenA()
  Range("I2").TextToColumns Range("I2"), , , , , , , , 0
End Sub
Lijkt ook te werken.
 
Laatst bewerkt:
Mooi gevonden @VenA. :thumb:

De 0 zal niet veel uithalen bij 'Other', die staat standaard al op False.
Jammer dat bij tekst met een apostrof ervoor die methode niet werkt, bij een formule wel.

Code:
Sub hsv()
 [I2] = [I2] & ""
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan