Hvordan plasserer du en tekstboks objekt over en bestemt celle når automat Excel?

stemmer
4

Vi automatisere Excel ved hjelp VB.Net, og prøver å plassere flere tekstlinjer på et Excel-regneark som vi kan sette til å ikke skrive ut. Mellom disse ville vi ha utskrivbare rapporter. Vi kan gjøre dette hvis vi legger TextBox objekter, og sette utskriftsobjektet innstilling til false. (Hvis du har en annen måte, kan du henvise meg)

Koden for å legge til en tekstboks er:

ActiveSheet.Shapes.AddTextbox(msoTextOrientationHorizontal, 145.5, 227.25, 304.5, 21#)

men posisjoneringen er i punkter. Vi trenger en måte å plassere den over en bestemt celle, og størrelsen det med cellen. Hvordan kan vi finne ut hvor du skal plassere det når vi vet hvilken celle for å sette det over?

Publisert på 15/09/2008 klokken 19:01
kilden bruker
På andre språk...                            


2 svar

stemmer
8

Hvis du har cellen navn eller stilling, kan du gjøre:

With ActiveSheet
  .Shapes.AddTextbox msoTextOrientationHorizontal, .Cells(3,2).Left, .Cells(3,2).Top, .Cells(3,2).Width, .Cells(3,2).Height
End With

Dette vil legge til en tekstboks i løpet celle B3. Når B3 er endret, er tekstboksen også.

Svarte 15/09/2008 kl. 20:51
kilden bruker

stemmer
0

Når du kopiere og lime inn en tekstboks, vil Excel plassere den nye tekstboksen i løpet av hvilken celle er valgt. Så du kan oppnå dette veldig enkelt ved å bruke VBA kopier og lim-kommandoer. Dette kan være spesielt nyttig hvis du skal bruke en rekke svært lignende tekstbokser, som du effektivt skaper en tekstboks mal.

Svarte 16/09/2008 kl. 17:58
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more