• 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.

Tekst achter gegevens

Status
Niet open voor verdere reacties.

petervdijk

Gebruiker
Lid geworden
17 dec 2015
Berichten
176
hallo,

Ik heb een sheet met gegevens vanuit een database die iedere dag ververst word. Ik wil achter die gegeven op regel niveau tekst invoegen, bij het verversen van de lijst wil ik dat de tekst achter de juiste regel blijft staan.

heeft iemand een idee of dat kan?
 
Laat de brondatabase geen input toe ?
Dan zou je die tekst mee kunnen exporteren en klaar ben je.
 
Helaas dat kan niet, en er word ook niet in gefaciliteerd. Erg jammer. Niet destemin moet er toch wel een manier zijn? De lijst word per 24 ververst. Waardoor er regels bij en af gaan. De regels waar de tekst achter geplaatst werd moeten meegaan verhuist worden naar de nieuwe regel. Die blijve nu op de huidige regel staan
 
Ik heb je vraag een paar keer gelezen maar:
wil ik dat de tekst achter de juiste regel blijft staan
en
De regels waar de tekst achter geplaatst werd moeten meegaan verhuist worden naar de nieuwe regel
Ik snap het niet??
Is zoiets de bedoeling? Post anders eens een vb bestandje met de gewenste resultaten.
 

Bijlagen

  • test shift.xlsb
    18,6 KB · Weergaven: 35
Hoi Philiep,

Ehmm ik ben inderdaad niet duidelijk.

Ik heb een lijst zoals het voorbeeld bestand in de bijlage. Nu veranderen iedere keer de regels bij het updaten van het bestand. Er komen adressen bij en er gaan adressen af.

Tijdens het openen van het bestand word de lijst bijgewerkt, alleen blijven de cellen met tekst op de huidige plek staan, terwijl de tekst cellen achter de adres regel moet blijven staan (mee moeten verhuizen). zodat de info niet kwijt raakt.

Bekijk bijlage 281593
 
Heb je nog wat meer uitleg?
Ik neem aan dat dit het gewenste resultaat is.
Wat is het resultaat na aanpassing (het niet gewenste resultaat)
Kom de nieuwe input uit ??? (excel, erp, access)
 
ik wil dat de tekst cellen met de bestaande regels mee verhuizen, als er regels word toegevoegd. Als regel 1 naar regel 2 verhuist dat de tekst er achter ook mee verhuist. automatisch

Als ik in jou bestand op de knop druk, dan verplaatst de regel direct een regel naar beneden.
 
De gegevens komen uit Cognos. Die geeft als output alleen een Excel bestand. Die plaats ik in een map samen met het voorbeeldbestand die ik aan elkaar koppel. waarop volgend ik nu iedere keer overschrijf het bronbestand overschrijf, zodat het voorbeeld bestand up-to-date is.

ik weet het erg omslachtig, helaas is het niet anders.
 
het is niet wat ik bedoel. Toch al bedankt voor je moeite.

we voegen tekst toe aan de kolommen tekst, die moet achter de regel van straat 1 blijven staan, bij het verversen.
 
Misschien met een macro?

Met sub hsv() worden de gegevens van blad1 naar blad2 geschreven.
Eerst wordt blad2 gewist.

Deze code gebruik je voordat je blad1 gaat bijwerken door Cognos.


Code hsvtwee() laat je draaien als de nieuwe gegevens in blad1 staan.

Ik heb geen idee of het zo voor je werkt, het is maar een idee.
Code:
Sub hsv()
Dim sn
 sn = Sheets("blad1").Cells(1).CurrentRegion
 Sheets("blad2").Cells(1).Resize(UBound(sn), UBound(sn, 2)) = sn
End Sub


Sub hsvtwee()
Dim sn, sn2, i As Long, ii As Long, j As Long
sn2 = Sheets("blad2").Cells(1).CurrentRegion
With Sheets("blad1")
sn = .Cells(1).CurrentRegion
.Cells(1).Offset(1, 9).Resize(UBound(sn) - 1, UBound(sn, 2) - 9).ClearContents
For i = 2 To UBound(sn)
  For ii = 2 To UBound(sn2)
    If Join(Application.Index(sn, i, Array(1, 2, 3, 4, 5, 6, 7, 8, 9))) = Join(Application.Index(sn2, ii, Array(1, 2, 3, 4, 5, 6, 7, 8,9))) Then
      For j = 10 To UBound(sn, 2)
        sn(i, j) = sn2(ii, j)
      Next j
    End If
  Next ii
 Next i


Misschien moet onderstaande regel er uit, het is ook maar een protocode.
Code:
.Cells(1).Offset(1, 9).Resize(UBound(sn) - 1, UBound(sn, 2) - 9).ClearContents
 

Bijlagen

  • tekst achter gegevens.xlsb
    18,8 KB · Weergaven: 44
Laatst bewerkt:
Gegevens in een rij kunnen alleen maar bij elkaar staan als ze aan elkaar gekoppeld zijn.
Als een deel van de rij gekoppeld is aan een ander bestand, waardoor de volgorde en de inhoud van een deel van een rij kan wijzigen, is de vraag om gegevens per rij bij elkaar te houden een contradictio in terminis.
Dan blijft als enige mogelijkheid over dat aan de hand van een uniek kenmerk per regel uit het te verversen bestand de aanvullende gegevens van elders uit het bestand worden opgehaald.(bijv. met vlookup of index(match(. ) of met een macro (die bij iedere verversing wordt geaktiveerd).
 
Dag Harry,

Ik vermoed dat dit:

Code:
Array(0, 1, 2, 3, 4, 5, 6, 7, 8)

2 keer veranderd moet worden in:

Code:
Array(1, 2, 3, 4, 5, 6, 7, 8, 9)
 
Dag Wim, tijd geleden.

Je vermoedens kloppen natuurlijk, ik zal het dadelijk aanpassen.

Uiteraard bedankt.
 
Laatst bewerkt:
Zoiets :) Er is (misschien tijdelijk, dat weet ik niet) meer vrije tijd, dus kan ik opnieuw wat meer actief zijn op fora. En de website wat aanvullen :)
 
Zoiets :) Er is (ten minste tijdelijk, dat weet ik niet) meer vrije tijd, dus kan ik opnieuw wat meer actief zijn op fora. En de website wat aanvullen :)
 
Aller eerst bedankt voor het meedenken. Nu ben ik niet de eerste die weinig kennis van VBA heeft.

Als ik nu het bestand (blad1) ververs en er komt een regel bij dan gebeurd er in blad 2 niets!
doe ik iets verkeerd?
 
Ik ben er uit. werkt goed.

Toch nog een vraag.

als ik nu meer dan 9 rijen heb bijv 11 hoe kan ik dat aanpassen plus als ik meer tekst rijen wil invoegen waar en hoe moet ik de VBA code dan aanpassen?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan